commit
ba05454041
8 changed files with 425 additions and 21 deletions
@ -0,0 +1,104 @@ |
|||||||
|
// Protocol Buffers - Google's data interchange format |
||||||
|
// Copyright 2008 Google Inc. All rights reserved. |
||||||
|
// https://developers.google.com/protocol-buffers/ |
||||||
|
// |
||||||
|
// Redistribution and use in source and binary forms, with or without |
||||||
|
// modification, are permitted provided that the following conditions are |
||||||
|
// met: |
||||||
|
// |
||||||
|
// * Redistributions of source code must retain the above copyright |
||||||
|
// notice, this list of conditions and the following disclaimer. |
||||||
|
// * Redistributions in binary form must reproduce the above |
||||||
|
// copyright notice, this list of conditions and the following disclaimer |
||||||
|
// in the documentation and/or other materials provided with the |
||||||
|
// distribution. |
||||||
|
// * Neither the name of Google Inc. nor the names of its |
||||||
|
// contributors may be used to endorse or promote products derived from |
||||||
|
// this software without specific prior written permission. |
||||||
|
// |
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||||
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||||
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||||
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||||
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||||
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package google.protobuf; |
||||||
|
|
||||||
|
import "google/protobuf/source_context.proto"; |
||||||
|
import "google/protobuf/type.proto"; |
||||||
|
|
||||||
|
option java_multiple_files = true; |
||||||
|
option java_outer_classname = "ApiProto"; |
||||||
|
option java_package = "com.google.protobuf"; |
||||||
|
|
||||||
|
|
||||||
|
// Api is a light-weight descriptor for a protocol buffer service. |
||||||
|
message Api { |
||||||
|
// The fully qualified name of this api, including package name |
||||||
|
// followed by the api's simple name. |
||||||
|
string name = 1; |
||||||
|
|
||||||
|
// The methods of this api, in unspecified order. |
||||||
|
repeated Method methods = 2; |
||||||
|
|
||||||
|
// Any metadata attached to the API. |
||||||
|
repeated Option options = 3; |
||||||
|
|
||||||
|
// A version string for this api. If specified, must have the form |
||||||
|
// `major-version.minor-version`, as in `1.10`. If the minor version |
||||||
|
// is omitted, it defaults to zero. If the entire version field is |
||||||
|
// empty, the major version is derived from the package name, as |
||||||
|
// outlined below. If the field is not empty, the version in the |
||||||
|
// package name will be verified to be consistent with what is |
||||||
|
// provided here. |
||||||
|
// |
||||||
|
// The versioning schema uses [semantic |
||||||
|
// versioning](http://semver.org) where the major version number |
||||||
|
// indicates a breaking change and the minor version an additive, |
||||||
|
// non-breaking change. Both version numbers are signals to users |
||||||
|
// what to expect from different versions, and should be carefully |
||||||
|
// chosen based on the product plan. |
||||||
|
// |
||||||
|
// The major version is also reflected in the package name of the |
||||||
|
// API, which must end in `v<major-version>`, as in |
||||||
|
// `google.feature.v1`. For major versions 0 and 1, the suffix can |
||||||
|
// be omitted. Zero major versions must only be used for |
||||||
|
// experimental, none-GA apis. |
||||||
|
// |
||||||
|
// See also: [design doc](http://go/api-versioning). |
||||||
|
// |
||||||
|
// |
||||||
|
string version = 4; |
||||||
|
|
||||||
|
// Source context for the protocol buffer service represented by this |
||||||
|
// message. |
||||||
|
SourceContext source_context = 5; |
||||||
|
} |
||||||
|
|
||||||
|
// Method represents a method of an api. |
||||||
|
message Method { |
||||||
|
// The simple name of this method. |
||||||
|
string name = 1; |
||||||
|
|
||||||
|
// A URL of the input message type. |
||||||
|
string request_type_url = 2; |
||||||
|
|
||||||
|
// If true, the request is streamed. |
||||||
|
bool request_streaming = 3; |
||||||
|
|
||||||
|
// The URL of the output message type. |
||||||
|
string response_type_url = 4; |
||||||
|
|
||||||
|
// If true, the response is streamed. |
||||||
|
bool response_streaming = 5; |
||||||
|
|
||||||
|
// Any metadata attached to the method. |
||||||
|
repeated Option options = 6; |
||||||
|
} |
@ -0,0 +1,49 @@ |
|||||||
|
// Protocol Buffers - Google's data interchange format |
||||||
|
// Copyright 2008 Google Inc. All rights reserved. |
||||||
|
// https://developers.google.com/protocol-buffers/ |
||||||
|
// |
||||||
|
// Redistribution and use in source and binary forms, with or without |
||||||
|
// modification, are permitted provided that the following conditions are |
||||||
|
// met: |
||||||
|
// |
||||||
|
// * Redistributions of source code must retain the above copyright |
||||||
|
// notice, this list of conditions and the following disclaimer. |
||||||
|
// * Redistributions in binary form must reproduce the above |
||||||
|
// copyright notice, this list of conditions and the following disclaimer |
||||||
|
// in the documentation and/or other materials provided with the |
||||||
|
// distribution. |
||||||
|
// * Neither the name of Google Inc. nor the names of its |
||||||
|
// contributors may be used to endorse or promote products derived from |
||||||
|
// this software without specific prior written permission. |
||||||
|
// |
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||||
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||||
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||||
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||||
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||||
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package google.protobuf; |
||||||
|
|
||||||
|
option java_multiple_files = true; |
||||||
|
option java_outer_classname = "EmptyProto"; |
||||||
|
option java_package = "com.google.protobuf"; |
||||||
|
|
||||||
|
|
||||||
|
// A generic empty message that you can re-use to avoid defining duplicated |
||||||
|
// empty messages in your APIs. A typical example is to use it as the request |
||||||
|
// or the response type of an API method. For instance: |
||||||
|
// |
||||||
|
// service Foo { |
||||||
|
// rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); |
||||||
|
// } |
||||||
|
// |
||||||
|
message Empty { |
||||||
|
|
||||||
|
} |
@ -0,0 +1,45 @@ |
|||||||
|
// Protocol Buffers - Google's data interchange format |
||||||
|
// Copyright 2008 Google Inc. All rights reserved. |
||||||
|
// https://developers.google.com/protocol-buffers/ |
||||||
|
// |
||||||
|
// Redistribution and use in source and binary forms, with or without |
||||||
|
// modification, are permitted provided that the following conditions are |
||||||
|
// met: |
||||||
|
// |
||||||
|
// * Redistributions of source code must retain the above copyright |
||||||
|
// notice, this list of conditions and the following disclaimer. |
||||||
|
// * Redistributions in binary form must reproduce the above |
||||||
|
// copyright notice, this list of conditions and the following disclaimer |
||||||
|
// in the documentation and/or other materials provided with the |
||||||
|
// distribution. |
||||||
|
// * Neither the name of Google Inc. nor the names of its |
||||||
|
// contributors may be used to endorse or promote products derived from |
||||||
|
// this software without specific prior written permission. |
||||||
|
// |
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||||
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||||
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||||
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||||
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||||
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package google.protobuf; |
||||||
|
|
||||||
|
option java_multiple_files = true; |
||||||
|
option java_outer_classname = "SourceContextProto"; |
||||||
|
option java_package = "com.google.protobuf"; |
||||||
|
|
||||||
|
|
||||||
|
// `SourceContext` represents information about the source of a |
||||||
|
// protobuf element, like the file in which it is defined. |
||||||
|
message SourceContext { |
||||||
|
// The path-qualified name of the .proto file that contained the associated |
||||||
|
// protobuf element. For example: `"google/protobuf/source.proto"`. |
||||||
|
string file_name = 1; |
||||||
|
} |
@ -0,0 +1,196 @@ |
|||||||
|
// Protocol Buffers - Google's data interchange format |
||||||
|
// Copyright 2008 Google Inc. All rights reserved. |
||||||
|
// https://developers.google.com/protocol-buffers/ |
||||||
|
// |
||||||
|
// Redistribution and use in source and binary forms, with or without |
||||||
|
// modification, are permitted provided that the following conditions are |
||||||
|
// met: |
||||||
|
// |
||||||
|
// * Redistributions of source code must retain the above copyright |
||||||
|
// notice, this list of conditions and the following disclaimer. |
||||||
|
// * Redistributions in binary form must reproduce the above |
||||||
|
// copyright notice, this list of conditions and the following disclaimer |
||||||
|
// in the documentation and/or other materials provided with the |
||||||
|
// distribution. |
||||||
|
// * Neither the name of Google Inc. nor the names of its |
||||||
|
// contributors may be used to endorse or promote products derived from |
||||||
|
// this software without specific prior written permission. |
||||||
|
// |
||||||
|
// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
||||||
|
// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
||||||
|
// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
||||||
|
// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
||||||
|
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
||||||
|
// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
||||||
|
// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
||||||
|
// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
||||||
|
// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
||||||
|
// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
||||||
|
syntax = "proto3"; |
||||||
|
|
||||||
|
package google.protobuf; |
||||||
|
|
||||||
|
import "google/protobuf/any.proto"; |
||||||
|
import "google/protobuf/source_context.proto"; |
||||||
|
|
||||||
|
option java_multiple_files = true; |
||||||
|
option java_outer_classname = "TypeProto"; |
||||||
|
option java_package = "com.google.protobuf"; |
||||||
|
|
||||||
|
|
||||||
|
// A light-weight descriptor for a proto message type. |
||||||
|
message Type { |
||||||
|
// The fully qualified message name. |
||||||
|
string name = 1; |
||||||
|
|
||||||
|
// The list of fields. |
||||||
|
repeated Field fields = 2; |
||||||
|
|
||||||
|
// The list of oneof definitions. |
||||||
|
// The list of oneofs declared in this Type |
||||||
|
repeated string oneofs = 3; |
||||||
|
|
||||||
|
// The proto options. |
||||||
|
repeated Option options = 4; |
||||||
|
|
||||||
|
// The source context. |
||||||
|
SourceContext source_context = 5; |
||||||
|
} |
||||||
|
|
||||||
|
// Field represents a single field of a message type. |
||||||
|
message Field { |
||||||
|
// Kind represents a basic field type. |
||||||
|
enum Kind { |
||||||
|
// Field type unknown. |
||||||
|
TYPE_UNKNOWN = 0; |
||||||
|
|
||||||
|
// Field type double. |
||||||
|
TYPE_DOUBLE = 1; |
||||||
|
|
||||||
|
// Field type float. |
||||||
|
TYPE_FLOAT = 2; |
||||||
|
|
||||||
|
// Field type int64. |
||||||
|
TYPE_INT64 = 3; |
||||||
|
|
||||||
|
// Field type uint64. |
||||||
|
TYPE_UINT64 = 4; |
||||||
|
|
||||||
|
// Field type int32. |
||||||
|
TYPE_INT32 = 5; |
||||||
|
|
||||||
|
// Field type fixed64. |
||||||
|
TYPE_FIXED64 = 6; |
||||||
|
|
||||||
|
// Field type fixed32. |
||||||
|
TYPE_FIXED32 = 7; |
||||||
|
|
||||||
|
// Field type bool. |
||||||
|
TYPE_BOOL = 8; |
||||||
|
|
||||||
|
// Field type string. |
||||||
|
TYPE_STRING = 9; |
||||||
|
|
||||||
|
// Field type message. |
||||||
|
TYPE_MESSAGE = 11; |
||||||
|
|
||||||
|
// Field type bytes. |
||||||
|
TYPE_BYTES = 12; |
||||||
|
|
||||||
|
// Field type uint32. |
||||||
|
TYPE_UINT32 = 13; |
||||||
|
|
||||||
|
// Field type enum. |
||||||
|
TYPE_ENUM = 14; |
||||||
|
|
||||||
|
// Field type sfixed32. |
||||||
|
TYPE_SFIXED32 = 15; |
||||||
|
|
||||||
|
// Field type sfixed64. |
||||||
|
TYPE_SFIXED64 = 16; |
||||||
|
|
||||||
|
// Field type sint32. |
||||||
|
TYPE_SINT32 = 17; |
||||||
|
|
||||||
|
// Field type sint64. |
||||||
|
TYPE_SINT64 = 18; |
||||||
|
} |
||||||
|
|
||||||
|
// Cardinality represents whether a field is optional, required, or |
||||||
|
// repeated. |
||||||
|
enum Cardinality { |
||||||
|
// The field cardinality is unknown. Typically an error condition. |
||||||
|
CARDINALITY_UNKNOWN = 0; |
||||||
|
|
||||||
|
// For optional fields. |
||||||
|
CARDINALITY_OPTIONAL = 1; |
||||||
|
|
||||||
|
// For required fields. Not used for proto3. |
||||||
|
CARDINALITY_REQUIRED = 2; |
||||||
|
|
||||||
|
// For repeated fields. |
||||||
|
CARDINALITY_REPEATED = 3; |
||||||
|
} |
||||||
|
|
||||||
|
// The field kind. |
||||||
|
Kind kind = 1; |
||||||
|
|
||||||
|
// The field cardinality, i.e. optional/required/repeated. |
||||||
|
Cardinality cardinality = 2; |
||||||
|
|
||||||
|
// The proto field number. |
||||||
|
int32 number = 3; |
||||||
|
|
||||||
|
// The field name. |
||||||
|
string name = 4; |
||||||
|
|
||||||
|
// The type URL (without the scheme) when the type is MESSAGE or ENUM, |
||||||
|
// such as `type.googleapis.com/google.protobuf.Empty`. |
||||||
|
string type_url = 6; |
||||||
|
|
||||||
|
// Index in Type.oneofs. Starts at 1. Zero means no oneof mapping. |
||||||
|
int32 oneof_index = 7; |
||||||
|
|
||||||
|
// Whether to use alternative packed wire representation. |
||||||
|
bool packed = 8; |
||||||
|
|
||||||
|
// The proto options. |
||||||
|
repeated Option options = 9; |
||||||
|
} |
||||||
|
|
||||||
|
// Enum type definition. |
||||||
|
message Enum { |
||||||
|
// Enum type name. |
||||||
|
string name = 1; |
||||||
|
|
||||||
|
// Enum value definitions. |
||||||
|
repeated EnumValue enumvalue = 2; |
||||||
|
|
||||||
|
// Proto options for the enum type. |
||||||
|
repeated Option options = 3; |
||||||
|
|
||||||
|
// The source context. |
||||||
|
SourceContext source_context = 4; |
||||||
|
} |
||||||
|
|
||||||
|
// Enum value definition. |
||||||
|
message EnumValue { |
||||||
|
// Enum value name. |
||||||
|
string name = 1; |
||||||
|
|
||||||
|
// Enum value number. |
||||||
|
int32 number = 2; |
||||||
|
|
||||||
|
// Proto options for the enum value. |
||||||
|
repeated Option options = 3; |
||||||
|
} |
||||||
|
|
||||||
|
// Proto option attached to messages/fields/enums etc. |
||||||
|
message Option { |
||||||
|
// Proto option name. |
||||||
|
string name = 1; |
||||||
|
|
||||||
|
// Proto option value. |
||||||
|
Any value = 2; |
||||||
|
} |
Loading…
Reference in new issue