diff --git a/api_names_out.yaml b/api_names_out.yaml index df83570c5..d423d9201 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -80773,15 +80773,18 @@ "/speech:v1/RecognitionAudio/content": content "/speech:v1/RecognitionAudio/uri": uri "/speech:v1/RecognitionConfig": recognition_config +"/speech:v1/RecognitionConfig/enableAutomaticPunctuation": enable_automatic_punctuation "/speech:v1/RecognitionConfig/enableWordConfidence": enable_word_confidence "/speech:v1/RecognitionConfig/enableWordTimeOffsets": enable_word_time_offsets "/speech:v1/RecognitionConfig/encoding": encoding "/speech:v1/RecognitionConfig/languageCode": language_code "/speech:v1/RecognitionConfig/maxAlternatives": max_alternatives +"/speech:v1/RecognitionConfig/model": model "/speech:v1/RecognitionConfig/profanityFilter": profanity_filter "/speech:v1/RecognitionConfig/sampleRateHertz": sample_rate_hertz "/speech:v1/RecognitionConfig/speechContexts": speech_contexts "/speech:v1/RecognitionConfig/speechContexts/speech_context": speech_context +"/speech:v1/RecognitionConfig/useEnhanced": use_enhanced "/speech:v1/RecognizeRequest": recognize_request "/speech:v1/RecognizeRequest/audio": audio "/speech:v1/RecognizeRequest/config": config @@ -84376,9 +84379,11 @@ "/testing:v1/Distribution/measurementTime": measurement_time "/testing:v1/Environment": environment "/testing:v1/Environment/androidDevice": android_device +"/testing:v1/Environment/iosDevice": ios_device "/testing:v1/EnvironmentMatrix": environment_matrix "/testing:v1/EnvironmentMatrix/androidDeviceList": android_device_list "/testing:v1/EnvironmentMatrix/androidMatrix": android_matrix +"/testing:v1/EnvironmentMatrix/iosDeviceList": ios_device_list "/testing:v1/EnvironmentVariable": environment_variable "/testing:v1/EnvironmentVariable/key": key "/testing:v1/EnvironmentVariable/value": value @@ -84395,6 +84400,45 @@ "/testing:v1/IntentFilter/categoryNames": category_names "/testing:v1/IntentFilter/categoryNames/category_name": category_name "/testing:v1/IntentFilter/mimeType": mime_type +"/testing:v1/IosDevice": ios_device +"/testing:v1/IosDevice/iosModelId": ios_model_id +"/testing:v1/IosDevice/iosVersionId": ios_version_id +"/testing:v1/IosDevice/locale": locale +"/testing:v1/IosDevice/orientation": orientation +"/testing:v1/IosDeviceCatalog": ios_device_catalog +"/testing:v1/IosDeviceCatalog/models": models +"/testing:v1/IosDeviceCatalog/models/model": model +"/testing:v1/IosDeviceCatalog/runtimeConfiguration": runtime_configuration +"/testing:v1/IosDeviceCatalog/versions": versions +"/testing:v1/IosDeviceCatalog/versions/version": version +"/testing:v1/IosDeviceList": ios_device_list +"/testing:v1/IosDeviceList/iosDevices": ios_devices +"/testing:v1/IosDeviceList/iosDevices/ios_device": ios_device +"/testing:v1/IosModel": ios_model +"/testing:v1/IosModel/deviceCapabilities": device_capabilities +"/testing:v1/IosModel/deviceCapabilities/device_capability": device_capability +"/testing:v1/IosModel/id": id +"/testing:v1/IosModel/name": name +"/testing:v1/IosModel/supportedVersionIds": supported_version_ids +"/testing:v1/IosModel/supportedVersionIds/supported_version_id": supported_version_id +"/testing:v1/IosModel/tags": tags +"/testing:v1/IosModel/tags/tag": tag +"/testing:v1/IosRuntimeConfiguration": ios_runtime_configuration +"/testing:v1/IosRuntimeConfiguration/locales": locales +"/testing:v1/IosRuntimeConfiguration/locales/locale": locale +"/testing:v1/IosRuntimeConfiguration/orientations": orientations +"/testing:v1/IosRuntimeConfiguration/orientations/orientation": orientation +"/testing:v1/IosTestSetup": ios_test_setup +"/testing:v1/IosTestSetup/networkProfile": network_profile +"/testing:v1/IosVersion": ios_version +"/testing:v1/IosVersion/id": id +"/testing:v1/IosVersion/majorVersion": major_version +"/testing:v1/IosVersion/minorVersion": minor_version +"/testing:v1/IosVersion/tags": tags +"/testing:v1/IosVersion/tags/tag": tag +"/testing:v1/IosXcTest": ios_xc_test +"/testing:v1/IosXcTest/testsZip": tests_zip +"/testing:v1/IosXcTest/xctestrun": xctestrun "/testing:v1/LauncherActivityIntent": launcher_activity_intent "/testing:v1/Locale": locale "/testing:v1/Locale/id": id @@ -84445,6 +84489,7 @@ "/testing:v1/TestDetails/videoRecordingDisabled": video_recording_disabled "/testing:v1/TestEnvironmentCatalog": test_environment_catalog "/testing:v1/TestEnvironmentCatalog/androidDeviceCatalog": android_device_catalog +"/testing:v1/TestEnvironmentCatalog/iosDeviceCatalog": ios_device_catalog "/testing:v1/TestEnvironmentCatalog/networkConfigurationCatalog": network_configuration_catalog "/testing:v1/TestEnvironmentCatalog/softwareCatalog": software_catalog "/testing:v1/TestExecution": test_execution @@ -84487,6 +84532,8 @@ "/testing:v1/TestSpecification/autoGoogleLogin": auto_google_login "/testing:v1/TestSpecification/disablePerformanceMetrics": disable_performance_metrics "/testing:v1/TestSpecification/disableVideoRecording": disable_video_recording +"/testing:v1/TestSpecification/iosTestSetup": ios_test_setup +"/testing:v1/TestSpecification/iosXcTest": ios_xc_test "/testing:v1/TestSpecification/testSetup": test_setup "/testing:v1/TestSpecification/testTimeout": test_timeout "/testing:v1/ToolResultsExecution": tool_results_execution diff --git a/generated/google/apis/classroom_v1.rb b/generated/google/apis/classroom_v1.rb index 6bbce7252..790834549 100644 --- a/generated/google/apis/classroom_v1.rb +++ b/generated/google/apis/classroom_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/classroom/ module ClassroomV1 VERSION = 'V1' - REVISION = '20180807' + REVISION = '20180908' # View and manage announcements in Google Classroom AUTH_CLASSROOM_ANNOUNCEMENTS = 'https://www.googleapis.com/auth/classroom.announcements' diff --git a/generated/google/apis/classroom_v1/classes.rb b/generated/google/apis/classroom_v1/classes.rb index 3784b1939..5c185ae85 100644 --- a/generated/google/apis/classroom_v1/classes.rb +++ b/generated/google/apis/classroom_v1/classes.rb @@ -573,13 +573,13 @@ module Google # @return [String] attr_accessor :description - # Represents a whole calendar date, e.g. date of birth. The time of day and - # time zone are either specified elsewhere or are not significant. The date - # is relative to the Proleptic Gregorian Calendar. The day may be 0 to - # represent a year and month where the day is not significant, e.g. credit card - # expiration date. The year may be 0 to represent a month and day independent - # of year, e.g. anniversary date. Related types are google.type.TimeOfDay - # and `google.protobuf.Timestamp`. + # Represents a whole calendar date, for example date of birth. The time of day + # and time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day can be 0 to + # represent a year and month where the day is not significant, for example + # credit card expiration date. The year can be 0 to represent a month and day + # independent of year, for example anniversary date. Related types are + # google.type.TimeOfDay and `google.protobuf.Timestamp`. # Corresponds to the JSON property `dueDate` # @return [Google::Apis::ClassroomV1::Date] attr_accessor :due_date @@ -706,13 +706,13 @@ module Google end end - # Represents a whole calendar date, e.g. date of birth. The time of day and - # time zone are either specified elsewhere or are not significant. The date - # is relative to the Proleptic Gregorian Calendar. The day may be 0 to - # represent a year and month where the day is not significant, e.g. credit card - # expiration date. The year may be 0 to represent a month and day independent - # of year, e.g. anniversary date. Related types are google.type.TimeOfDay - # and `google.protobuf.Timestamp`. + # Represents a whole calendar date, for example date of birth. The time of day + # and time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day can be 0 to + # represent a year and month where the day is not significant, for example + # credit card expiration date. The year can be 0 to represent a month and day + # independent of year, for example anniversary date. Related types are + # google.type.TimeOfDay and `google.protobuf.Timestamp`. class Date include Google::Apis::Core::Hashable diff --git a/generated/google/apis/proximitybeacon_v1beta1.rb b/generated/google/apis/proximitybeacon_v1beta1.rb index 7f0498d4a..9a54a51bd 100644 --- a/generated/google/apis/proximitybeacon_v1beta1.rb +++ b/generated/google/apis/proximitybeacon_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/beacons/proximity/ module ProximitybeaconV1beta1 VERSION = 'V1beta1' - REVISION = '20180610' + REVISION = '20180909' # View and modify your beacons AUTH_USERLOCATION_BEACON_REGISTRY = 'https://www.googleapis.com/auth/userlocation.beacon.registry' diff --git a/generated/google/apis/proximitybeacon_v1beta1/classes.rb b/generated/google/apis/proximitybeacon_v1beta1/classes.rb index b18317b8a..b5504cfda 100644 --- a/generated/google/apis/proximitybeacon_v1beta1/classes.rb +++ b/generated/google/apis/proximitybeacon_v1beta1/classes.rb @@ -324,13 +324,13 @@ module Google end end - # Represents a whole calendar date, e.g. date of birth. The time of day and - # time zone are either specified elsewhere or are not significant. The date - # is relative to the Proleptic Gregorian Calendar. The day may be 0 to - # represent a year and month where the day is not significant, e.g. credit card - # expiration date. The year may be 0 to represent a month and day independent - # of year, e.g. anniversary date. Related types are google.type.TimeOfDay - # and `google.protobuf.Timestamp`. + # Represents a whole calendar date, for example date of birth. The time of day + # and time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day can be 0 to + # represent a year and month where the day is not significant, for example + # credit card expiration date. The year can be 0 to represent a month and day + # independent of year, for example anniversary date. Related types are + # google.type.TimeOfDay and `google.protobuf.Timestamp`. class Date include Google::Apis::Core::Hashable @@ -398,13 +398,13 @@ module Google # @return [String] attr_accessor :beacon_name - # Represents a whole calendar date, e.g. date of birth. The time of day and - # time zone are either specified elsewhere or are not significant. The date - # is relative to the Proleptic Gregorian Calendar. The day may be 0 to - # represent a year and month where the day is not significant, e.g. credit card - # expiration date. The year may be 0 to represent a month and day independent - # of year, e.g. anniversary date. Related types are google.type.TimeOfDay - # and `google.protobuf.Timestamp`. + # Represents a whole calendar date, for example date of birth. The time of day + # and time zone are either specified elsewhere or are not significant. The date + # is relative to the Proleptic Gregorian Calendar. The day can be 0 to + # represent a year and month where the day is not significant, for example + # credit card expiration date. The year can be 0 to represent a month and day + # independent of year, for example anniversary date. Related types are + # google.type.TimeOfDay and `google.protobuf.Timestamp`. # Corresponds to the JSON property `estimatedLowBatteryDate` # @return [Google::Apis::ProximitybeaconV1beta1::Date] attr_accessor :estimated_low_battery_date diff --git a/generated/google/apis/serviceconsumermanagement_v1.rb b/generated/google/apis/serviceconsumermanagement_v1.rb index 82b483d22..e02ae1385 100644 --- a/generated/google/apis/serviceconsumermanagement_v1.rb +++ b/generated/google/apis/serviceconsumermanagement_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/service-consumer-management/docs/overview module ServiceconsumermanagementV1 VERSION = 'V1' - REVISION = '20180820' + REVISION = '20180908' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/serviceconsumermanagement_v1/classes.rb b/generated/google/apis/serviceconsumermanagement_v1/classes.rb index dcc93a64a..fadfcda43 100644 --- a/generated/google/apis/serviceconsumermanagement_v1/classes.rb +++ b/generated/google/apis/serviceconsumermanagement_v1/classes.rb @@ -1242,79 +1242,79 @@ module Google end end - # `HttpRule` defines the mapping of an RPC method to one or more HTTP - # REST API methods. The mapping specifies how different portions of the RPC - # request message are mapped to URL path, URL query parameters, and - # HTTP request body. The mapping is typically specified as an - # `google.api.http` annotation on the RPC method, - # see "google/api/annotations.proto" for details. - # The mapping consists of a field specifying the path template and - # method kind. The path template can refer to fields in the request - # message, as in the example below which describes a REST GET - # operation on a resource collection of messages: + # # gRPC Transcoding + # gRPC Transcoding is a feature for mapping between a gRPC method and one or + # more HTTP REST endpoints. It allows developers to build a single API service + # that supports both gRPC APIs and REST APIs. Many systems, including [Google + # APIs](https://github.com/googleapis/googleapis), + # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC + # Gateway](https://github.com/grpc-ecosystem/grpc-gateway), + # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature + # and use it for large scale production services. + # `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies + # how different portions of the gRPC request message are mapped to the URL + # path, URL query parameters, and HTTP request body. It also controls how the + # gRPC response message is mapped to the HTTP response body. `HttpRule` is + # typically specified as an `google.api.http` annotation on the gRPC method. + # Each mapping specifies a URL path template and an HTTP method. The path + # template may refer to one or more fields in the gRPC request message, as long + # as each field is a non-repeated field with a primitive (non-message) type. + # The path template controls how fields of the request message are mapped to + # the URL path. + # Example: # service Messaging ` # rpc GetMessage(GetMessageRequest) returns (Message) ` - # option (google.api.http).get = "/v1/messages/`message_id`/`sub. - # subfield`"; + # option (google.api.http) = ` + # get: "/v1/`name=messages/*"`" + # `; # ` # ` # message GetMessageRequest ` - # message SubMessage ` - # string subfield = 1; - # ` - # string message_id = 1; // mapped to the URL - # SubMessage sub = 2; // `sub.subfield` is url-mapped + # string name = 1; // Mapped to URL path. # ` # message Message ` - # string text = 1; // content of the resource + # string text = 1; // The resource content. # ` - # The same http annotation can alternatively be expressed inside the - # `GRPC API Configuration` YAML file. - # http: - # rules: - # - selector: .Messaging.GetMessage - # get: /v1/messages/`message_id`/`sub.subfield` - # This definition enables an automatic, bidrectional mapping of HTTP - # JSON to RPC. Example: - # HTTP | RPC + # This enables an HTTP REST to gRPC mapping as below: + # HTTP | gRPC # -----|----- - # `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub: - # SubMessage(subfield: "foo"))` - # In general, not only fields but also field paths can be referenced - # from a path pattern. Fields mapped to the path pattern cannot be - # repeated and must have a primitive (non-message) type. - # Any fields in the request message which are not bound by the path - # pattern automatically become (optional) HTTP query - # parameters. Assume the following definition of the request message: + # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` + # Any fields in the request message which are not bound by the path template + # automatically become HTTP query parameters if there is no HTTP request body. + # For example: # service Messaging ` # rpc GetMessage(GetMessageRequest) returns (Message) ` - # option (google.api.http).get = "/v1/messages/`message_id`"; + # option (google.api.http) = ` + # get:"/v1/messages/`message_id`" + # `; # ` # ` # message GetMessageRequest ` # message SubMessage ` # string subfield = 1; # ` - # string message_id = 1; // mapped to the URL - # int64 revision = 2; // becomes a parameter - # SubMessage sub = 3; // `sub.subfield` becomes a parameter + # string message_id = 1; // Mapped to URL path. + # int64 revision = 2; // Mapped to URL query parameter `revision`. + # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. # ` # This enables a HTTP JSON to RPC mapping as below: - # HTTP | RPC + # HTTP | gRPC # -----|----- # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: # "123456" revision: 2 sub: SubMessage(subfield: "foo"))` - # Note that fields which are mapped to HTTP parameters must have a - # primitive type or a repeated primitive type. Message types are not - # allowed. In the case of a repeated type, the parameter can be - # repeated in the URL, as in `...?param=A¶m=B`. - # For HTTP method kinds which allow a request body, the `body` field + # Note that fields which are mapped to URL query parameters must have a + # primitive type or a repeated primitive type or a non-repeated message type. + # In the case of a repeated type, the parameter can be repeated in the URL + # as `...?param=A¶m=B`. In the case of a message type, each field of the + # message is mapped to a separate parameter, such as + # `...?foo.a=A&foo.b=B&foo.c=C`. + # For HTTP methods that allow a request body, the `body` field # specifies the mapping. Consider a REST update method on the # message resource collection: # service Messaging ` # rpc UpdateMessage(UpdateMessageRequest) returns (Message) ` # option (google.api.http) = ` - # put: "/v1/messages/`message_id`" + # patch: "/v1/messages/`message_id`" # body: "message" # `; # ` @@ -1326,9 +1326,9 @@ module Google # The following HTTP JSON to RPC mapping is enabled, where the # representation of the JSON in the request body is determined by # protos JSON encoding: - # HTTP | RPC + # HTTP | gRPC # -----|----- - # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " + # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # 123456" message ` text: "Hi!" `)` # The special name `*` can be used in the body mapping to define that # every field not bound by the path template should be mapped to the @@ -1337,7 +1337,7 @@ module Google # service Messaging ` # rpc UpdateMessage(Message) returns (Message) ` # option (google.api.http) = ` - # put: "/v1/messages/`message_id`" + # patch: "/v1/messages/`message_id`" # body: "*" # `; # ` @@ -1347,13 +1347,13 @@ module Google # string text = 2; # ` # The following HTTP JSON to RPC mapping is enabled: - # HTTP | RPC + # HTTP | gRPC # -----|----- - # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " + # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # 123456" text: "Hi!")` # Note that when using `*` in the body mapping, it is not possible to # have HTTP parameters, as all fields not bound by the path end in - # the body. This makes this option more rarely used in practice of + # the body. This makes this option more rarely used in practice when # defining REST APIs. The common usage of `*` is in custom methods # which don't use the URL at all for transferring data. # It is possible to define multiple HTTP methods for one RPC by using @@ -1372,56 +1372,96 @@ module Google # string message_id = 1; # string user_id = 2; # ` - # This enables the following two alternative HTTP JSON to RPC - # mappings: - # HTTP | RPC + # This enables the following two alternative HTTP JSON to RPC mappings: + # HTTP | gRPC # -----|----- # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: " # 123456")` - # # Rules for HTTP mapping - # The rules for mapping HTTP path, query parameters, and body fields - # to the request message are as follows: - # 1. The `body` field specifies either `*` or a field path, or is - # omitted. If omitted, it indicates there is no HTTP request body. - # 2. Leaf fields (recursive expansion of nested messages in the - # request) can be classified into three types: - # (a) Matched in the URL template. - # (b) Covered by body (if body is `*`, everything except (a) fields; - # else everything under the body field) - # (c) All other fields. - # 3. URL query parameters found in the HTTP request are mapped to (c) fields. - # 4. Any body sent with an HTTP request can contain only (b) fields. - # The syntax of the path template is as follows: + # ## Rules for HTTP mapping + # 1. Leaf request fields (recursive expansion nested messages in the request + # message) are classified into three categories: + # - Fields referred by the path template. They are passed via the URL path. + # - Fields referred by the HttpRule.body. They are passed via the HTTP + # request body. + # - All other fields are passed via the URL query parameters, and the + # parameter name is the field path in the request message. A repeated + # field can be represented as multiple query parameters under the same + # name. + # 2. If HttpRule.body is "*", there is no URL query parameter, all fields + # are passed via URL path and HTTP request body. + # 3. If HttpRule.body is omitted, there is no HTTP request body, all + # fields are passed via URL path and URL query parameters. + # ### Path template syntax # Template = "/" Segments [ Verb ] ; # Segments = Segment ` "/" Segment ` ; # Segment = "*" | "**" | LITERAL | Variable ; # Variable = "`" FieldPath [ "=" Segments ] "`" ; # FieldPath = IDENT ` "." IDENT ` ; # Verb = ":" LITERAL ; - # The syntax `*` matches a single path segment. The syntax `**` matches zero - # or more path segments, which must be the last part of the path except the - # `Verb`. The syntax `LITERAL` matches literal text in the path. + # The syntax `*` matches a single URL path segment. The syntax `**` matches + # zero or more URL path segments, which must be the last part of the URL path + # except the `Verb`. # The syntax `Variable` matches part of the URL path as specified by its # template. A variable template must not contain other variables. If a variable # matches a single path segment, its template may be omitted, e.g. ``var`` # is equivalent to ``var=*``. + # The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` + # contains any reserved character, such characters should be percent-encoded + # before the matching. # If a variable contains exactly one path segment, such as `"`var`"` or - # `"`var=*`"`, when such a variable is expanded into a URL path, all characters - # except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the - # Discovery Document as ``var``. - # If a variable contains one or more path segments, such as `"`var=foo/*`"` - # or `"`var=**`"`, when such a variable is expanded into a URL path, all - # characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables - # show up in the Discovery Document as ``+var``. - # NOTE: While the single segment variable matches the semantics of - # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 - # Simple String Expansion, the multi segment variable **does not** match - # RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion + # `"`var=*`"`, when such a variable is expanded into a URL path on the client + # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The + # server side does the reverse decoding. Such variables show up in the + # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) + # as ``var``. + # If a variable contains multiple path segments, such as `"`var=foo/*`"` + # or `"`var=**`"`, when such a variable is expanded into a URL path on the + # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. + # The server side does the reverse decoding, except "%2F" and "%2f" are left + # unchanged. Such variables show up in the + # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) + # as ``+var``. + # ## Using gRPC API Service Configuration + # gRPC API Service Configuration (service config) is a configuration language + # for configuring a gRPC service to become a user-facing product. The + # service config is simply the YAML representation of the `google.api.Service` + # proto message. + # As an alternative to annotating your proto file, you can configure gRPC + # transcoding in your service config YAML files. You do this by specifying a + # `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same + # effect as the proto annotation. This can be particularly useful if you + # have a proto that is reused in multiple services. Note that any transcoding + # specified in the service config will override any matching transcoding + # configuration in the proto. + # Example: + # http: + # rules: + # # Selects a gRPC method and applies HttpRule to it. + # - selector: example.v1.Messaging.GetMessage + # get: /v1/messages/`message_id`/`sub.subfield` + # ## Special notes + # When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the + # proto to JSON conversion must follow the [proto3 + # specification](https://developers.google.com/protocol-buffers/docs/proto3#json) + # . + # While the single segment variable follows the semantics of + # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String + # Expansion, the multi segment variable **does not** follow RFC 6570 Section + # 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion # does not expand special characters like `?` and `#`, which would lead - # to invalid URLs. - # NOTE: the field paths in variables and in the `body` must not refer to - # repeated fields or map fields. + # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding + # for multi segment variables. + # The path variables **must not** refer to any repeated or mapped field, + # because client libraries are not capable of handling such variable expansion. + # The path variables **must not** capture the leading "/" character. The reason + # is that the most common use case "`var`" does not capture the leading "/" + # character. For consistency, all path variables must share the same behavior. + # Repeated message fields must not be mapped to URL query parameters, because + # no client library can support such complicated mapping. + # If an API needs to use a JSON array for request or response body, it can map + # the request or response body to a repeated field. However, some gRPC + # Transcoding implementations may not support this feature. class HttpRule include Google::Apis::Core::Hashable @@ -1440,10 +1480,11 @@ module Google # @return [Array] attr_accessor :authorizations - # The name of the request field whose value is mapped to the HTTP body, or - # `*` for mapping all fields not captured by the path pattern to the HTTP - # body. NOTE: the referred field must not be a repeated field and must be - # present at the top-level of request message type. + # The name of the request field whose value is mapped to the HTTP request + # body, or `*` for mapping all request fields not captured by the path + # pattern to the HTTP body, or omitted for not having any HTTP request body. + # NOTE: the referred field must be present at the top-level of the request + # message type. # Corresponds to the JSON property `body` # @return [String] attr_accessor :body @@ -1453,12 +1494,13 @@ module Google # @return [Google::Apis::ServiceconsumermanagementV1::CustomHttpPattern] attr_accessor :custom - # Used for deleting a resource. + # Maps to HTTP DELETE. Used for deleting a resource. # Corresponds to the JSON property `delete` # @return [String] attr_accessor :delete - # Used for listing and getting information about resources. + # Maps to HTTP GET. Used for listing and getting information about + # resources. # Corresponds to the JSON property `get` # @return [String] attr_accessor :get @@ -1479,24 +1521,26 @@ module Google # @return [Google::Apis::ServiceconsumermanagementV1::MediaUpload] attr_accessor :media_upload - # Used for updating a resource. + # Maps to HTTP PATCH. Used for updating a resource. # Corresponds to the JSON property `patch` # @return [String] attr_accessor :patch - # Used for creating a resource. + # Maps to HTTP POST. Used for creating a resource or performing an action. # Corresponds to the JSON property `post` # @return [String] attr_accessor :post - # Used for updating a resource. + # Maps to HTTP PUT. Used for replacing a resource. # Corresponds to the JSON property `put` # @return [String] attr_accessor :put # Optional. The name of the response field whose value is mapped to the HTTP - # body of response. Other response fields are ignored. When - # not set, the response message will be used as HTTP body of response. + # response body. When omitted, the entire response message will be used + # as the HTTP response body. + # NOTE: The referred field must be present at the top-level of the response + # message type. # Corresponds to the JSON property `responseBody` # @return [String] attr_accessor :response_body @@ -1539,7 +1583,7 @@ module Google # @return [String] attr_accessor :rest_method_name - # Selects methods to which this rule applies. + # Selects a method to which this rule applies. # Refer to selector for syntax details. # Corresponds to the JSON property `selector` # @return [String] diff --git a/generated/google/apis/serviceusage_v1.rb b/generated/google/apis/serviceusage_v1.rb index 34b4e4d1a..bd499347e 100644 --- a/generated/google/apis/serviceusage_v1.rb +++ b/generated/google/apis/serviceusage_v1.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/service-usage/ module ServiceusageV1 VERSION = 'V1' - REVISION = '20180820' + REVISION = '20180908' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/serviceusage_v1/classes.rb b/generated/google/apis/serviceusage_v1/classes.rb index aa1b3c7e7..673efbdf9 100644 --- a/generated/google/apis/serviceusage_v1/classes.rb +++ b/generated/google/apis/serviceusage_v1/classes.rb @@ -1999,79 +1999,79 @@ module Google end end - # `HttpRule` defines the mapping of an RPC method to one or more HTTP - # REST API methods. The mapping specifies how different portions of the RPC - # request message are mapped to URL path, URL query parameters, and - # HTTP request body. The mapping is typically specified as an - # `google.api.http` annotation on the RPC method, - # see "google/api/annotations.proto" for details. - # The mapping consists of a field specifying the path template and - # method kind. The path template can refer to fields in the request - # message, as in the example below which describes a REST GET - # operation on a resource collection of messages: + # # gRPC Transcoding + # gRPC Transcoding is a feature for mapping between a gRPC method and one or + # more HTTP REST endpoints. It allows developers to build a single API service + # that supports both gRPC APIs and REST APIs. Many systems, including [Google + # APIs](https://github.com/googleapis/googleapis), + # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC + # Gateway](https://github.com/grpc-ecosystem/grpc-gateway), + # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature + # and use it for large scale production services. + # `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies + # how different portions of the gRPC request message are mapped to the URL + # path, URL query parameters, and HTTP request body. It also controls how the + # gRPC response message is mapped to the HTTP response body. `HttpRule` is + # typically specified as an `google.api.http` annotation on the gRPC method. + # Each mapping specifies a URL path template and an HTTP method. The path + # template may refer to one or more fields in the gRPC request message, as long + # as each field is a non-repeated field with a primitive (non-message) type. + # The path template controls how fields of the request message are mapped to + # the URL path. + # Example: # service Messaging ` # rpc GetMessage(GetMessageRequest) returns (Message) ` - # option (google.api.http).get = "/v1/messages/`message_id`/`sub. - # subfield`"; + # option (google.api.http) = ` + # get: "/v1/`name=messages/*"`" + # `; # ` # ` # message GetMessageRequest ` - # message SubMessage ` - # string subfield = 1; - # ` - # string message_id = 1; // mapped to the URL - # SubMessage sub = 2; // `sub.subfield` is url-mapped + # string name = 1; // Mapped to URL path. # ` # message Message ` - # string text = 1; // content of the resource + # string text = 1; // The resource content. # ` - # The same http annotation can alternatively be expressed inside the - # `GRPC API Configuration` YAML file. - # http: - # rules: - # - selector: .Messaging.GetMessage - # get: /v1/messages/`message_id`/`sub.subfield` - # This definition enables an automatic, bidrectional mapping of HTTP - # JSON to RPC. Example: - # HTTP | RPC + # This enables an HTTP REST to gRPC mapping as below: + # HTTP | gRPC # -----|----- - # `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub: - # SubMessage(subfield: "foo"))` - # In general, not only fields but also field paths can be referenced - # from a path pattern. Fields mapped to the path pattern cannot be - # repeated and must have a primitive (non-message) type. - # Any fields in the request message which are not bound by the path - # pattern automatically become (optional) HTTP query - # parameters. Assume the following definition of the request message: + # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` + # Any fields in the request message which are not bound by the path template + # automatically become HTTP query parameters if there is no HTTP request body. + # For example: # service Messaging ` # rpc GetMessage(GetMessageRequest) returns (Message) ` - # option (google.api.http).get = "/v1/messages/`message_id`"; + # option (google.api.http) = ` + # get:"/v1/messages/`message_id`" + # `; # ` # ` # message GetMessageRequest ` # message SubMessage ` # string subfield = 1; # ` - # string message_id = 1; // mapped to the URL - # int64 revision = 2; // becomes a parameter - # SubMessage sub = 3; // `sub.subfield` becomes a parameter + # string message_id = 1; // Mapped to URL path. + # int64 revision = 2; // Mapped to URL query parameter `revision`. + # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. # ` # This enables a HTTP JSON to RPC mapping as below: - # HTTP | RPC + # HTTP | gRPC # -----|----- # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: # "123456" revision: 2 sub: SubMessage(subfield: "foo"))` - # Note that fields which are mapped to HTTP parameters must have a - # primitive type or a repeated primitive type. Message types are not - # allowed. In the case of a repeated type, the parameter can be - # repeated in the URL, as in `...?param=A¶m=B`. - # For HTTP method kinds which allow a request body, the `body` field + # Note that fields which are mapped to URL query parameters must have a + # primitive type or a repeated primitive type or a non-repeated message type. + # In the case of a repeated type, the parameter can be repeated in the URL + # as `...?param=A¶m=B`. In the case of a message type, each field of the + # message is mapped to a separate parameter, such as + # `...?foo.a=A&foo.b=B&foo.c=C`. + # For HTTP methods that allow a request body, the `body` field # specifies the mapping. Consider a REST update method on the # message resource collection: # service Messaging ` # rpc UpdateMessage(UpdateMessageRequest) returns (Message) ` # option (google.api.http) = ` - # put: "/v1/messages/`message_id`" + # patch: "/v1/messages/`message_id`" # body: "message" # `; # ` @@ -2083,9 +2083,9 @@ module Google # The following HTTP JSON to RPC mapping is enabled, where the # representation of the JSON in the request body is determined by # protos JSON encoding: - # HTTP | RPC + # HTTP | gRPC # -----|----- - # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " + # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # 123456" message ` text: "Hi!" `)` # The special name `*` can be used in the body mapping to define that # every field not bound by the path template should be mapped to the @@ -2094,7 +2094,7 @@ module Google # service Messaging ` # rpc UpdateMessage(Message) returns (Message) ` # option (google.api.http) = ` - # put: "/v1/messages/`message_id`" + # patch: "/v1/messages/`message_id`" # body: "*" # `; # ` @@ -2104,13 +2104,13 @@ module Google # string text = 2; # ` # The following HTTP JSON to RPC mapping is enabled: - # HTTP | RPC + # HTTP | gRPC # -----|----- - # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " + # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # 123456" text: "Hi!")` # Note that when using `*` in the body mapping, it is not possible to # have HTTP parameters, as all fields not bound by the path end in - # the body. This makes this option more rarely used in practice of + # the body. This makes this option more rarely used in practice when # defining REST APIs. The common usage of `*` is in custom methods # which don't use the URL at all for transferring data. # It is possible to define multiple HTTP methods for one RPC by using @@ -2129,56 +2129,96 @@ module Google # string message_id = 1; # string user_id = 2; # ` - # This enables the following two alternative HTTP JSON to RPC - # mappings: - # HTTP | RPC + # This enables the following two alternative HTTP JSON to RPC mappings: + # HTTP | gRPC # -----|----- # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: " # 123456")` - # # Rules for HTTP mapping - # The rules for mapping HTTP path, query parameters, and body fields - # to the request message are as follows: - # 1. The `body` field specifies either `*` or a field path, or is - # omitted. If omitted, it indicates there is no HTTP request body. - # 2. Leaf fields (recursive expansion of nested messages in the - # request) can be classified into three types: - # (a) Matched in the URL template. - # (b) Covered by body (if body is `*`, everything except (a) fields; - # else everything under the body field) - # (c) All other fields. - # 3. URL query parameters found in the HTTP request are mapped to (c) fields. - # 4. Any body sent with an HTTP request can contain only (b) fields. - # The syntax of the path template is as follows: + # ## Rules for HTTP mapping + # 1. Leaf request fields (recursive expansion nested messages in the request + # message) are classified into three categories: + # - Fields referred by the path template. They are passed via the URL path. + # - Fields referred by the HttpRule.body. They are passed via the HTTP + # request body. + # - All other fields are passed via the URL query parameters, and the + # parameter name is the field path in the request message. A repeated + # field can be represented as multiple query parameters under the same + # name. + # 2. If HttpRule.body is "*", there is no URL query parameter, all fields + # are passed via URL path and HTTP request body. + # 3. If HttpRule.body is omitted, there is no HTTP request body, all + # fields are passed via URL path and URL query parameters. + # ### Path template syntax # Template = "/" Segments [ Verb ] ; # Segments = Segment ` "/" Segment ` ; # Segment = "*" | "**" | LITERAL | Variable ; # Variable = "`" FieldPath [ "=" Segments ] "`" ; # FieldPath = IDENT ` "." IDENT ` ; # Verb = ":" LITERAL ; - # The syntax `*` matches a single path segment. The syntax `**` matches zero - # or more path segments, which must be the last part of the path except the - # `Verb`. The syntax `LITERAL` matches literal text in the path. + # The syntax `*` matches a single URL path segment. The syntax `**` matches + # zero or more URL path segments, which must be the last part of the URL path + # except the `Verb`. # The syntax `Variable` matches part of the URL path as specified by its # template. A variable template must not contain other variables. If a variable # matches a single path segment, its template may be omitted, e.g. ``var`` # is equivalent to ``var=*``. + # The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` + # contains any reserved character, such characters should be percent-encoded + # before the matching. # If a variable contains exactly one path segment, such as `"`var`"` or - # `"`var=*`"`, when such a variable is expanded into a URL path, all characters - # except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the - # Discovery Document as ``var``. - # If a variable contains one or more path segments, such as `"`var=foo/*`"` - # or `"`var=**`"`, when such a variable is expanded into a URL path, all - # characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables - # show up in the Discovery Document as ``+var``. - # NOTE: While the single segment variable matches the semantics of - # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 - # Simple String Expansion, the multi segment variable **does not** match - # RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion + # `"`var=*`"`, when such a variable is expanded into a URL path on the client + # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The + # server side does the reverse decoding. Such variables show up in the + # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) + # as ``var``. + # If a variable contains multiple path segments, such as `"`var=foo/*`"` + # or `"`var=**`"`, when such a variable is expanded into a URL path on the + # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. + # The server side does the reverse decoding, except "%2F" and "%2f" are left + # unchanged. Such variables show up in the + # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) + # as ``+var``. + # ## Using gRPC API Service Configuration + # gRPC API Service Configuration (service config) is a configuration language + # for configuring a gRPC service to become a user-facing product. The + # service config is simply the YAML representation of the `google.api.Service` + # proto message. + # As an alternative to annotating your proto file, you can configure gRPC + # transcoding in your service config YAML files. You do this by specifying a + # `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same + # effect as the proto annotation. This can be particularly useful if you + # have a proto that is reused in multiple services. Note that any transcoding + # specified in the service config will override any matching transcoding + # configuration in the proto. + # Example: + # http: + # rules: + # # Selects a gRPC method and applies HttpRule to it. + # - selector: example.v1.Messaging.GetMessage + # get: /v1/messages/`message_id`/`sub.subfield` + # ## Special notes + # When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the + # proto to JSON conversion must follow the [proto3 + # specification](https://developers.google.com/protocol-buffers/docs/proto3#json) + # . + # While the single segment variable follows the semantics of + # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String + # Expansion, the multi segment variable **does not** follow RFC 6570 Section + # 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion # does not expand special characters like `?` and `#`, which would lead - # to invalid URLs. - # NOTE: the field paths in variables and in the `body` must not refer to - # repeated fields or map fields. + # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding + # for multi segment variables. + # The path variables **must not** refer to any repeated or mapped field, + # because client libraries are not capable of handling such variable expansion. + # The path variables **must not** capture the leading "/" character. The reason + # is that the most common use case "`var`" does not capture the leading "/" + # character. For consistency, all path variables must share the same behavior. + # Repeated message fields must not be mapped to URL query parameters, because + # no client library can support such complicated mapping. + # If an API needs to use a JSON array for request or response body, it can map + # the request or response body to a repeated field. However, some gRPC + # Transcoding implementations may not support this feature. class HttpRule include Google::Apis::Core::Hashable @@ -2197,10 +2237,11 @@ module Google # @return [Array] attr_accessor :authorizations - # The name of the request field whose value is mapped to the HTTP body, or - # `*` for mapping all fields not captured by the path pattern to the HTTP - # body. NOTE: the referred field must not be a repeated field and must be - # present at the top-level of request message type. + # The name of the request field whose value is mapped to the HTTP request + # body, or `*` for mapping all request fields not captured by the path + # pattern to the HTTP body, or omitted for not having any HTTP request body. + # NOTE: the referred field must be present at the top-level of the request + # message type. # Corresponds to the JSON property `body` # @return [String] attr_accessor :body @@ -2210,12 +2251,13 @@ module Google # @return [Google::Apis::ServiceusageV1::CustomHttpPattern] attr_accessor :custom - # Used for deleting a resource. + # Maps to HTTP DELETE. Used for deleting a resource. # Corresponds to the JSON property `delete` # @return [String] attr_accessor :delete - # Used for listing and getting information about resources. + # Maps to HTTP GET. Used for listing and getting information about + # resources. # Corresponds to the JSON property `get` # @return [String] attr_accessor :get @@ -2236,24 +2278,26 @@ module Google # @return [Google::Apis::ServiceusageV1::MediaUpload] attr_accessor :media_upload - # Used for updating a resource. + # Maps to HTTP PATCH. Used for updating a resource. # Corresponds to the JSON property `patch` # @return [String] attr_accessor :patch - # Used for creating a resource. + # Maps to HTTP POST. Used for creating a resource or performing an action. # Corresponds to the JSON property `post` # @return [String] attr_accessor :post - # Used for updating a resource. + # Maps to HTTP PUT. Used for replacing a resource. # Corresponds to the JSON property `put` # @return [String] attr_accessor :put # Optional. The name of the response field whose value is mapped to the HTTP - # body of response. Other response fields are ignored. When - # not set, the response message will be used as HTTP body of response. + # response body. When omitted, the entire response message will be used + # as the HTTP response body. + # NOTE: The referred field must be present at the top-level of the response + # message type. # Corresponds to the JSON property `responseBody` # @return [String] attr_accessor :response_body @@ -2296,7 +2340,7 @@ module Google # @return [String] attr_accessor :rest_method_name - # Selects methods to which this rule applies. + # Selects a method to which this rule applies. # Refer to selector for syntax details. # Corresponds to the JSON property `selector` # @return [String] diff --git a/generated/google/apis/serviceusage_v1beta1.rb b/generated/google/apis/serviceusage_v1beta1.rb index c125d0fff..e4b4d731c 100644 --- a/generated/google/apis/serviceusage_v1beta1.rb +++ b/generated/google/apis/serviceusage_v1beta1.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/service-usage/ module ServiceusageV1beta1 VERSION = 'V1beta1' - REVISION = '20180820' + REVISION = '20180908' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/serviceusage_v1beta1/classes.rb b/generated/google/apis/serviceusage_v1beta1/classes.rb index e01cd0b17..de24186a3 100644 --- a/generated/google/apis/serviceusage_v1beta1/classes.rb +++ b/generated/google/apis/serviceusage_v1beta1/classes.rb @@ -1975,79 +1975,79 @@ module Google end end - # `HttpRule` defines the mapping of an RPC method to one or more HTTP - # REST API methods. The mapping specifies how different portions of the RPC - # request message are mapped to URL path, URL query parameters, and - # HTTP request body. The mapping is typically specified as an - # `google.api.http` annotation on the RPC method, - # see "google/api/annotations.proto" for details. - # The mapping consists of a field specifying the path template and - # method kind. The path template can refer to fields in the request - # message, as in the example below which describes a REST GET - # operation on a resource collection of messages: + # # gRPC Transcoding + # gRPC Transcoding is a feature for mapping between a gRPC method and one or + # more HTTP REST endpoints. It allows developers to build a single API service + # that supports both gRPC APIs and REST APIs. Many systems, including [Google + # APIs](https://github.com/googleapis/googleapis), + # [Cloud Endpoints](https://cloud.google.com/endpoints), [gRPC + # Gateway](https://github.com/grpc-ecosystem/grpc-gateway), + # and [Envoy](https://github.com/envoyproxy/envoy) proxy support this feature + # and use it for large scale production services. + # `HttpRule` defines the schema of the gRPC/REST mapping. The mapping specifies + # how different portions of the gRPC request message are mapped to the URL + # path, URL query parameters, and HTTP request body. It also controls how the + # gRPC response message is mapped to the HTTP response body. `HttpRule` is + # typically specified as an `google.api.http` annotation on the gRPC method. + # Each mapping specifies a URL path template and an HTTP method. The path + # template may refer to one or more fields in the gRPC request message, as long + # as each field is a non-repeated field with a primitive (non-message) type. + # The path template controls how fields of the request message are mapped to + # the URL path. + # Example: # service Messaging ` # rpc GetMessage(GetMessageRequest) returns (Message) ` - # option (google.api.http).get = "/v1/messages/`message_id`/`sub. - # subfield`"; + # option (google.api.http) = ` + # get: "/v1/`name=messages/*"`" + # `; # ` # ` # message GetMessageRequest ` - # message SubMessage ` - # string subfield = 1; - # ` - # string message_id = 1; // mapped to the URL - # SubMessage sub = 2; // `sub.subfield` is url-mapped + # string name = 1; // Mapped to URL path. # ` # message Message ` - # string text = 1; // content of the resource + # string text = 1; // The resource content. # ` - # The same http annotation can alternatively be expressed inside the - # `GRPC API Configuration` YAML file. - # http: - # rules: - # - selector: .Messaging.GetMessage - # get: /v1/messages/`message_id`/`sub.subfield` - # This definition enables an automatic, bidrectional mapping of HTTP - # JSON to RPC. Example: - # HTTP | RPC + # This enables an HTTP REST to gRPC mapping as below: + # HTTP | gRPC # -----|----- - # `GET /v1/messages/123456/foo` | `GetMessage(message_id: "123456" sub: - # SubMessage(subfield: "foo"))` - # In general, not only fields but also field paths can be referenced - # from a path pattern. Fields mapped to the path pattern cannot be - # repeated and must have a primitive (non-message) type. - # Any fields in the request message which are not bound by the path - # pattern automatically become (optional) HTTP query - # parameters. Assume the following definition of the request message: + # `GET /v1/messages/123456` | `GetMessage(name: "messages/123456")` + # Any fields in the request message which are not bound by the path template + # automatically become HTTP query parameters if there is no HTTP request body. + # For example: # service Messaging ` # rpc GetMessage(GetMessageRequest) returns (Message) ` - # option (google.api.http).get = "/v1/messages/`message_id`"; + # option (google.api.http) = ` + # get:"/v1/messages/`message_id`" + # `; # ` # ` # message GetMessageRequest ` # message SubMessage ` # string subfield = 1; # ` - # string message_id = 1; // mapped to the URL - # int64 revision = 2; // becomes a parameter - # SubMessage sub = 3; // `sub.subfield` becomes a parameter + # string message_id = 1; // Mapped to URL path. + # int64 revision = 2; // Mapped to URL query parameter `revision`. + # SubMessage sub = 3; // Mapped to URL query parameter `sub.subfield`. # ` # This enables a HTTP JSON to RPC mapping as below: - # HTTP | RPC + # HTTP | gRPC # -----|----- # `GET /v1/messages/123456?revision=2&sub.subfield=foo` | `GetMessage(message_id: # "123456" revision: 2 sub: SubMessage(subfield: "foo"))` - # Note that fields which are mapped to HTTP parameters must have a - # primitive type or a repeated primitive type. Message types are not - # allowed. In the case of a repeated type, the parameter can be - # repeated in the URL, as in `...?param=A¶m=B`. - # For HTTP method kinds which allow a request body, the `body` field + # Note that fields which are mapped to URL query parameters must have a + # primitive type or a repeated primitive type or a non-repeated message type. + # In the case of a repeated type, the parameter can be repeated in the URL + # as `...?param=A¶m=B`. In the case of a message type, each field of the + # message is mapped to a separate parameter, such as + # `...?foo.a=A&foo.b=B&foo.c=C`. + # For HTTP methods that allow a request body, the `body` field # specifies the mapping. Consider a REST update method on the # message resource collection: # service Messaging ` # rpc UpdateMessage(UpdateMessageRequest) returns (Message) ` # option (google.api.http) = ` - # put: "/v1/messages/`message_id`" + # patch: "/v1/messages/`message_id`" # body: "message" # `; # ` @@ -2059,9 +2059,9 @@ module Google # The following HTTP JSON to RPC mapping is enabled, where the # representation of the JSON in the request body is determined by # protos JSON encoding: - # HTTP | RPC + # HTTP | gRPC # -----|----- - # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " + # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # 123456" message ` text: "Hi!" `)` # The special name `*` can be used in the body mapping to define that # every field not bound by the path template should be mapped to the @@ -2070,7 +2070,7 @@ module Google # service Messaging ` # rpc UpdateMessage(Message) returns (Message) ` # option (google.api.http) = ` - # put: "/v1/messages/`message_id`" + # patch: "/v1/messages/`message_id`" # body: "*" # `; # ` @@ -2080,13 +2080,13 @@ module Google # string text = 2; # ` # The following HTTP JSON to RPC mapping is enabled: - # HTTP | RPC + # HTTP | gRPC # -----|----- - # `PUT /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " + # `PATCH /v1/messages/123456 ` "text": "Hi!" `` | `UpdateMessage(message_id: " # 123456" text: "Hi!")` # Note that when using `*` in the body mapping, it is not possible to # have HTTP parameters, as all fields not bound by the path end in - # the body. This makes this option more rarely used in practice of + # the body. This makes this option more rarely used in practice when # defining REST APIs. The common usage of `*` is in custom methods # which don't use the URL at all for transferring data. # It is possible to define multiple HTTP methods for one RPC by using @@ -2105,56 +2105,96 @@ module Google # string message_id = 1; # string user_id = 2; # ` - # This enables the following two alternative HTTP JSON to RPC - # mappings: - # HTTP | RPC + # This enables the following two alternative HTTP JSON to RPC mappings: + # HTTP | gRPC # -----|----- # `GET /v1/messages/123456` | `GetMessage(message_id: "123456")` # `GET /v1/users/me/messages/123456` | `GetMessage(user_id: "me" message_id: " # 123456")` - # # Rules for HTTP mapping - # The rules for mapping HTTP path, query parameters, and body fields - # to the request message are as follows: - # 1. The `body` field specifies either `*` or a field path, or is - # omitted. If omitted, it indicates there is no HTTP request body. - # 2. Leaf fields (recursive expansion of nested messages in the - # request) can be classified into three types: - # (a) Matched in the URL template. - # (b) Covered by body (if body is `*`, everything except (a) fields; - # else everything under the body field) - # (c) All other fields. - # 3. URL query parameters found in the HTTP request are mapped to (c) fields. - # 4. Any body sent with an HTTP request can contain only (b) fields. - # The syntax of the path template is as follows: + # ## Rules for HTTP mapping + # 1. Leaf request fields (recursive expansion nested messages in the request + # message) are classified into three categories: + # - Fields referred by the path template. They are passed via the URL path. + # - Fields referred by the HttpRule.body. They are passed via the HTTP + # request body. + # - All other fields are passed via the URL query parameters, and the + # parameter name is the field path in the request message. A repeated + # field can be represented as multiple query parameters under the same + # name. + # 2. If HttpRule.body is "*", there is no URL query parameter, all fields + # are passed via URL path and HTTP request body. + # 3. If HttpRule.body is omitted, there is no HTTP request body, all + # fields are passed via URL path and URL query parameters. + # ### Path template syntax # Template = "/" Segments [ Verb ] ; # Segments = Segment ` "/" Segment ` ; # Segment = "*" | "**" | LITERAL | Variable ; # Variable = "`" FieldPath [ "=" Segments ] "`" ; # FieldPath = IDENT ` "." IDENT ` ; # Verb = ":" LITERAL ; - # The syntax `*` matches a single path segment. The syntax `**` matches zero - # or more path segments, which must be the last part of the path except the - # `Verb`. The syntax `LITERAL` matches literal text in the path. + # The syntax `*` matches a single URL path segment. The syntax `**` matches + # zero or more URL path segments, which must be the last part of the URL path + # except the `Verb`. # The syntax `Variable` matches part of the URL path as specified by its # template. A variable template must not contain other variables. If a variable # matches a single path segment, its template may be omitted, e.g. ``var`` # is equivalent to ``var=*``. + # The syntax `LITERAL` matches literal text in the URL path. If the `LITERAL` + # contains any reserved character, such characters should be percent-encoded + # before the matching. # If a variable contains exactly one path segment, such as `"`var`"` or - # `"`var=*`"`, when such a variable is expanded into a URL path, all characters - # except `[-_.~0-9a-zA-Z]` are percent-encoded. Such variables show up in the - # Discovery Document as ``var``. - # If a variable contains one or more path segments, such as `"`var=foo/*`"` - # or `"`var=**`"`, when such a variable is expanded into a URL path, all - # characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. Such variables - # show up in the Discovery Document as ``+var``. - # NOTE: While the single segment variable matches the semantics of - # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 - # Simple String Expansion, the multi segment variable **does not** match - # RFC 6570 Reserved Expansion. The reason is that the Reserved Expansion + # `"`var=*`"`, when such a variable is expanded into a URL path on the client + # side, all characters except `[-_.~0-9a-zA-Z]` are percent-encoded. The + # server side does the reverse decoding. Such variables show up in the + # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) + # as ``var``. + # If a variable contains multiple path segments, such as `"`var=foo/*`"` + # or `"`var=**`"`, when such a variable is expanded into a URL path on the + # client side, all characters except `[-_.~/0-9a-zA-Z]` are percent-encoded. + # The server side does the reverse decoding, except "%2F" and "%2f" are left + # unchanged. Such variables show up in the + # [Discovery Document](https://developers.google.com/discovery/v1/reference/apis) + # as ``+var``. + # ## Using gRPC API Service Configuration + # gRPC API Service Configuration (service config) is a configuration language + # for configuring a gRPC service to become a user-facing product. The + # service config is simply the YAML representation of the `google.api.Service` + # proto message. + # As an alternative to annotating your proto file, you can configure gRPC + # transcoding in your service config YAML files. You do this by specifying a + # `HttpRule` that maps the gRPC method to a REST endpoint, achieving the same + # effect as the proto annotation. This can be particularly useful if you + # have a proto that is reused in multiple services. Note that any transcoding + # specified in the service config will override any matching transcoding + # configuration in the proto. + # Example: + # http: + # rules: + # # Selects a gRPC method and applies HttpRule to it. + # - selector: example.v1.Messaging.GetMessage + # get: /v1/messages/`message_id`/`sub.subfield` + # ## Special notes + # When gRPC Transcoding is used to map a gRPC to JSON REST endpoints, the + # proto to JSON conversion must follow the [proto3 + # specification](https://developers.google.com/protocol-buffers/docs/proto3#json) + # . + # While the single segment variable follows the semantics of + # [RFC 6570](https://tools.ietf.org/html/rfc6570) Section 3.2.2 Simple String + # Expansion, the multi segment variable **does not** follow RFC 6570 Section + # 3.2.3 Reserved Expansion. The reason is that the Reserved Expansion # does not expand special characters like `?` and `#`, which would lead - # to invalid URLs. - # NOTE: the field paths in variables and in the `body` must not refer to - # repeated fields or map fields. + # to invalid URLs. As the result, gRPC Transcoding uses a custom encoding + # for multi segment variables. + # The path variables **must not** refer to any repeated or mapped field, + # because client libraries are not capable of handling such variable expansion. + # The path variables **must not** capture the leading "/" character. The reason + # is that the most common use case "`var`" does not capture the leading "/" + # character. For consistency, all path variables must share the same behavior. + # Repeated message fields must not be mapped to URL query parameters, because + # no client library can support such complicated mapping. + # If an API needs to use a JSON array for request or response body, it can map + # the request or response body to a repeated field. However, some gRPC + # Transcoding implementations may not support this feature. class HttpRule include Google::Apis::Core::Hashable @@ -2173,10 +2213,11 @@ module Google # @return [Array] attr_accessor :authorizations - # The name of the request field whose value is mapped to the HTTP body, or - # `*` for mapping all fields not captured by the path pattern to the HTTP - # body. NOTE: the referred field must not be a repeated field and must be - # present at the top-level of request message type. + # The name of the request field whose value is mapped to the HTTP request + # body, or `*` for mapping all request fields not captured by the path + # pattern to the HTTP body, or omitted for not having any HTTP request body. + # NOTE: the referred field must be present at the top-level of the request + # message type. # Corresponds to the JSON property `body` # @return [String] attr_accessor :body @@ -2186,12 +2227,13 @@ module Google # @return [Google::Apis::ServiceusageV1beta1::CustomHttpPattern] attr_accessor :custom - # Used for deleting a resource. + # Maps to HTTP DELETE. Used for deleting a resource. # Corresponds to the JSON property `delete` # @return [String] attr_accessor :delete - # Used for listing and getting information about resources. + # Maps to HTTP GET. Used for listing and getting information about + # resources. # Corresponds to the JSON property `get` # @return [String] attr_accessor :get @@ -2212,24 +2254,26 @@ module Google # @return [Google::Apis::ServiceusageV1beta1::MediaUpload] attr_accessor :media_upload - # Used for updating a resource. + # Maps to HTTP PATCH. Used for updating a resource. # Corresponds to the JSON property `patch` # @return [String] attr_accessor :patch - # Used for creating a resource. + # Maps to HTTP POST. Used for creating a resource or performing an action. # Corresponds to the JSON property `post` # @return [String] attr_accessor :post - # Used for updating a resource. + # Maps to HTTP PUT. Used for replacing a resource. # Corresponds to the JSON property `put` # @return [String] attr_accessor :put # Optional. The name of the response field whose value is mapped to the HTTP - # body of response. Other response fields are ignored. When - # not set, the response message will be used as HTTP body of response. + # response body. When omitted, the entire response message will be used + # as the HTTP response body. + # NOTE: The referred field must be present at the top-level of the response + # message type. # Corresponds to the JSON property `responseBody` # @return [String] attr_accessor :response_body @@ -2272,7 +2316,7 @@ module Google # @return [String] attr_accessor :rest_method_name - # Selects methods to which this rule applies. + # Selects a method to which this rule applies. # Refer to selector for syntax details. # Corresponds to the JSON property `selector` # @return [String] diff --git a/generated/google/apis/speech_v1.rb b/generated/google/apis/speech_v1.rb index 53eec0e3a..07e9de5a9 100644 --- a/generated/google/apis/speech_v1.rb +++ b/generated/google/apis/speech_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/speech-to-text/docs/quickstart-protocol module SpeechV1 VERSION = 'V1' - REVISION = '20180823' + REVISION = '20180911' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/speech_v1/classes.rb b/generated/google/apis/speech_v1/classes.rb index e27cbed8d..cf9825356 100644 --- a/generated/google/apis/speech_v1/classes.rb +++ b/generated/google/apis/speech_v1/classes.rb @@ -22,6 +22,31 @@ module Google module Apis module SpeechV1 + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + # The top-level message sent by the client for the `LongRunningRecognize` # method. class LongRunningRecognizeRequest @@ -191,6 +216,18 @@ module Google class RecognitionConfig include Google::Apis::Core::Hashable + # *Optional* If 'true', adds punctuation to recognition result hypotheses. + # This feature is only available in select languages. Setting this for + # requests in other languages has no effect at all. + # The default 'false' value does not add punctuation to result hypotheses. + # Note: This is currently offered as an experimental service, complimentary + # to all users. In the future this may be exclusively available as a + # premium feature. + # Corresponds to the JSON property `enableAutomaticPunctuation` + # @return [Boolean] + attr_accessor :enable_automatic_punctuation + alias_method :enable_automatic_punctuation?, :enable_automatic_punctuation + # *Optional* If `true`, the top result includes a list of words and # the start and end time offsets (timestamps) for those words. If # `false`, no word-level time offset information is returned. The default is @@ -226,6 +263,42 @@ module Google # @return [Fixnum] attr_accessor :max_alternatives + # *Optional* Which model to select for the given request. Select the model + # best suited to your domain to get best results. If a model is not + # explicitly specified, then we auto-select a model based on the parameters + # in the RecognitionConfig. + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + # + #
ModelDescription
command_and_searchBest for short queries such as voice commands or voice search.
phone_callBest for audio that originated from a phone call (typically + # recorded at an 8khz sampling rate).
videoBest for audio that originated from from video or includes multiple + # speakers. Ideally the audio is recorded at a 16khz or greater + # sampling rate. This is a premium model that costs more than the + # standard rate.
defaultBest for audio that is not one of the specific audio models. + # For example, long-form audio. Ideally the audio is high-fidelity, + # recorded at a 16khz or greater sampling rate.
+ # Corresponds to the JSON property `model` + # @return [String] + attr_accessor :model + # *Optional* If set to `true`, the server will attempt to filter out # profanities, replacing all but the initial character in each filtered word # with asterisks, e.g. "f***". If set to `false` or omitted, profanities @@ -253,19 +326,37 @@ module Google # @return [Array] attr_accessor :speech_contexts + # *Optional* Set to true to use an enhanced model for speech recognition. + # You must also set the `model` field to a valid, enhanced model. If + # `use_enhanced` is set to true and the `model` field is not set, then + # `use_enhanced` is ignored. If `use_enhanced` is true and an enhanced + # version of the specified model does not exist, then the speech is + # recognized using the standard version of the specified model. + # Enhanced speech models require that you opt-in to data logging using + # instructions in the [documentation](/speech-to-text/enable-data-logging). + # If you set `use_enhanced` to true and you have not enabled audio logging, + # then you will receive an error. + # Corresponds to the JSON property `useEnhanced` + # @return [Boolean] + attr_accessor :use_enhanced + alias_method :use_enhanced?, :use_enhanced + def initialize(**args) update!(**args) end # Update properties of this object def update!(**args) + @enable_automatic_punctuation = args[:enable_automatic_punctuation] if args.key?(:enable_automatic_punctuation) @enable_word_time_offsets = args[:enable_word_time_offsets] if args.key?(:enable_word_time_offsets) @encoding = args[:encoding] if args.key?(:encoding) @language_code = args[:language_code] if args.key?(:language_code) @max_alternatives = args[:max_alternatives] if args.key?(:max_alternatives) + @model = args[:model] if args.key?(:model) @profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter) @sample_rate_hertz = args[:sample_rate_hertz] if args.key?(:sample_rate_hertz) @speech_contexts = args[:speech_contexts] if args.key?(:speech_contexts) + @use_enhanced = args[:use_enhanced] if args.key?(:use_enhanced) end end diff --git a/generated/google/apis/speech_v1/representations.rb b/generated/google/apis/speech_v1/representations.rb index e5e699a5d..b9f182db2 100644 --- a/generated/google/apis/speech_v1/representations.rb +++ b/generated/google/apis/speech_v1/representations.rb @@ -22,6 +22,12 @@ module Google module Apis module SpeechV1 + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class LongRunningRecognizeRequest class Representation < Google::Apis::Core::JsonRepresentation; end @@ -88,6 +94,15 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::SpeechV1::Operation, decorator: Google::Apis::SpeechV1::Operation::Representation + + end + end + class LongRunningRecognizeRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -121,14 +136,17 @@ module Google class RecognitionConfig # @private class Representation < Google::Apis::Core::JsonRepresentation + property :enable_automatic_punctuation, as: 'enableAutomaticPunctuation' property :enable_word_time_offsets, as: 'enableWordTimeOffsets' property :encoding, as: 'encoding' property :language_code, as: 'languageCode' property :max_alternatives, as: 'maxAlternatives' + property :model, as: 'model' property :profanity_filter, as: 'profanityFilter' property :sample_rate_hertz, as: 'sampleRateHertz' collection :speech_contexts, as: 'speechContexts', class: Google::Apis::SpeechV1::SpeechContext, decorator: Google::Apis::SpeechV1::SpeechContext::Representation + property :use_enhanced, as: 'useEnhanced' end end diff --git a/generated/google/apis/speech_v1/service.rb b/generated/google/apis/speech_v1/service.rb index df84e3331..e0a201901 100644 --- a/generated/google/apis/speech_v1/service.rb +++ b/generated/google/apis/speech_v1/service.rb @@ -79,6 +79,53 @@ module Google execute_or_queue_command(command, &block) end + # Lists operations that match the specified filter in the request. If the + # server doesn't support this method, it returns `UNIMPLEMENTED`. + # NOTE: the `name` binding allows API services to override the binding + # to use different resource name schemes, such as `users/*/operations`. To + # override the binding, API services can add a binding such as + # `"/v1/`name=users/*`/operations"` to their service configuration. + # For backwards compatibility, the default name includes the operations + # collection id, however overriding users must ensure the name binding + # is the parent resource, without the operations collection id. + # @param [String] filter + # The standard list filter. + # @param [String] name + # The name of the operation's parent resource. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SpeechV1::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SpeechV1::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(filter: nil, name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/operations', options) + command.response_representation = Google::Apis::SpeechV1::ListOperationsResponse::Representation + command.response_class = Google::Apis::SpeechV1::ListOperationsResponse + command.query['filter'] = filter unless filter.nil? + command.query['name'] = name unless name.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Performs asynchronous speech recognition: receive results via the # google.longrunning.Operations interface. Returns either an # `Operation.error` or an `Operation.response` which contains diff --git a/generated/google/apis/speech_v1beta1.rb b/generated/google/apis/speech_v1beta1.rb index 9499684ba..be6dbdb6d 100644 --- a/generated/google/apis/speech_v1beta1.rb +++ b/generated/google/apis/speech_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/speech-to-text/docs/quickstart-protocol module SpeechV1beta1 VERSION = 'V1beta1' - REVISION = '20180629' + REVISION = '20180911' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/speech_v1beta1/classes.rb b/generated/google/apis/speech_v1beta1/classes.rb index f9dff1d19..6ad1d17c1 100644 --- a/generated/google/apis/speech_v1beta1/classes.rb +++ b/generated/google/apis/speech_v1beta1/classes.rb @@ -51,6 +51,31 @@ module Google end end + # The response message for Operations.ListOperations. + class ListOperationsResponse + include Google::Apis::Core::Hashable + + # The standard List next-page token. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of operations that matches the specified filter in the request. + # Corresponds to the JSON property `operations` + # @return [Array] + attr_accessor :operations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @operations = args[:operations] if args.key?(:operations) + end + end + # This resource represents a long-running operation that is the result of a # network API call. class Operation diff --git a/generated/google/apis/speech_v1beta1/representations.rb b/generated/google/apis/speech_v1beta1/representations.rb index c00ab749c..f179bd100 100644 --- a/generated/google/apis/speech_v1beta1/representations.rb +++ b/generated/google/apis/speech_v1beta1/representations.rb @@ -28,6 +28,12 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ListOperationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class Operation class Representation < Google::Apis::Core::JsonRepresentation; end @@ -92,6 +98,15 @@ module Google end end + class ListOperationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :operations, as: 'operations', class: Google::Apis::SpeechV1beta1::Operation, decorator: Google::Apis::SpeechV1beta1::Operation::Representation + + end + end + class Operation # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google/apis/speech_v1beta1/service.rb b/generated/google/apis/speech_v1beta1/service.rb index 0626ef87f..2e9e97cec 100644 --- a/generated/google/apis/speech_v1beta1/service.rb +++ b/generated/google/apis/speech_v1beta1/service.rb @@ -79,6 +79,53 @@ module Google execute_or_queue_command(command, &block) end + # Lists operations that match the specified filter in the request. If the + # server doesn't support this method, it returns `UNIMPLEMENTED`. + # NOTE: the `name` binding allows API services to override the binding + # to use different resource name schemes, such as `users/*/operations`. To + # override the binding, API services can add a binding such as + # `"/v1/`name=users/*`/operations"` to their service configuration. + # For backwards compatibility, the default name includes the operations + # collection id, however overriding users must ensure the name binding + # is the parent resource, without the operations collection id. + # @param [String] filter + # The standard list filter. + # @param [String] name + # The name of the operation's parent resource. + # @param [Fixnum] page_size + # The standard list page size. + # @param [String] page_token + # The standard list page token. + # @param [String] fields + # Selector specifying which fields to include in a partial response. + # @param [String] quota_user + # Available to use for quota purposes for server-side applications. Can be any + # arbitrary string assigned to a user, but should not exceed 40 characters. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::SpeechV1beta1::ListOperationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::SpeechV1beta1::ListOperationsResponse] + # + # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried + # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification + # @raise [Google::Apis::AuthorizationError] Authorization is required + def list_operations(filter: nil, name: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1beta1/operations', options) + command.response_representation = Google::Apis::SpeechV1beta1::ListOperationsResponse::Representation + command.response_class = Google::Apis::SpeechV1beta1::ListOperationsResponse + command.query['filter'] = filter unless filter.nil? + command.query['name'] = name unless name.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Performs asynchronous speech recognition: receive results via the # [google.longrunning.Operations] # (/speech/reference/rest/v1beta1/operations#Operation) diff --git a/generated/google/apis/sqladmin_v1beta4.rb b/generated/google/apis/sqladmin_v1beta4.rb index 5f5b1e7eb..e9d0207d4 100644 --- a/generated/google/apis/sqladmin_v1beta4.rb +++ b/generated/google/apis/sqladmin_v1beta4.rb @@ -20,13 +20,13 @@ module Google module Apis # Cloud SQL Admin API # - # Cloud SQL provides the Cloud SQL Admin API, a REST API for administering your - # instances programmatically. + # Creates and manages Cloud SQL instances, which provide fully managed MySQL or + # PostgreSQL databases. # # @see https://cloud.google.com/sql/docs/reference/latest module SqladminV1beta4 VERSION = 'V1beta4' - REVISION = '20180727' + REVISION = '20180907' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/sqladmin_v1beta4/classes.rb b/generated/google/apis/sqladmin_v1beta4/classes.rb index c7cdf88ec..6f59356c0 100644 --- a/generated/google/apis/sqladmin_v1beta4/classes.rb +++ b/generated/google/apis/sqladmin_v1beta4/classes.rb @@ -108,7 +108,7 @@ module Google end end - # A database instance backup run resource. + # A BackupRun resource. class BackupRun include Google::Apis::Core::Hashable @@ -134,8 +134,8 @@ module Google # @return [Google::Apis::SqladminV1beta4::OperationError] attr_accessor :error - # A unique identifier for this backup run. Note that this is unique only within - # the scope of a particular Cloud SQL instance. + # The identifier for this backup run. Unique only for a specific Cloud SQL + # instance. # Corresponds to the JSON property `id` # @return [Fixnum] attr_accessor :id @@ -298,7 +298,7 @@ module Google end end - # A database resource inside a Cloud SQL instance. + # Represents a SQL database on the Cloud SQL instance. class Database include Google::Apis::Core::Hashable @@ -312,7 +312,7 @@ module Google # @return [String] attr_accessor :collation - # HTTP 1.1 Entity tag for the resource. + # This field is deprecated and will be removed from a future version of the API. # Corresponds to the JSON property `etag` # @return [String] attr_accessor :etag @@ -361,15 +361,14 @@ module Google end end - # MySQL flags for Cloud SQL instances. + # Database flags for Cloud SQL instances. class DatabaseFlags include Google::Apis::Core::Hashable # The name of the flag. These flags are passed at instance startup, so include - # both MySQL server options and MySQL system variables. Flags should be - # specified with underscores, not hyphens. For more information, see Configuring - # MySQL Flags in the Google Cloud SQL documentation, as well as the official - # MySQL documentation for server options and system variables. + # both server options and system variables for MySQL. Flags should be specified + # with underscores, not hyphens. For more information, see Configuring Database + # Flags in the Cloud SQL documentation. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name @@ -395,9 +394,11 @@ module Google class DatabaseInstance include Google::Apis::Core::Hashable - # FIRST_GEN: Basic Cloud SQL instance that runs in a Google-managed container. - # SECOND_GEN: A newer Cloud SQL backend that runs in a Compute Engine VM. - # EXTERNAL: A MySQL server that is not managed by Google. + # FIRST_GEN: First Generation instance. MySQL only. + # SECOND_GEN: Second Generation instance or PostgreSQL instance. + # EXTERNAL: A database server that is not managed by Google. + # This property is read-only; use the tier property in the settings object to + # determine the database type and Second or First Generation. # Corresponds to the JSON property `backendType` # @return [String] attr_accessor :backend_type @@ -409,9 +410,8 @@ module Google # The current disk usage of the instance in bytes. This property has been # deprecated. Users should use the "cloudsql.googleapis.com/database/disk/ - # bytes_used" metric in Cloud Monitoring API instead. Please see https://groups. - # google.com/d/msg/google-cloud-sql-announce/I_7-F9EBhT0/BtvFtdFeAgAJ for - # details. + # bytes_used" metric in Cloud Monitoring API instead. Please see this + # announcement for details. # Corresponds to the JSON property `currentDiskSize` # @return [Fixnum] attr_accessor :current_disk_size @@ -424,7 +424,8 @@ module Google # @return [String] attr_accessor :database_version - # HTTP 1.1 Entity tag for the resource. + # This field is deprecated and will be removed from a future version of the API. + # Use the settings.settingsVersion field instead. # Corresponds to the JSON property `etag` # @return [String] attr_accessor :etag @@ -899,7 +900,7 @@ module Google end end - # A Google Cloud SQL service flag resource. + # A flag resource. class Flag include Google::Apis::Core::Hashable @@ -1869,8 +1870,8 @@ module Google # @return [String] attr_accessor :activation_policy - # The App Engine app IDs that can access this instance. This property is only - # applicable to First Generation instances. + # The App Engine app IDs that can access this instance. First Generation + # instances only. # Corresponds to the JSON property `authorizedGaeApplications` # @return [Array] attr_accessor :authorized_gae_applications @@ -1898,14 +1899,14 @@ module Google attr_accessor :crash_safe_replication_enabled alias_method :crash_safe_replication_enabled?, :crash_safe_replication_enabled - # The size of data disk, in GB. The data disk size minimum is 10GB. Applies only - # to Second Generation instances. + # The size of data disk, in GB. The data disk size minimum is 10GB. Not used for + # First Generation instances. # Corresponds to the JSON property `dataDiskSizeGb` # @return [Fixnum] attr_accessor :data_disk_size_gb - # The type of data disk. Only supported for Second Generation instances. The - # default type is PD_SSD. Applies only to Second Generation instances. + # The type of data disk: PD_SSD (default) or PD_HDD. Not used for First + # Generation instances. # Corresponds to the JSON property `dataDiskType` # @return [String] attr_accessor :data_disk_type @@ -1968,21 +1969,23 @@ module Google attr_accessor :settings_version # Configuration to increase storage size automatically. The default value is - # true. Applies only to Second Generation instances. + # true. Not used for First Generation instances. # Corresponds to the JSON property `storageAutoResize` # @return [Boolean] attr_accessor :storage_auto_resize alias_method :storage_auto_resize?, :storage_auto_resize # The maximum size to which storage capacity can be automatically increased. The - # default value is 0, which specifies that there is no limit. Applies only to - # Second Generation instances. + # default value is 0, which specifies that there is no limit. Not used for First + # Generation instances. # Corresponds to the JSON property `storageAutoResizeLimit` # @return [Fixnum] attr_accessor :storage_auto_resize_limit - # The tier of service for this instance, for example D1, D2. For more - # information, see pricing. + # The tier (or machine type) for this instance, for example db-n1-standard-1 ( + # MySQL instances) or db-custom-1-3840 (PostgreSQL instances). For MySQL + # instances, this property determines whether the instance is First or Second + # Generation. For more information, see Instance Settings. # Corresponds to the JSON property `tier` # @return [String] attr_accessor :tier @@ -2319,7 +2322,7 @@ module Google class User include Google::Apis::Core::Hashable - # HTTP 1.1 Entity tag for the resource. + # This field is deprecated and will be removed from a future version of the API. # Corresponds to the JSON property `etag` # @return [String] attr_accessor :etag @@ -2343,7 +2346,7 @@ module Google attr_accessor :kind # The name of the user in the Cloud SQL instance. Can be omitted for update - # since it is already specified on the URL. + # since it is already specified in the URL. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name diff --git a/generated/google/apis/sqladmin_v1beta4/service.rb b/generated/google/apis/sqladmin_v1beta4/service.rb index 952b9bc58..79ee19e2b 100644 --- a/generated/google/apis/sqladmin_v1beta4/service.rb +++ b/generated/google/apis/sqladmin_v1beta4/service.rb @@ -22,8 +22,8 @@ module Google module SqladminV1beta4 # Cloud SQL Admin API # - # Cloud SQL provides the Cloud SQL Admin API, a REST API for administering your - # instances programmatically. + # Creates and manages Cloud SQL instances, which provide fully managed MySQL or + # PostgreSQL databases. # # @example # require 'google/apis/sqladmin_v1beta4' @@ -172,7 +172,7 @@ module Google end # Lists all backup runs associated with a given instance and configuration in - # the reverse chronological order of the enqueued time. + # the reverse chronological order of the backup initiation time. # @param [String] project # Project ID of the project that contains the instance. # @param [String] instance @@ -458,8 +458,8 @@ module Google # List all available database flags for Cloud SQL instances. # @param [String] database_version - # Database version for flag retrieval. Flags are specific to the database - # version. + # Database type and version you want to retrieve flags for. By default, this + # method returns flags for all database types and versions. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user diff --git a/generated/google/apis/testing_v1.rb b/generated/google/apis/testing_v1.rb index 6cb04b254..7c5bf59c8 100644 --- a/generated/google/apis/testing_v1.rb +++ b/generated/google/apis/testing_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/cloud-test-lab/ module TestingV1 VERSION = 'V1' - REVISION = '20180906' + REVISION = '20180911' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/testing_v1/classes.rb b/generated/google/apis/testing_v1/classes.rb index 91589296f..ab54ae2d2 100644 --- a/generated/google/apis/testing_v1/classes.rb +++ b/generated/google/apis/testing_v1/classes.rb @@ -890,6 +890,11 @@ module Google # @return [Google::Apis::TestingV1::AndroidDevice] attr_accessor :android_device + # A single iOS device. + # Corresponds to the JSON property `iosDevice` + # @return [Google::Apis::TestingV1::IosDevice] + attr_accessor :ios_device + def initialize(**args) update!(**args) end @@ -897,6 +902,7 @@ module Google # Update properties of this object def update!(**args) @android_device = args[:android_device] if args.key?(:android_device) + @ios_device = args[:ios_device] if args.key?(:ios_device) end end @@ -918,6 +924,11 @@ module Google # @return [Google::Apis::TestingV1::AndroidMatrix] attr_accessor :android_matrix + # A list of iOS device configurations in which the test is to be executed. + # Corresponds to the JSON property `iosDeviceList` + # @return [Google::Apis::TestingV1::IosDeviceList] + attr_accessor :ios_device_list + def initialize(**args) update!(**args) end @@ -926,6 +937,7 @@ module Google def update!(**args) @android_device_list = args[:android_device_list] if args.key?(:android_device_list) @android_matrix = args[:android_matrix] if args.key?(:android_matrix) + @ios_device_list = args[:ios_device_list] if args.key?(:ios_device_list) end end @@ -1068,6 +1080,265 @@ module Google end end + # A single iOS device. + class IosDevice + include Google::Apis::Core::Hashable + + # Required. The id of the iOS device to be used. + # Use the EnvironmentDiscoveryService to get supported options. + # Corresponds to the JSON property `iosModelId` + # @return [String] + attr_accessor :ios_model_id + + # Required. The id of the iOS major software version to be used. + # Use the EnvironmentDiscoveryService to get supported options. + # Corresponds to the JSON property `iosVersionId` + # @return [String] + attr_accessor :ios_version_id + + # Required. The locale the test device used for testing. + # Use the EnvironmentDiscoveryService to get supported options. + # Corresponds to the JSON property `locale` + # @return [String] + attr_accessor :locale + + # Required. How the device is oriented during the test. + # Use the EnvironmentDiscoveryService to get supported options. + # Corresponds to the JSON property `orientation` + # @return [String] + attr_accessor :orientation + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ios_model_id = args[:ios_model_id] if args.key?(:ios_model_id) + @ios_version_id = args[:ios_version_id] if args.key?(:ios_version_id) + @locale = args[:locale] if args.key?(:locale) + @orientation = args[:orientation] if args.key?(:orientation) + end + end + + # The currently supported iOS devices. + class IosDeviceCatalog + include Google::Apis::Core::Hashable + + # Output only. The set of supported iOS device models. + # Corresponds to the JSON property `models` + # @return [Array] + attr_accessor :models + + # iOS configuration that can be selected at the time a test is run. + # Corresponds to the JSON property `runtimeConfiguration` + # @return [Google::Apis::TestingV1::IosRuntimeConfiguration] + attr_accessor :runtime_configuration + + # Output only. The set of supported iOS software versions. + # Corresponds to the JSON property `versions` + # @return [Array] + attr_accessor :versions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @models = args[:models] if args.key?(:models) + @runtime_configuration = args[:runtime_configuration] if args.key?(:runtime_configuration) + @versions = args[:versions] if args.key?(:versions) + end + end + + # A list of iOS device configurations in which the test is to be executed. + class IosDeviceList + include Google::Apis::Core::Hashable + + # Required. A list of iOS devices + # Corresponds to the JSON property `iosDevices` + # @return [Array] + attr_accessor :ios_devices + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ios_devices = args[:ios_devices] if args.key?(:ios_devices) + end + end + + # A description of an iOS device tests may be run on. + class IosModel + include Google::Apis::Core::Hashable + + # Output only. Device capabilities. + # Copied from + # https://developer.apple.com/library/archive/documentation/DeviceInformation/ + # Reference/iOSDeviceCompatibility/DeviceCompatibilityMatrix/ + # DeviceCompatibilityMatrix.html + # Corresponds to the JSON property `deviceCapabilities` + # @return [Array] + attr_accessor :device_capabilities + + # Output only. The unique opaque id for this model. + # Use this for invoking the TestExecutionService. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Output only. The human-readable name for this device model. + # Examples: "iPhone 4s", "iPad Mini 2" + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Output only. The set of iOS major software versions this device supports. + # Corresponds to the JSON property `supportedVersionIds` + # @return [Array] + attr_accessor :supported_version_ids + + # Output only. Tags for this dimension. + # Examples: "default", "preview", "deprecated" + # Corresponds to the JSON property `tags` + # @return [Array] + attr_accessor :tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @device_capabilities = args[:device_capabilities] if args.key?(:device_capabilities) + @id = args[:id] if args.key?(:id) + @name = args[:name] if args.key?(:name) + @supported_version_ids = args[:supported_version_ids] if args.key?(:supported_version_ids) + @tags = args[:tags] if args.key?(:tags) + end + end + + # iOS configuration that can be selected at the time a test is run. + class IosRuntimeConfiguration + include Google::Apis::Core::Hashable + + # Output only. The set of available locales. + # Corresponds to the JSON property `locales` + # @return [Array] + attr_accessor :locales + + # Output only. The set of available orientations. + # Corresponds to the JSON property `orientations` + # @return [Array] + attr_accessor :orientations + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @locales = args[:locales] if args.key?(:locales) + @orientations = args[:orientations] if args.key?(:orientations) + end + end + + # A description of how to set up an iOS device prior to a test. + class IosTestSetup + include Google::Apis::Core::Hashable + + # Optional. The network traffic profile used for running the test. + # Available network profiles can be queried by using the + # NETWORK_CONFIGURATION environment type when calling + # TestEnvironmentDiscoveryService.GetTestEnvironmentCatalog. + # Corresponds to the JSON property `networkProfile` + # @return [String] + attr_accessor :network_profile + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @network_profile = args[:network_profile] if args.key?(:network_profile) + end + end + + # An iOS version + class IosVersion + include Google::Apis::Core::Hashable + + # Output only. An opaque id for this iOS version. + # Use this id to invoke the TestExecutionService. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Output only. An integer representing the major iOS version. + # Examples: "8", "9" + # Corresponds to the JSON property `majorVersion` + # @return [Fixnum] + attr_accessor :major_version + + # Output only. An integer representing the minor iOS version. + # Examples: "1", "2" + # Corresponds to the JSON property `minorVersion` + # @return [Fixnum] + attr_accessor :minor_version + + # Output only. Tags for this dimension. + # Examples: "default", "preview", "deprecated" + # Corresponds to the JSON property `tags` + # @return [Array] + attr_accessor :tags + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @major_version = args[:major_version] if args.key?(:major_version) + @minor_version = args[:minor_version] if args.key?(:minor_version) + @tags = args[:tags] if args.key?(:tags) + end + end + + # A test of an iOS application that uses the XCTest framework. + # Xcode supports the option to "build for testing", which generates an + # .xctestrun file that contains a test specification (arguments, test methods, + # etc). This test type accepts a zip file containing the .xctestrun file and + # the corresponding contents of the Build/Products directory that contains all + # the binaries needed to run the tests. + class IosXcTest + include Google::Apis::Core::Hashable + + # A reference to a file, used for user inputs. + # Corresponds to the JSON property `testsZip` + # @return [Google::Apis::TestingV1::FileReference] + attr_accessor :tests_zip + + # A reference to a file, used for user inputs. + # Corresponds to the JSON property `xctestrun` + # @return [Google::Apis::TestingV1::FileReference] + attr_accessor :xctestrun + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @tests_zip = args[:tests_zip] if args.key?(:tests_zip) + @xctestrun = args[:xctestrun] if args.key?(:xctestrun) + end + end + # Specifies an intent that starts the main launcher activity. class LauncherActivityIntent include Google::Apis::Core::Hashable @@ -1487,6 +1758,11 @@ module Google # @return [Google::Apis::TestingV1::AndroidDeviceCatalog] attr_accessor :android_device_catalog + # The currently supported iOS devices. + # Corresponds to the JSON property `iosDeviceCatalog` + # @return [Google::Apis::TestingV1::IosDeviceCatalog] + attr_accessor :ios_device_catalog + # Supported network configurations # Corresponds to the JSON property `networkConfigurationCatalog` # @return [Google::Apis::TestingV1::NetworkConfigurationCatalog] @@ -1504,6 +1780,7 @@ module Google # Update properties of this object def update!(**args) @android_device_catalog = args[:android_device_catalog] if args.key?(:android_device_catalog) + @ios_device_catalog = args[:ios_device_catalog] if args.key?(:ios_device_catalog) @network_configuration_catalog = args[:network_configuration_catalog] if args.key?(:network_configuration_catalog) @software_catalog = args[:software_catalog] if args.key?(:software_catalog) end @@ -1781,6 +2058,21 @@ module Google attr_accessor :disable_video_recording alias_method :disable_video_recording?, :disable_video_recording + # A description of how to set up an iOS device prior to a test. + # Corresponds to the JSON property `iosTestSetup` + # @return [Google::Apis::TestingV1::IosTestSetup] + attr_accessor :ios_test_setup + + # A test of an iOS application that uses the XCTest framework. + # Xcode supports the option to "build for testing", which generates an + # .xctestrun file that contains a test specification (arguments, test methods, + # etc). This test type accepts a zip file containing the .xctestrun file and + # the corresponding contents of the Build/Products directory that contains all + # the binaries needed to run the tests. + # Corresponds to the JSON property `iosXcTest` + # @return [Google::Apis::TestingV1::IosXcTest] + attr_accessor :ios_xc_test + # A description of how to set up the Android device prior to running the test. # Corresponds to the JSON property `testSetup` # @return [Google::Apis::TestingV1::TestSetup] @@ -1805,6 +2097,8 @@ module Google @auto_google_login = args[:auto_google_login] if args.key?(:auto_google_login) @disable_performance_metrics = args[:disable_performance_metrics] if args.key?(:disable_performance_metrics) @disable_video_recording = args[:disable_video_recording] if args.key?(:disable_video_recording) + @ios_test_setup = args[:ios_test_setup] if args.key?(:ios_test_setup) + @ios_xc_test = args[:ios_xc_test] if args.key?(:ios_xc_test) @test_setup = args[:test_setup] if args.key?(:test_setup) @test_timeout = args[:test_timeout] if args.key?(:test_timeout) end diff --git a/generated/google/apis/testing_v1/representations.rb b/generated/google/apis/testing_v1/representations.rb index ec3f2aa82..a49d6d47b 100644 --- a/generated/google/apis/testing_v1/representations.rb +++ b/generated/google/apis/testing_v1/representations.rb @@ -190,6 +190,54 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class IosDevice + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosDeviceCatalog + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosDeviceList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosModel + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosRuntimeConfiguration + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosTestSetup + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosVersion + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IosXcTest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class LauncherActivityIntent class Representation < Google::Apis::Core::JsonRepresentation; end @@ -544,6 +592,8 @@ module Google class Representation < Google::Apis::Core::JsonRepresentation property :android_device, as: 'androidDevice', class: Google::Apis::TestingV1::AndroidDevice, decorator: Google::Apis::TestingV1::AndroidDevice::Representation + property :ios_device, as: 'iosDevice', class: Google::Apis::TestingV1::IosDevice, decorator: Google::Apis::TestingV1::IosDevice::Representation + end end @@ -554,6 +604,8 @@ module Google property :android_matrix, as: 'androidMatrix', class: Google::Apis::TestingV1::AndroidMatrix, decorator: Google::Apis::TestingV1::AndroidMatrix::Representation + property :ios_device_list, as: 'iosDeviceList', class: Google::Apis::TestingV1::IosDeviceList, decorator: Google::Apis::TestingV1::IosDeviceList::Representation + end end @@ -602,6 +654,84 @@ module Google end end + class IosDevice + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ios_model_id, as: 'iosModelId' + property :ios_version_id, as: 'iosVersionId' + property :locale, as: 'locale' + property :orientation, as: 'orientation' + end + end + + class IosDeviceCatalog + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :models, as: 'models', class: Google::Apis::TestingV1::IosModel, decorator: Google::Apis::TestingV1::IosModel::Representation + + property :runtime_configuration, as: 'runtimeConfiguration', class: Google::Apis::TestingV1::IosRuntimeConfiguration, decorator: Google::Apis::TestingV1::IosRuntimeConfiguration::Representation + + collection :versions, as: 'versions', class: Google::Apis::TestingV1::IosVersion, decorator: Google::Apis::TestingV1::IosVersion::Representation + + end + end + + class IosDeviceList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :ios_devices, as: 'iosDevices', class: Google::Apis::TestingV1::IosDevice, decorator: Google::Apis::TestingV1::IosDevice::Representation + + end + end + + class IosModel + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :device_capabilities, as: 'deviceCapabilities' + property :id, as: 'id' + property :name, as: 'name' + collection :supported_version_ids, as: 'supportedVersionIds' + collection :tags, as: 'tags' + end + end + + class IosRuntimeConfiguration + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :locales, as: 'locales', class: Google::Apis::TestingV1::Locale, decorator: Google::Apis::TestingV1::Locale::Representation + + collection :orientations, as: 'orientations', class: Google::Apis::TestingV1::Orientation, decorator: Google::Apis::TestingV1::Orientation::Representation + + end + end + + class IosTestSetup + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :network_profile, as: 'networkProfile' + end + end + + class IosVersion + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :major_version, as: 'majorVersion' + property :minor_version, as: 'minorVersion' + collection :tags, as: 'tags' + end + end + + class IosXcTest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :tests_zip, as: 'testsZip', class: Google::Apis::TestingV1::FileReference, decorator: Google::Apis::TestingV1::FileReference::Representation + + property :xctestrun, as: 'xctestrun', class: Google::Apis::TestingV1::FileReference, decorator: Google::Apis::TestingV1::FileReference::Representation + + end + end + class LauncherActivityIntent # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -725,6 +855,8 @@ module Google class Representation < Google::Apis::Core::JsonRepresentation property :android_device_catalog, as: 'androidDeviceCatalog', class: Google::Apis::TestingV1::AndroidDeviceCatalog, decorator: Google::Apis::TestingV1::AndroidDeviceCatalog::Representation + property :ios_device_catalog, as: 'iosDeviceCatalog', class: Google::Apis::TestingV1::IosDeviceCatalog, decorator: Google::Apis::TestingV1::IosDeviceCatalog::Representation + property :network_configuration_catalog, as: 'networkConfigurationCatalog', class: Google::Apis::TestingV1::NetworkConfigurationCatalog, decorator: Google::Apis::TestingV1::NetworkConfigurationCatalog::Representation property :software_catalog, as: 'softwareCatalog', class: Google::Apis::TestingV1::ProvidedSoftwareCatalog, decorator: Google::Apis::TestingV1::ProvidedSoftwareCatalog::Representation @@ -800,6 +932,10 @@ module Google property :auto_google_login, as: 'autoGoogleLogin' property :disable_performance_metrics, as: 'disablePerformanceMetrics' property :disable_video_recording, as: 'disableVideoRecording' + property :ios_test_setup, as: 'iosTestSetup', class: Google::Apis::TestingV1::IosTestSetup, decorator: Google::Apis::TestingV1::IosTestSetup::Representation + + property :ios_xc_test, as: 'iosXcTest', class: Google::Apis::TestingV1::IosXcTest, decorator: Google::Apis::TestingV1::IosXcTest::Representation + property :test_setup, as: 'testSetup', class: Google::Apis::TestingV1::TestSetup, decorator: Google::Apis::TestingV1::TestSetup::Representation property :test_timeout, as: 'testTimeout'