Change-Id: I122f1cee71a8a739ea603e52582cb0fa9698f0edpull/290/head
parent
4e63b52088
commit
ca9d1a053a
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