aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/yandex-cloud-api-protos/yandex/cloud/mdb/greenplum/v1/pxf_service.proto
blob: b7aa2826a3c1b9414b83c9f03d87e375e1dab93f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
syntax = "proto3";

package yandex.cloud.mdb.greenplum.v1;

import "google/api/annotations.proto";
import "google/protobuf/field_mask.proto";

import "yandex/cloud/api/operation.proto";
import "yandex/cloud/validation.proto";
import "yandex/cloud/operation/operation.proto";
import "yandex/cloud/mdb/greenplum/v1/pxf.proto";


option go_package = "github.com/yandex-cloud/go-genproto/yandex/cloud/mdb/greenplum/v1;greenplum";
option java_package = "yandex.cloud.api.mdb.greenplum.v1";


service PXFDatasourceService {
    // List all PXF datasources
    rpc List (ListPXFDatasourcesRequest) returns (ListPXFDatasourcesResponse) {
        option (google.api.http) = { get: "/managed-greenplum/v1/clusters/{cluster_id}/pxf_datasources" };
    }

    // Creates PXF datasource
    rpc Create (CreatePXFDatasourceRequest) returns (operation.Operation) {
        option (google.api.http) = { post: "/managed-greenplum/v1/clusters/{cluster_id}/pxf_datasources" body: "*" };
        option (yandex.cloud.api.operation) = {
          metadata: "CreatePXFDatasourceMetadata"
          response: "PXFDatasource"
        };
    }

    // Update PXF datasource
    rpc Update (UpdatePXFDatasourceRequest) returns (operation.Operation) {
        option (google.api.http) = { patch: "/managed-greenplum/v1/clusters/{cluster_id}/pxf_datasources" body: "*" };
        option (yandex.cloud.api.operation) = {
          metadata: "UpdatePXFDatasourceMetadata"
          response: "PXFDatasource"
        };
    }

    // Delete PXF datasource
    rpc Delete (DeletePXFDatasourceRequest) returns (operation.Operation) {
        option (google.api.http) = { delete: "/managed-greenplum/v1/clusters/{cluster_id}/pxf_datasource/{datasource_name}"};
        option (yandex.cloud.api.operation) = {
          metadata: "DeletePXFDatasourceMetadata"
          response: "google.protobuf.Empty"
        };
    }
}

message CreatePXFDatasourceMetadata {
    string cluster_id      = 1 [(required) = true, (length) = "<=50"];
    string datasource_name = 2 [(required) = true, (length) = "3-200", (pattern) = "^[^\\|/*?.,;\"'<>]+$"];
}

message UpdatePXFDatasourceMetadata {
    string cluster_id      = 1 [(required) = true, (length) = "<=50"];
    string datasource_name = 2 [(required) = true, (length) = "3-200", (pattern) = "^[^\\|/*?.,;\"'<>]+$"];
}

message DeletePXFDatasourceMetadata {
    string cluster_id      = 1 [(required) = true, (length) = "<=50"];
    string datasource_name = 2 [(required) = true, (length) = "3-200", (pattern) = "^[^\\|/*?.,;\"'<>]+$"];
}


// Datasources API

message ListPXFDatasourcesRequest {
    string cluster_id = 1 [(required) = true, (length) = "<=50"];
}

message ListPXFDatasourcesResponse {
    repeated PXFDatasource datasources = 1;
}

message CreatePXFDatasourceRequest {
    string cluster_id        = 1 [(required) = true, (length) = "<=50"];
    PXFDatasource datasource = 2;
}

message UpdatePXFDatasourceRequest {
    string cluster_id                     = 1 [(required) = true, (length) = "<=50"];
    google.protobuf.FieldMask update_mask = 2;
    PXFDatasource datasource              = 3;
}

message DeletePXFDatasourceRequest {
    string cluster_id      = 1 [(required) = true, (length) = "<=50"];
    string datasource_name = 2 [(required) = true, (length) = "3-200", (pattern) = "^[^\\|/*?.,;\"'<>]+$"];;
}