Skip to content

Commit 808065b

Browse files
authored
feat(stencil): remove http option for create/get schema data rpcs (#71)
1 parent 87abb94 commit 808065b

1 file changed

Lines changed: 17 additions & 36 deletions

File tree

odpf/stencil/v1beta1/stencil.proto

Lines changed: 17 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -76,16 +76,7 @@ service StencilService {
7676
summary: "List schemas under the namespace";
7777
};
7878
}
79-
rpc CreateSchema(CreateSchemaRequest) returns (CreateSchemaResponse) {
80-
option (google.api.http) = {
81-
post: "/v1beta1/namespaces/{namespace_id}/schemas/{schema_id}",
82-
body: "*"
83-
};
84-
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
85-
tags: "schema";
86-
summary: "Create schema under the namespace. Returns version number, unique ID and location";
87-
};
88-
}
79+
rpc CreateSchema(CreateSchemaRequest) returns (CreateSchemaResponse) {}
8980
rpc GetSchemaMetadata(GetSchemaMetadataRequest) returns (GetSchemaMetadataResponse) {
9081
option (google.api.http) = {
9182
get: "/v1beta1/namespaces/{namespace_id}/schemas/{schema_id}/meta"
@@ -105,16 +96,7 @@ service StencilService {
10596
summary: "Update only schema metadata";
10697
};
10798
}
108-
rpc GetLatestSchema(GetLatestSchemaRequest) returns (GetLatestSchemaResponse) {
109-
option (google.api.http) = {
110-
get: "/v1beta1/namespaces/{namespace_id}/schemas/{schema_id}"
111-
};
112-
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
113-
tags: "schema";
114-
summary: "Get latest schema for specified schema id and namespace id";
115-
description: "Returns schema data in byte64 format. Clients can decode 'data' field to expected data format"
116-
};
117-
}
99+
rpc GetLatestSchema(GetLatestSchemaRequest) returns (GetLatestSchemaResponse) {}
118100
rpc DeleteSchema(DeleteSchemaRequest) returns (DeleteSchemaResponse) {
119101
option (google.api.http) = {
120102
delete: "/v1beta1/namespaces/{namespace_id}/schemas/{schema_id}"
@@ -124,16 +106,7 @@ service StencilService {
124106
summary: "Delete specified schema";
125107
};
126108
}
127-
rpc GetSchema(GetSchemaRequest) returns (GetSchemaResponse) {
128-
option (google.api.http) = {
129-
get: "/v1beta1/namespaces/{namespace_id}/schemas/{schema_id}/versions/{version_id}"
130-
};
131-
option (grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation) = {
132-
tags: "schema";
133-
tags: "version";
134-
summary: "Get schema for specified version";
135-
};
136-
}
109+
rpc GetSchema(GetSchemaRequest) returns (GetSchemaResponse) {}
137110
rpc ListVersions(ListVersionsRequest) returns (ListVersionsResponse) {
138111
option (google.api.http) = {
139112
get: "/v1beta1/namespaces/{namespace_id}/schemas/{schema_id}/versions"
@@ -159,9 +132,10 @@ service StencilService {
159132
message Namespace {
160133
string id = 1;
161134
Schema.Format format = 2;
162-
string description = 3;
163-
google.protobuf.Timestamp created_at = 4;
164-
google.protobuf.Timestamp updated_at = 5;
135+
Schema.Compatibility Compatibility = 3;
136+
string description = 4;
137+
google.protobuf.Timestamp created_at = 5;
138+
google.protobuf.Timestamp updated_at = 6;
165139
}
166140

167141
message Schema {
@@ -173,7 +147,12 @@ message Schema {
173147
}
174148
enum Compatibility {
175149
COMPATIBILITY_UNSPECIFIED = 0;
176-
COMPATIBILITY_FULL = 1;
150+
COMPATIBILITY_BACKWARD = 1;
151+
COMPATIBILITY_BACKWARD_TRANSITIVE = 2;
152+
COMPATIBILITY_FORWARD = 3;
153+
COMPATIBILITY_FORWARD_TRANSITIVE = 4;
154+
COMPATIBILITY_FULL = 5;
155+
COMPATIBILITY_FULL_TRANSITIVE = 6;
177156
}
178157
string name = 1;
179158
Format format = 2;
@@ -200,7 +179,8 @@ message GetNamespaceResponse {
200179
message CreateNamespaceRequest {
201180
string id = 1 [(google.api.field_behavior) = REQUIRED];
202181
Schema.Format format = 2 [(google.api.field_behavior) = REQUIRED];
203-
string description = 3;
182+
Schema.Compatibility compatibility = 3 [(google.api.field_behavior) = REQUIRED];
183+
string description = 4;
204184
}
205185

206186
message CreateNamespaceResponse {
@@ -210,7 +190,8 @@ message CreateNamespaceResponse {
210190
message UpdateNamespaceRequest {
211191
string id = 1;
212192
Schema.Format format = 2 [(google.api.field_behavior) = REQUIRED];
213-
string description = 3;
193+
Schema.Compatibility compatibility = 3 [(google.api.field_behavior) = REQUIRED];
194+
string description = 4;
214195
}
215196

216197
message UpdateNamespaceResponse {

0 commit comments

Comments
 (0)