@dcl/protocol 1.0.0-29274665765.commit-1e0422c → 1.0.0-29276634715.commit-82dbfb0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +217 -0
- package/out-js/decentraland/kernel/apis/restricted_actions.gen.d.ts +19 -0
- package/out-js/decentraland/kernel/apis/restricted_actions.gen.js +54 -1
- package/out-js/decentraland/kernel/apis/restricted_actions.gen.js.map +1 -1
- package/out-js/decentraland/kernel/comms/rfc4/comms.gen.d.ts +21 -0
- package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js +124 -4
- package/out-js/decentraland/kernel/comms/rfc4/comms.gen.js.map +1 -1
- package/out-js/decentraland/sdk/components/avatar_shape.gen.d.ts +8 -0
- package/out-js/decentraland/sdk/components/avatar_shape.gen.js +35 -1
- package/out-js/decentraland/sdk/components/avatar_shape.gen.js.map +1 -1
- package/out-ts/decentraland/kernel/apis/restricted_actions.gen.ts +56 -0
- package/out-ts/decentraland/kernel/comms/rfc4/comms.gen.ts +166 -2
- package/out-ts/decentraland/sdk/components/avatar_shape.gen.ts +34 -0
- package/package.json +9 -6
- package/proto/decentraland/common/options.proto +51 -0
- package/proto/decentraland/common/quantization_example.proto +164 -0
- package/proto/decentraland/kernel/apis/restricted_actions.proto +5 -0
- package/proto/decentraland/kernel/comms/rfc4/comms.proto +11 -0
- package/proto/decentraland/pulse/pulse_client.proto +79 -0
- package/proto/decentraland/pulse/pulse_server.proto +144 -0
- package/proto/decentraland/pulse/pulse_shared.proto +57 -0
- package/proto/decentraland/sdk/components/avatar_shape.proto +5 -0
- package/proto/decentraland/sdk/components/light_source.proto +1 -1
- package/proto/decentraland/sdk/components/virtual_camera.proto +2 -0
- package/protoc-gen-bitwise/generator_csharp.js +248 -0
- package/protoc-gen-bitwise/options.js +139 -0
- package/protoc-gen-bitwise/plugin.js +87 -0
- package/protoc-gen-bitwise/runtime/cs/Quantize.cs +70 -0
- package/protoc-gen-bitwise/wire.js +239 -0
- package/proto/buf.yaml +0 -47
- package/proto/google/LICENSE +0 -27
- package/proto/google/README.md +0 -1
- package/proto/google/api/annotations.json +0 -83
- package/proto/google/api/annotations.proto +0 -11
- package/proto/google/api/http.json +0 -86
- package/proto/google/api/http.proto +0 -31
- package/proto/google/protobuf/api.json +0 -118
- package/proto/google/protobuf/api.proto +0 -34
- package/proto/google/protobuf/descriptor.json +0 -739
- package/proto/google/protobuf/descriptor.proto +0 -286
- package/proto/google/protobuf/source_context.json +0 -20
- package/proto/google/protobuf/source_context.proto +0 -7
- package/proto/google/protobuf/type.json +0 -202
- package/proto/google/protobuf/type.proto +0 -89
|
@@ -0,0 +1,239 @@
|
|
|
1
|
+
'use strict'
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Self-contained protobuf wire-format codec for protoc-gen-bitwise.
|
|
5
|
+
*
|
|
6
|
+
* The plugin only needs a tiny slice of the descriptor/plugin schemas, so
|
|
7
|
+
* rather than pull in a protobuf runtime (which would force every consumer —
|
|
8
|
+
* including the sibling Pulse checkout that runs this file directly off disk —
|
|
9
|
+
* to `npm install` the protocol repo) we decode the handful of fields we care
|
|
10
|
+
* about by walking the wire format directly. This mirrors the original Python
|
|
11
|
+
* plugin, which already hand-parsed FieldOptions for the same reason.
|
|
12
|
+
*
|
|
13
|
+
* Decoded subset:
|
|
14
|
+
* CodeGeneratorRequest { file_to_generate = 1; proto_file = 15; }
|
|
15
|
+
* FileDescriptorProto { name = 1; package = 2; message_type = 4; }
|
|
16
|
+
* DescriptorProto { name = 1; field = 2; }
|
|
17
|
+
* FieldDescriptorProto { name = 1; label = 4; type = 5; options = 8 (raw bytes); }
|
|
18
|
+
*
|
|
19
|
+
* Encoded subset:
|
|
20
|
+
* CodeGeneratorResponse { error = 1; supported_features = 2; file = 15; }
|
|
21
|
+
* CodeGeneratorResponse.File { name = 1; content = 15; }
|
|
22
|
+
*
|
|
23
|
+
* Wire types: 0 = varint, 1 = 64-bit, 2 = length-delimited, 5 = 32-bit.
|
|
24
|
+
*/
|
|
25
|
+
|
|
26
|
+
// ---------------------------------------------------------------------------
|
|
27
|
+
// Low-level readers
|
|
28
|
+
// ---------------------------------------------------------------------------
|
|
29
|
+
|
|
30
|
+
/** Decode a protobuf varint at `pos`. Returns [value, newPos]. */
|
|
31
|
+
function readVarint(buf, pos) {
|
|
32
|
+
let result = 0
|
|
33
|
+
let shift = 0
|
|
34
|
+
let byte
|
|
35
|
+
do {
|
|
36
|
+
byte = buf[pos++]
|
|
37
|
+
// Multiplication (not <<) keeps values correct past 32 bits.
|
|
38
|
+
result += (byte & 0x7f) * Math.pow(2, shift)
|
|
39
|
+
shift += 7
|
|
40
|
+
} while (byte & 0x80)
|
|
41
|
+
return [result, pos]
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
/** Advance `pos` past a field of the given wire type. Returns newPos. */
|
|
45
|
+
function skipField(buf, pos, wireType) {
|
|
46
|
+
switch (wireType) {
|
|
47
|
+
case 0: // varint
|
|
48
|
+
return readVarint(buf, pos)[1]
|
|
49
|
+
case 1: // 64-bit
|
|
50
|
+
return pos + 8
|
|
51
|
+
case 2: {
|
|
52
|
+
// length-delimited
|
|
53
|
+
const [length, next] = readVarint(buf, pos)
|
|
54
|
+
return next + length
|
|
55
|
+
}
|
|
56
|
+
case 5: // 32-bit
|
|
57
|
+
return pos + 4
|
|
58
|
+
default:
|
|
59
|
+
// Groups (3/4) are deprecated and never appear in descriptors.
|
|
60
|
+
return pos
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
|
|
64
|
+
// ---------------------------------------------------------------------------
|
|
65
|
+
// Request decoding
|
|
66
|
+
// ---------------------------------------------------------------------------
|
|
67
|
+
|
|
68
|
+
function decodeFieldDescriptor(buf) {
|
|
69
|
+
const field = { name: '', label: 0, type: 0, optionsRaw: null }
|
|
70
|
+
let pos = 0
|
|
71
|
+
while (pos < buf.length) {
|
|
72
|
+
let tag
|
|
73
|
+
;[tag, pos] = readVarint(buf, pos)
|
|
74
|
+
const fieldNum = tag >>> 3
|
|
75
|
+
const wireType = tag & 0x7
|
|
76
|
+
if (fieldNum === 1 && wireType === 2) {
|
|
77
|
+
let len
|
|
78
|
+
;[len, pos] = readVarint(buf, pos)
|
|
79
|
+
field.name = buf.toString('utf8', pos, pos + len)
|
|
80
|
+
pos += len
|
|
81
|
+
} else if (fieldNum === 4 && wireType === 0) {
|
|
82
|
+
;[field.label, pos] = readVarint(buf, pos)
|
|
83
|
+
} else if (fieldNum === 5 && wireType === 0) {
|
|
84
|
+
;[field.type, pos] = readVarint(buf, pos)
|
|
85
|
+
} else if (fieldNum === 8 && wireType === 2) {
|
|
86
|
+
let len
|
|
87
|
+
;[len, pos] = readVarint(buf, pos)
|
|
88
|
+
// Keep the raw FieldOptions bytes so custom extensions survive (the
|
|
89
|
+
// descriptor schema doesn't know about ext 50001/50002).
|
|
90
|
+
field.optionsRaw = buf.subarray(pos, pos + len)
|
|
91
|
+
pos += len
|
|
92
|
+
} else {
|
|
93
|
+
pos = skipField(buf, pos, wireType)
|
|
94
|
+
}
|
|
95
|
+
}
|
|
96
|
+
return field
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
function decodeDescriptor(buf) {
|
|
100
|
+
const message = { name: '', field: [] }
|
|
101
|
+
let pos = 0
|
|
102
|
+
while (pos < buf.length) {
|
|
103
|
+
let tag
|
|
104
|
+
;[tag, pos] = readVarint(buf, pos)
|
|
105
|
+
const fieldNum = tag >>> 3
|
|
106
|
+
const wireType = tag & 0x7
|
|
107
|
+
if (fieldNum === 1 && wireType === 2) {
|
|
108
|
+
let len
|
|
109
|
+
;[len, pos] = readVarint(buf, pos)
|
|
110
|
+
message.name = buf.toString('utf8', pos, pos + len)
|
|
111
|
+
pos += len
|
|
112
|
+
} else if (fieldNum === 2 && wireType === 2) {
|
|
113
|
+
let len
|
|
114
|
+
;[len, pos] = readVarint(buf, pos)
|
|
115
|
+
message.field.push(decodeFieldDescriptor(buf.subarray(pos, pos + len)))
|
|
116
|
+
pos += len
|
|
117
|
+
} else {
|
|
118
|
+
// nested_type / enum_type / etc. are intentionally ignored — the
|
|
119
|
+
// generator only walks top-level messages, matching the Python plugin.
|
|
120
|
+
pos = skipField(buf, pos, wireType)
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
return message
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
function decodeFileDescriptor(buf) {
|
|
127
|
+
const file = { name: '', package: '', messageType: [] }
|
|
128
|
+
let pos = 0
|
|
129
|
+
while (pos < buf.length) {
|
|
130
|
+
let tag
|
|
131
|
+
;[tag, pos] = readVarint(buf, pos)
|
|
132
|
+
const fieldNum = tag >>> 3
|
|
133
|
+
const wireType = tag & 0x7
|
|
134
|
+
if (fieldNum === 1 && wireType === 2) {
|
|
135
|
+
let len
|
|
136
|
+
;[len, pos] = readVarint(buf, pos)
|
|
137
|
+
file.name = buf.toString('utf8', pos, pos + len)
|
|
138
|
+
pos += len
|
|
139
|
+
} else if (fieldNum === 2 && wireType === 2) {
|
|
140
|
+
let len
|
|
141
|
+
;[len, pos] = readVarint(buf, pos)
|
|
142
|
+
file.package = buf.toString('utf8', pos, pos + len)
|
|
143
|
+
pos += len
|
|
144
|
+
} else if (fieldNum === 4 && wireType === 2) {
|
|
145
|
+
let len
|
|
146
|
+
;[len, pos] = readVarint(buf, pos)
|
|
147
|
+
file.messageType.push(decodeDescriptor(buf.subarray(pos, pos + len)))
|
|
148
|
+
pos += len
|
|
149
|
+
} else {
|
|
150
|
+
pos = skipField(buf, pos, wireType)
|
|
151
|
+
}
|
|
152
|
+
}
|
|
153
|
+
return file
|
|
154
|
+
}
|
|
155
|
+
|
|
156
|
+
/** Decode a serialized CodeGeneratorRequest. */
|
|
157
|
+
function decodeRequest(buf) {
|
|
158
|
+
const request = { fileToGenerate: [], protoFile: [] }
|
|
159
|
+
let pos = 0
|
|
160
|
+
while (pos < buf.length) {
|
|
161
|
+
let tag
|
|
162
|
+
;[tag, pos] = readVarint(buf, pos)
|
|
163
|
+
const fieldNum = tag >>> 3
|
|
164
|
+
const wireType = tag & 0x7
|
|
165
|
+
if (fieldNum === 1 && wireType === 2) {
|
|
166
|
+
let len
|
|
167
|
+
;[len, pos] = readVarint(buf, pos)
|
|
168
|
+
request.fileToGenerate.push(buf.toString('utf8', pos, pos + len))
|
|
169
|
+
pos += len
|
|
170
|
+
} else if (fieldNum === 15 && wireType === 2) {
|
|
171
|
+
let len
|
|
172
|
+
;[len, pos] = readVarint(buf, pos)
|
|
173
|
+
request.protoFile.push(decodeFileDescriptor(buf.subarray(pos, pos + len)))
|
|
174
|
+
pos += len
|
|
175
|
+
} else {
|
|
176
|
+
pos = skipField(buf, pos, wireType)
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
return request
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
// ---------------------------------------------------------------------------
|
|
183
|
+
// Response encoding
|
|
184
|
+
// ---------------------------------------------------------------------------
|
|
185
|
+
|
|
186
|
+
/** Encode an unsigned integer as a protobuf varint Buffer. */
|
|
187
|
+
function encodeVarint(value) {
|
|
188
|
+
const bytes = []
|
|
189
|
+
let v = value
|
|
190
|
+
while (v > 0x7f) {
|
|
191
|
+
bytes.push((v & 0x7f) | 0x80)
|
|
192
|
+
v = Math.floor(v / 128)
|
|
193
|
+
}
|
|
194
|
+
bytes.push(v & 0x7f)
|
|
195
|
+
return Buffer.from(bytes)
|
|
196
|
+
}
|
|
197
|
+
|
|
198
|
+
function encodeTag(fieldNum, wireType) {
|
|
199
|
+
return encodeVarint((fieldNum << 3) | wireType)
|
|
200
|
+
}
|
|
201
|
+
|
|
202
|
+
/** Encode a length-delimited (string/bytes) field: tag + length + payload. */
|
|
203
|
+
function encodeLengthDelimited(fieldNum, payload) {
|
|
204
|
+
const buf = Buffer.isBuffer(payload) ? payload : Buffer.from(payload, 'utf8')
|
|
205
|
+
return Buffer.concat([encodeTag(fieldNum, 2), encodeVarint(buf.length), buf])
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
function encodeFile(file) {
|
|
209
|
+
return Buffer.concat([
|
|
210
|
+
encodeLengthDelimited(1, file.name), // name = 1
|
|
211
|
+
encodeLengthDelimited(15, file.content), // content = 15
|
|
212
|
+
])
|
|
213
|
+
}
|
|
214
|
+
|
|
215
|
+
/**
|
|
216
|
+
* Encode a CodeGeneratorResponse.
|
|
217
|
+
* @param {{error?: string|null, supportedFeatures?: number, files?: Array<{name:string,content:string}>}} response
|
|
218
|
+
*/
|
|
219
|
+
function encodeResponse(response) {
|
|
220
|
+
const parts = []
|
|
221
|
+
if (response.error != null) {
|
|
222
|
+
parts.push(encodeLengthDelimited(1, response.error)) // error = 1
|
|
223
|
+
}
|
|
224
|
+
if (response.supportedFeatures != null) {
|
|
225
|
+
parts.push(encodeTag(2, 0)) // supported_features = 2 (varint)
|
|
226
|
+
parts.push(encodeVarint(response.supportedFeatures))
|
|
227
|
+
}
|
|
228
|
+
for (const file of response.files || []) {
|
|
229
|
+
parts.push(encodeLengthDelimited(15, encodeFile(file))) // file = 15
|
|
230
|
+
}
|
|
231
|
+
return Buffer.concat(parts)
|
|
232
|
+
}
|
|
233
|
+
|
|
234
|
+
module.exports = {
|
|
235
|
+
readVarint,
|
|
236
|
+
skipField,
|
|
237
|
+
decodeRequest,
|
|
238
|
+
encodeResponse,
|
|
239
|
+
}
|
package/proto/buf.yaml
DELETED
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
version: v1
|
|
2
|
-
breaking:
|
|
3
|
-
use:
|
|
4
|
-
- WIRE_JSON
|
|
5
|
-
ignore:
|
|
6
|
-
- google
|
|
7
|
-
lint:
|
|
8
|
-
use:
|
|
9
|
-
- DIRECTORY_SAME_PACKAGE
|
|
10
|
-
- PACKAGE_DEFINED
|
|
11
|
-
- PACKAGE_DIRECTORY_MATCH
|
|
12
|
-
- PACKAGE_SAME_DIRECTORY
|
|
13
|
-
- ENUM_PASCAL_CASE
|
|
14
|
-
- ENUM_VALUE_UPPER_SNAKE_CASE
|
|
15
|
-
- FIELD_LOWER_SNAKE_CASE
|
|
16
|
-
- MESSAGE_PASCAL_CASE
|
|
17
|
-
- ONEOF_LOWER_SNAKE_CASE
|
|
18
|
-
- PACKAGE_LOWER_SNAKE_CASE
|
|
19
|
-
- RPC_PASCAL_CASE
|
|
20
|
-
- SERVICE_PASCAL_CASE
|
|
21
|
-
- PACKAGE_SAME_CSHARP_NAMESPACE
|
|
22
|
-
- PACKAGE_SAME_GO_PACKAGE
|
|
23
|
-
- PACKAGE_SAME_JAVA_MULTIPLE_FILES
|
|
24
|
-
- PACKAGE_SAME_JAVA_PACKAGE
|
|
25
|
-
- PACKAGE_SAME_PHP_NAMESPACE
|
|
26
|
-
- PACKAGE_SAME_RUBY_PACKAGE
|
|
27
|
-
- PACKAGE_SAME_SWIFT_PREFIX
|
|
28
|
-
- ENUM_FIRST_VALUE_ZERO
|
|
29
|
-
- ENUM_NO_ALLOW_ALIAS
|
|
30
|
-
- IMPORT_NO_WEAK
|
|
31
|
-
- IMPORT_NO_PUBLIC
|
|
32
|
-
- IMPORT_USED
|
|
33
|
-
- FILE_LOWER_SNAKE_CASE
|
|
34
|
-
# Ignored:the default value is used
|
|
35
|
-
# - ENUM_ZERO_VALUE_SUFFIX
|
|
36
|
-
# Ignored: if a prefix is needed in the target language, implement a preprocessor
|
|
37
|
-
# - ENUM_VALUE_PREFIX
|
|
38
|
-
# Not wished
|
|
39
|
-
# - PACKAGE_VERSION_SUFFIX
|
|
40
|
-
# TODO: See if this needs to be added
|
|
41
|
-
# - RPC_REQUEST_RESPONSE_UNIQUE
|
|
42
|
-
# - RPC_REQUEST_STANDARD_NAME
|
|
43
|
-
# - RPC_RESPONSE_STANDARD_NAME
|
|
44
|
-
# - SERVICE_SUFFIX
|
|
45
|
-
ignore:
|
|
46
|
-
- google
|
|
47
|
-
- decentraland/renderer/engine_interface.proto
|
package/proto/google/LICENSE
DELETED
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
Copyright 2014, Google Inc. All rights reserved.
|
|
2
|
-
|
|
3
|
-
Redistribution and use in source and binary forms, with or without
|
|
4
|
-
modification, are permitted provided that the following conditions are
|
|
5
|
-
met:
|
|
6
|
-
|
|
7
|
-
* Redistributions of source code must retain the above copyright
|
|
8
|
-
notice, this list of conditions and the following disclaimer.
|
|
9
|
-
* Redistributions in binary form must reproduce the above
|
|
10
|
-
copyright notice, this list of conditions and the following disclaimer
|
|
11
|
-
in the documentation and/or other materials provided with the
|
|
12
|
-
distribution.
|
|
13
|
-
* Neither the name of Google Inc. nor the names of its
|
|
14
|
-
contributors may be used to endorse or promote products derived from
|
|
15
|
-
this software without specific prior written permission.
|
|
16
|
-
|
|
17
|
-
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
18
|
-
"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
19
|
-
LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
|
|
20
|
-
A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
|
|
21
|
-
OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
22
|
-
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
|
|
23
|
-
LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
|
|
24
|
-
DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
|
|
25
|
-
THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
|
|
26
|
-
(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
|
|
27
|
-
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
package/proto/google/README.md
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
This folder contains stripped and pre-parsed definitions of common Google types. These files are not used by protobuf.js directly but are here so you can use or include them where required.
|
|
@@ -1,83 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"nested": {
|
|
3
|
-
"google": {
|
|
4
|
-
"nested": {
|
|
5
|
-
"api": {
|
|
6
|
-
"nested": {
|
|
7
|
-
"http": {
|
|
8
|
-
"type": "HttpRule",
|
|
9
|
-
"id": 72295728,
|
|
10
|
-
"extend": "google.protobuf.MethodOptions"
|
|
11
|
-
},
|
|
12
|
-
"HttpRule": {
|
|
13
|
-
"oneofs": {
|
|
14
|
-
"pattern": {
|
|
15
|
-
"oneof": [
|
|
16
|
-
"get",
|
|
17
|
-
"put",
|
|
18
|
-
"post",
|
|
19
|
-
"delete",
|
|
20
|
-
"patch",
|
|
21
|
-
"custom"
|
|
22
|
-
]
|
|
23
|
-
}
|
|
24
|
-
},
|
|
25
|
-
"fields": {
|
|
26
|
-
"get": {
|
|
27
|
-
"type": "string",
|
|
28
|
-
"id": 2
|
|
29
|
-
},
|
|
30
|
-
"put": {
|
|
31
|
-
"type": "string",
|
|
32
|
-
"id": 3
|
|
33
|
-
},
|
|
34
|
-
"post": {
|
|
35
|
-
"type": "string",
|
|
36
|
-
"id": 4
|
|
37
|
-
},
|
|
38
|
-
"delete": {
|
|
39
|
-
"type": "string",
|
|
40
|
-
"id": 5
|
|
41
|
-
},
|
|
42
|
-
"patch": {
|
|
43
|
-
"type": "string",
|
|
44
|
-
"id": 6
|
|
45
|
-
},
|
|
46
|
-
"custom": {
|
|
47
|
-
"type": "CustomHttpPattern",
|
|
48
|
-
"id": 8
|
|
49
|
-
},
|
|
50
|
-
"selector": {
|
|
51
|
-
"type": "string",
|
|
52
|
-
"id": 1
|
|
53
|
-
},
|
|
54
|
-
"body": {
|
|
55
|
-
"type": "string",
|
|
56
|
-
"id": 7
|
|
57
|
-
},
|
|
58
|
-
"additionalBindings": {
|
|
59
|
-
"rule": "repeated",
|
|
60
|
-
"type": "HttpRule",
|
|
61
|
-
"id": 11
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
}
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
"protobuf": {
|
|
68
|
-
"nested": {
|
|
69
|
-
"MethodOptions": {
|
|
70
|
-
"fields": {},
|
|
71
|
-
"extensions": [
|
|
72
|
-
[
|
|
73
|
-
1000,
|
|
74
|
-
536870911
|
|
75
|
-
]
|
|
76
|
-
]
|
|
77
|
-
}
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
@@ -1,86 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"nested": {
|
|
3
|
-
"google": {
|
|
4
|
-
"nested": {
|
|
5
|
-
"api": {
|
|
6
|
-
"nested": {
|
|
7
|
-
"Http": {
|
|
8
|
-
"fields": {
|
|
9
|
-
"rules": {
|
|
10
|
-
"rule": "repeated",
|
|
11
|
-
"type": "HttpRule",
|
|
12
|
-
"id": 1
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
},
|
|
16
|
-
"HttpRule": {
|
|
17
|
-
"oneofs": {
|
|
18
|
-
"pattern": {
|
|
19
|
-
"oneof": [
|
|
20
|
-
"get",
|
|
21
|
-
"put",
|
|
22
|
-
"post",
|
|
23
|
-
"delete",
|
|
24
|
-
"patch",
|
|
25
|
-
"custom"
|
|
26
|
-
]
|
|
27
|
-
}
|
|
28
|
-
},
|
|
29
|
-
"fields": {
|
|
30
|
-
"get": {
|
|
31
|
-
"type": "string",
|
|
32
|
-
"id": 2
|
|
33
|
-
},
|
|
34
|
-
"put": {
|
|
35
|
-
"type": "string",
|
|
36
|
-
"id": 3
|
|
37
|
-
},
|
|
38
|
-
"post": {
|
|
39
|
-
"type": "string",
|
|
40
|
-
"id": 4
|
|
41
|
-
},
|
|
42
|
-
"delete": {
|
|
43
|
-
"type": "string",
|
|
44
|
-
"id": 5
|
|
45
|
-
},
|
|
46
|
-
"patch": {
|
|
47
|
-
"type": "string",
|
|
48
|
-
"id": 6
|
|
49
|
-
},
|
|
50
|
-
"custom": {
|
|
51
|
-
"type": "CustomHttpPattern",
|
|
52
|
-
"id": 8
|
|
53
|
-
},
|
|
54
|
-
"selector": {
|
|
55
|
-
"type": "string",
|
|
56
|
-
"id": 1
|
|
57
|
-
},
|
|
58
|
-
"body": {
|
|
59
|
-
"type": "string",
|
|
60
|
-
"id": 7
|
|
61
|
-
},
|
|
62
|
-
"additionalBindings": {
|
|
63
|
-
"rule": "repeated",
|
|
64
|
-
"type": "HttpRule",
|
|
65
|
-
"id": 11
|
|
66
|
-
}
|
|
67
|
-
}
|
|
68
|
-
},
|
|
69
|
-
"CustomHttpPattern": {
|
|
70
|
-
"fields": {
|
|
71
|
-
"kind": {
|
|
72
|
-
"type": "string",
|
|
73
|
-
"id": 1
|
|
74
|
-
},
|
|
75
|
-
"path": {
|
|
76
|
-
"type": "string",
|
|
77
|
-
"id": 2
|
|
78
|
-
}
|
|
79
|
-
}
|
|
80
|
-
}
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
}
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
syntax = "proto3";
|
|
2
|
-
|
|
3
|
-
package google.api;
|
|
4
|
-
|
|
5
|
-
message Http {
|
|
6
|
-
|
|
7
|
-
repeated HttpRule rules = 1;
|
|
8
|
-
}
|
|
9
|
-
|
|
10
|
-
message HttpRule {
|
|
11
|
-
|
|
12
|
-
oneof pattern {
|
|
13
|
-
|
|
14
|
-
string get = 2;
|
|
15
|
-
string put = 3;
|
|
16
|
-
string post = 4;
|
|
17
|
-
string delete = 5;
|
|
18
|
-
string patch = 6;
|
|
19
|
-
CustomHttpPattern custom = 8;
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
string selector = 1;
|
|
23
|
-
string body = 7;
|
|
24
|
-
repeated HttpRule additional_bindings = 11;
|
|
25
|
-
}
|
|
26
|
-
|
|
27
|
-
message CustomHttpPattern {
|
|
28
|
-
|
|
29
|
-
string kind = 1;
|
|
30
|
-
string path = 2;
|
|
31
|
-
}
|
|
@@ -1,118 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"nested": {
|
|
3
|
-
"google": {
|
|
4
|
-
"nested": {
|
|
5
|
-
"protobuf": {
|
|
6
|
-
"nested": {
|
|
7
|
-
"Api": {
|
|
8
|
-
"fields": {
|
|
9
|
-
"name": {
|
|
10
|
-
"type": "string",
|
|
11
|
-
"id": 1
|
|
12
|
-
},
|
|
13
|
-
"methods": {
|
|
14
|
-
"rule": "repeated",
|
|
15
|
-
"type": "Method",
|
|
16
|
-
"id": 2
|
|
17
|
-
},
|
|
18
|
-
"options": {
|
|
19
|
-
"rule": "repeated",
|
|
20
|
-
"type": "Option",
|
|
21
|
-
"id": 3
|
|
22
|
-
},
|
|
23
|
-
"version": {
|
|
24
|
-
"type": "string",
|
|
25
|
-
"id": 4
|
|
26
|
-
},
|
|
27
|
-
"sourceContext": {
|
|
28
|
-
"type": "SourceContext",
|
|
29
|
-
"id": 5
|
|
30
|
-
},
|
|
31
|
-
"mixins": {
|
|
32
|
-
"rule": "repeated",
|
|
33
|
-
"type": "Mixin",
|
|
34
|
-
"id": 6
|
|
35
|
-
},
|
|
36
|
-
"syntax": {
|
|
37
|
-
"type": "Syntax",
|
|
38
|
-
"id": 7
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
},
|
|
42
|
-
"Method": {
|
|
43
|
-
"fields": {
|
|
44
|
-
"name": {
|
|
45
|
-
"type": "string",
|
|
46
|
-
"id": 1
|
|
47
|
-
},
|
|
48
|
-
"requestTypeUrl": {
|
|
49
|
-
"type": "string",
|
|
50
|
-
"id": 2
|
|
51
|
-
},
|
|
52
|
-
"requestStreaming": {
|
|
53
|
-
"type": "bool",
|
|
54
|
-
"id": 3
|
|
55
|
-
},
|
|
56
|
-
"responseTypeUrl": {
|
|
57
|
-
"type": "string",
|
|
58
|
-
"id": 4
|
|
59
|
-
},
|
|
60
|
-
"responseStreaming": {
|
|
61
|
-
"type": "bool",
|
|
62
|
-
"id": 5
|
|
63
|
-
},
|
|
64
|
-
"options": {
|
|
65
|
-
"rule": "repeated",
|
|
66
|
-
"type": "Option",
|
|
67
|
-
"id": 6
|
|
68
|
-
},
|
|
69
|
-
"syntax": {
|
|
70
|
-
"type": "Syntax",
|
|
71
|
-
"id": 7
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
},
|
|
75
|
-
"Mixin": {
|
|
76
|
-
"fields": {
|
|
77
|
-
"name": {
|
|
78
|
-
"type": "string",
|
|
79
|
-
"id": 1
|
|
80
|
-
},
|
|
81
|
-
"root": {
|
|
82
|
-
"type": "string",
|
|
83
|
-
"id": 2
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
},
|
|
87
|
-
"SourceContext": {
|
|
88
|
-
"fields": {
|
|
89
|
-
"fileName": {
|
|
90
|
-
"type": "string",
|
|
91
|
-
"id": 1
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
},
|
|
95
|
-
"Option": {
|
|
96
|
-
"fields": {
|
|
97
|
-
"name": {
|
|
98
|
-
"type": "string",
|
|
99
|
-
"id": 1
|
|
100
|
-
},
|
|
101
|
-
"value": {
|
|
102
|
-
"type": "Any",
|
|
103
|
-
"id": 2
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
},
|
|
107
|
-
"Syntax": {
|
|
108
|
-
"values": {
|
|
109
|
-
"SYNTAX_PROTO2": 0,
|
|
110
|
-
"SYNTAX_PROTO3": 1
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}
|
|
114
|
-
}
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
}
|
|
118
|
-
}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
syntax = "proto3";
|
|
2
|
-
|
|
3
|
-
package google.protobuf;
|
|
4
|
-
|
|
5
|
-
import "google/protobuf/source_context.proto";
|
|
6
|
-
import "google/protobuf/type.proto";
|
|
7
|
-
|
|
8
|
-
message Api {
|
|
9
|
-
|
|
10
|
-
string name = 1;
|
|
11
|
-
repeated Method methods = 2;
|
|
12
|
-
repeated Option options = 3;
|
|
13
|
-
string version = 4;
|
|
14
|
-
SourceContext source_context = 5;
|
|
15
|
-
repeated Mixin mixins = 6;
|
|
16
|
-
Syntax syntax = 7;
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
message Method {
|
|
20
|
-
|
|
21
|
-
string name = 1;
|
|
22
|
-
string request_type_url = 2;
|
|
23
|
-
bool request_streaming = 3;
|
|
24
|
-
string response_type_url = 4;
|
|
25
|
-
bool response_streaming = 5;
|
|
26
|
-
repeated Option options = 6;
|
|
27
|
-
Syntax syntax = 7;
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
message Mixin {
|
|
31
|
-
|
|
32
|
-
string name = 1;
|
|
33
|
-
string root = 2;
|
|
34
|
-
}
|