From ffe048f7fea1f879753ad4163520dbe9b35eab65 Mon Sep 17 00:00:00 2001 From: Google APIs Date: Tue, 13 Mar 2018 00:36:07 +0000 Subject: [PATCH] Autogenerated update (2018-03-13) Update: - adexchangebuyer2_v2beta1 - serviceconsumermanagement_v1 - sheets_v4 - slides_v1 - storagetransfer_v1 --- api_names_out.yaml | 122 +++ .../google/apis/adexchangebuyer2_v2beta1.rb | 2 +- .../apis/adexchangebuyer2_v2beta1/service.rb | 2 +- .../google/apis/cloudresourcemanager_v2.rb | 38 + .../apis/cloudresourcemanager_v2/classes.rb | 821 ++++++++++++++++++ .../representations.rb | 304 +++++++ .../apis/cloudresourcemanager_v2/service.rb | 534 ++++++++++++ .../apis/serviceconsumermanagement_v1.rb | 2 +- .../serviceconsumermanagement_v1/classes.rb | 34 +- .../serviceconsumermanagement_v1/service.rb | 25 +- generated/google/apis/sheets_v4.rb | 2 +- generated/google/apis/sheets_v4/classes.rb | 632 +++++++++++++- .../google/apis/sheets_v4/representations.rb | 53 ++ generated/google/apis/slides_v1.rb | 2 +- generated/google/apis/slides_v1/classes.rb | 2 +- generated/google/apis/storagetransfer_v1.rb | 2 +- .../google/apis/storagetransfer_v1/service.rb | 2 +- 17 files changed, 2541 insertions(+), 38 deletions(-) create mode 100644 generated/google/apis/cloudresourcemanager_v2.rb create mode 100644 generated/google/apis/cloudresourcemanager_v2/classes.rb create mode 100644 generated/google/apis/cloudresourcemanager_v2/representations.rb create mode 100644 generated/google/apis/cloudresourcemanager_v2/service.rb diff --git a/api_names_out.yaml b/api_names_out.yaml index ba0ebf331..a552869a6 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -14536,6 +14536,109 @@ "/cloudresourcemanager:v1beta1/fields": fields "/cloudresourcemanager:v1beta1/key": key "/cloudresourcemanager:v1beta1/quotaUser": quota_user +"/cloudresourcemanager:v2/AuditConfig": audit_config +"/cloudresourcemanager:v2/AuditConfig/auditLogConfigs": audit_log_configs +"/cloudresourcemanager:v2/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config +"/cloudresourcemanager:v2/AuditConfig/service": service +"/cloudresourcemanager:v2/AuditLogConfig": audit_log_config +"/cloudresourcemanager:v2/AuditLogConfig/exemptedMembers": exempted_members +"/cloudresourcemanager:v2/AuditLogConfig/exemptedMembers/exempted_member": exempted_member +"/cloudresourcemanager:v2/AuditLogConfig/logType": log_type +"/cloudresourcemanager:v2/Binding": binding +"/cloudresourcemanager:v2/Binding/members": members +"/cloudresourcemanager:v2/Binding/members/member": member +"/cloudresourcemanager:v2/Binding/role": role +"/cloudresourcemanager:v2/Folder": folder +"/cloudresourcemanager:v2/Folder/createTime": create_time +"/cloudresourcemanager:v2/Folder/displayName": display_name +"/cloudresourcemanager:v2/Folder/lifecycleState": lifecycle_state +"/cloudresourcemanager:v2/Folder/name": name +"/cloudresourcemanager:v2/Folder/parent": parent +"/cloudresourcemanager:v2/FolderOperation": folder_operation +"/cloudresourcemanager:v2/FolderOperation/destinationParent": destination_parent +"/cloudresourcemanager:v2/FolderOperation/displayName": display_name +"/cloudresourcemanager:v2/FolderOperation/operationType": operation_type +"/cloudresourcemanager:v2/FolderOperation/sourceParent": source_parent +"/cloudresourcemanager:v2/FolderOperationError": folder_operation_error +"/cloudresourcemanager:v2/FolderOperationError/errorMessageId": error_message_id +"/cloudresourcemanager:v2/GetIamPolicyRequest": get_iam_policy_request +"/cloudresourcemanager:v2/ListFoldersResponse": list_folders_response +"/cloudresourcemanager:v2/ListFoldersResponse/folders": folders +"/cloudresourcemanager:v2/ListFoldersResponse/folders/folder": folder +"/cloudresourcemanager:v2/ListFoldersResponse/nextPageToken": next_page_token +"/cloudresourcemanager:v2/MoveFolderRequest": move_folder_request +"/cloudresourcemanager:v2/MoveFolderRequest/destinationParent": destination_parent +"/cloudresourcemanager:v2/Operation": operation +"/cloudresourcemanager:v2/Operation/done": done +"/cloudresourcemanager:v2/Operation/error": error +"/cloudresourcemanager:v2/Operation/metadata": metadata +"/cloudresourcemanager:v2/Operation/metadata/metadatum": metadatum +"/cloudresourcemanager:v2/Operation/name": name +"/cloudresourcemanager:v2/Operation/response": response +"/cloudresourcemanager:v2/Operation/response/response": response +"/cloudresourcemanager:v2/Policy": policy +"/cloudresourcemanager:v2/Policy/auditConfigs": audit_configs +"/cloudresourcemanager:v2/Policy/auditConfigs/audit_config": audit_config +"/cloudresourcemanager:v2/Policy/bindings": bindings +"/cloudresourcemanager:v2/Policy/bindings/binding": binding +"/cloudresourcemanager:v2/Policy/etag": etag +"/cloudresourcemanager:v2/Policy/version": version +"/cloudresourcemanager:v2/ProjectCreationStatus": project_creation_status +"/cloudresourcemanager:v2/ProjectCreationStatus/createTime": create_time +"/cloudresourcemanager:v2/ProjectCreationStatus/gettable": gettable +"/cloudresourcemanager:v2/ProjectCreationStatus/ready": ready +"/cloudresourcemanager:v2/SearchFoldersRequest": search_folders_request +"/cloudresourcemanager:v2/SearchFoldersRequest/pageSize": page_size +"/cloudresourcemanager:v2/SearchFoldersRequest/pageToken": page_token +"/cloudresourcemanager:v2/SearchFoldersRequest/query": query +"/cloudresourcemanager:v2/SearchFoldersResponse": search_folders_response +"/cloudresourcemanager:v2/SearchFoldersResponse/folders": folders +"/cloudresourcemanager:v2/SearchFoldersResponse/folders/folder": folder +"/cloudresourcemanager:v2/SearchFoldersResponse/nextPageToken": next_page_token +"/cloudresourcemanager:v2/SetIamPolicyRequest": set_iam_policy_request +"/cloudresourcemanager:v2/SetIamPolicyRequest/policy": policy +"/cloudresourcemanager:v2/SetIamPolicyRequest/updateMask": update_mask +"/cloudresourcemanager:v2/Status": status +"/cloudresourcemanager:v2/Status/code": code +"/cloudresourcemanager:v2/Status/details": details +"/cloudresourcemanager:v2/Status/details/detail": detail +"/cloudresourcemanager:v2/Status/details/detail/detail": detail +"/cloudresourcemanager:v2/Status/message": message +"/cloudresourcemanager:v2/TestIamPermissionsRequest": test_iam_permissions_request +"/cloudresourcemanager:v2/TestIamPermissionsRequest/permissions": permissions +"/cloudresourcemanager:v2/TestIamPermissionsRequest/permissions/permission": permission +"/cloudresourcemanager:v2/TestIamPermissionsResponse": test_iam_permissions_response +"/cloudresourcemanager:v2/TestIamPermissionsResponse/permissions": permissions +"/cloudresourcemanager:v2/TestIamPermissionsResponse/permissions/permission": permission +"/cloudresourcemanager:v2/UndeleteFolderRequest": undelete_folder_request +"/cloudresourcemanager:v2/cloudresourcemanager.folders.create": create_folder +"/cloudresourcemanager:v2/cloudresourcemanager.folders.create/parent": parent +"/cloudresourcemanager:v2/cloudresourcemanager.folders.delete": delete_folder +"/cloudresourcemanager:v2/cloudresourcemanager.folders.delete/name": name +"/cloudresourcemanager:v2/cloudresourcemanager.folders.get": get_folder +"/cloudresourcemanager:v2/cloudresourcemanager.folders.get/name": name +"/cloudresourcemanager:v2/cloudresourcemanager.folders.getIamPolicy": get_folder_iam_policy +"/cloudresourcemanager:v2/cloudresourcemanager.folders.getIamPolicy/resource": resource +"/cloudresourcemanager:v2/cloudresourcemanager.folders.list": list_folders +"/cloudresourcemanager:v2/cloudresourcemanager.folders.list/pageSize": page_size +"/cloudresourcemanager:v2/cloudresourcemanager.folders.list/pageToken": page_token +"/cloudresourcemanager:v2/cloudresourcemanager.folders.list/parent": parent +"/cloudresourcemanager:v2/cloudresourcemanager.folders.list/showDeleted": show_deleted +"/cloudresourcemanager:v2/cloudresourcemanager.folders.move": move_folder +"/cloudresourcemanager:v2/cloudresourcemanager.folders.move/name": name +"/cloudresourcemanager:v2/cloudresourcemanager.folders.patch": patch_folder +"/cloudresourcemanager:v2/cloudresourcemanager.folders.patch/name": name +"/cloudresourcemanager:v2/cloudresourcemanager.folders.patch/updateMask": update_mask +"/cloudresourcemanager:v2/cloudresourcemanager.folders.search": search_folders +"/cloudresourcemanager:v2/cloudresourcemanager.folders.setIamPolicy": set_folder_iam_policy +"/cloudresourcemanager:v2/cloudresourcemanager.folders.setIamPolicy/resource": resource +"/cloudresourcemanager:v2/cloudresourcemanager.folders.testIamPermissions": test_folder_iam_permissions +"/cloudresourcemanager:v2/cloudresourcemanager.folders.testIamPermissions/resource": resource +"/cloudresourcemanager:v2/cloudresourcemanager.folders.undelete": undelete_folder +"/cloudresourcemanager:v2/cloudresourcemanager.folders.undelete/name": name +"/cloudresourcemanager:v2/fields": fields +"/cloudresourcemanager:v2/key": key +"/cloudresourcemanager:v2/quotaUser": quota_user "/cloudresourcemanager:v2beta1/AuditConfig": audit_config "/cloudresourcemanager:v2beta1/AuditConfig/auditLogConfigs": audit_log_configs "/cloudresourcemanager:v2beta1/AuditConfig/auditLogConfigs/audit_log_config": audit_log_config @@ -63393,6 +63496,7 @@ "/sheets:v4/ChartSpec/title": title "/sheets:v4/ChartSpec/titleTextFormat": title_text_format "/sheets:v4/ChartSpec/titleTextPosition": title_text_position +"/sheets:v4/ChartSpec/treemapChart": treemap_chart "/sheets:v4/ChartSpec/waterfallChart": waterfall_chart "/sheets:v4/ClearBasicFilterRequest": clear_basic_filter_request "/sheets:v4/ClearBasicFilterRequest/sheetId": sheet_id @@ -63900,6 +64004,24 @@ "/sheets:v4/TextToColumnsRequest/delimiter": delimiter "/sheets:v4/TextToColumnsRequest/delimiterType": delimiter_type "/sheets:v4/TextToColumnsRequest/source": source +"/sheets:v4/TreemapChartColorScale": treemap_chart_color_scale +"/sheets:v4/TreemapChartColorScale/maxValueColor": max_value_color +"/sheets:v4/TreemapChartColorScale/midValueColor": mid_value_color +"/sheets:v4/TreemapChartColorScale/minValueColor": min_value_color +"/sheets:v4/TreemapChartColorScale/noDataColor": no_data_color +"/sheets:v4/TreemapChartSpec": treemap_chart_spec +"/sheets:v4/TreemapChartSpec/colorData": color_data +"/sheets:v4/TreemapChartSpec/colorScale": color_scale +"/sheets:v4/TreemapChartSpec/headerColor": header_color +"/sheets:v4/TreemapChartSpec/hideTooltips": hide_tooltips +"/sheets:v4/TreemapChartSpec/hintedLevels": hinted_levels +"/sheets:v4/TreemapChartSpec/labels": labels +"/sheets:v4/TreemapChartSpec/levels": levels +"/sheets:v4/TreemapChartSpec/maxValue": max_value +"/sheets:v4/TreemapChartSpec/minValue": min_value +"/sheets:v4/TreemapChartSpec/parentLabels": parent_labels +"/sheets:v4/TreemapChartSpec/sizeData": size_data +"/sheets:v4/TreemapChartSpec/textFormat": text_format "/sheets:v4/UnmergeCellsRequest": unmerge_cells_request "/sheets:v4/UnmergeCellsRequest/range": range "/sheets:v4/UpdateBandingRequest": update_banding_request diff --git a/generated/google/apis/adexchangebuyer2_v2beta1.rb b/generated/google/apis/adexchangebuyer2_v2beta1.rb index 2008535dd..64e3c393f 100644 --- a/generated/google/apis/adexchangebuyer2_v2beta1.rb +++ b/generated/google/apis/adexchangebuyer2_v2beta1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/ad-exchange/buyer-rest/reference/rest/ module Adexchangebuyer2V2beta1 VERSION = 'V2beta1' - REVISION = '20180307' + REVISION = '20180309' # Manage your Ad Exchange buyer account configuration AUTH_ADEXCHANGE_BUYER = 'https://www.googleapis.com/auth/adexchange.buyer' diff --git a/generated/google/apis/adexchangebuyer2_v2beta1/service.rb b/generated/google/apis/adexchangebuyer2_v2beta1/service.rb index 54e29d7a3..d5100c835 100644 --- a/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +++ b/generated/google/apis/adexchangebuyer2_v2beta1/service.rb @@ -44,7 +44,7 @@ module Google attr_accessor :quota_user def initialize - super('https://adexchangebuyer.googleapis.com/', '') + super('https://content-adexchangebuyer.googleapis.com/', '') @batch_path = 'batch' end diff --git a/generated/google/apis/cloudresourcemanager_v2.rb b/generated/google/apis/cloudresourcemanager_v2.rb new file mode 100644 index 000000000..0068e6a46 --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2.rb @@ -0,0 +1,38 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/cloudresourcemanager_v2/service.rb' +require 'google/apis/cloudresourcemanager_v2/classes.rb' +require 'google/apis/cloudresourcemanager_v2/representations.rb' + +module Google + module Apis + # Cloud Resource Manager API + # + # The Google Cloud Resource Manager API provides methods for creating, reading, + # and updating project metadata. + # + # @see https://cloud.google.com/resource-manager + module CloudresourcemanagerV2 + VERSION = 'V2' + REVISION = '20180308' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v2/classes.rb b/generated/google/apis/cloudresourcemanager_v2/classes.rb new file mode 100644 index 000000000..6fc3d0011 --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2/classes.rb @@ -0,0 +1,821 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudresourcemanagerV2 + + # Specifies the audit configuration for a service. + # The configuration determines which permission types are logged, and what + # identities, if any, are exempted from logging. + # An AuditConfig must have one or more AuditLogConfigs. + # If there are AuditConfigs for both `allServices` and a specific service, + # the union of the two AuditConfigs is used for that service: the log_types + # specified in each AuditConfig are enabled, and the exempted_members in each + # AuditLogConfig are exempted. + # Example Policy with multiple AuditConfigs: + # ` + # "audit_configs": [ + # ` + # "service": "allServices" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # `, + # ` + # "log_type": "ADMIN_READ", + # ` + # ] + # `, + # ` + # "service": "fooservice.googleapis.com" + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # `, + # ` + # "log_type": "DATA_WRITE", + # "exempted_members": [ + # "user:bar@gmail.com" + # ] + # ` + # ] + # ` + # ] + # ` + # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ + # logging. It also exempts foo@gmail.com from DATA_READ logging, and + # bar@gmail.com from DATA_WRITE logging. + class AuditConfig + include Google::Apis::Core::Hashable + + # The configuration for logging of each type of permission. + # Next ID: 4 + # Corresponds to the JSON property `auditLogConfigs` + # @return [Array] + attr_accessor :audit_log_configs + + # Specifies a service that will be enabled for audit logging. + # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`. + # `allServices` is a special value that covers all services. + # Corresponds to the JSON property `service` + # @return [String] + attr_accessor :service + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_log_configs = args[:audit_log_configs] if args.key?(:audit_log_configs) + @service = args[:service] if args.key?(:service) + end + end + + # Provides the configuration for logging a type of permissions. + # Example: + # ` + # "audit_log_configs": [ + # ` + # "log_type": "DATA_READ", + # "exempted_members": [ + # "user:foo@gmail.com" + # ] + # `, + # ` + # "log_type": "DATA_WRITE", + # ` + # ] + # ` + # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting + # foo@gmail.com from DATA_READ logging. + class AuditLogConfig + include Google::Apis::Core::Hashable + + # Specifies the identities that do not cause logging for this type of + # permission. + # Follows the same format of Binding.members. + # Corresponds to the JSON property `exemptedMembers` + # @return [Array] + attr_accessor :exempted_members + + # The log type that this config enables. + # Corresponds to the JSON property `logType` + # @return [String] + attr_accessor :log_type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @exempted_members = args[:exempted_members] if args.key?(:exempted_members) + @log_type = args[:log_type] if args.key?(:log_type) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # Specifies the identities requesting access for a Cloud Platform resource. + # `members` can have the following values: + # * `allUsers`: A special identifier that represents anyone who is + # on the internet; with or without a Google account. + # * `allAuthenticatedUsers`: A special identifier that represents anyone + # who is authenticated with a Google account or a service account. + # * `user:`emailid``: An email address that represents a specific Google + # account. For example, `alice@gmail.com` or `joe@example.com`. + # * `serviceAccount:`emailid``: An email address that represents a service + # account. For example, `my-other-app@appspot.gserviceaccount.com`. + # * `group:`emailid``: An email address that represents a Google group. + # For example, `admins@example.com`. + # * `domain:`domain``: A Google Apps domain name that represents all the + # users of that domain. For example, `google.com` or `example.com`. + # Corresponds to the JSON property `members` + # @return [Array] + attr_accessor :members + + # Role that is assigned to `members`. + # For example, `roles/viewer`, `roles/editor`, or `roles/owner`. + # Required + # Corresponds to the JSON property `role` + # @return [String] + attr_accessor :role + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @members = args[:members] if args.key?(:members) + @role = args[:role] if args.key?(:role) + end + end + + # A Folder in an Organization's resource hierarchy, used to + # organize that Organization's resources. + class Folder + include Google::Apis::Core::Hashable + + # Output only. Timestamp when the Folder was created. Assigned by the server. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # The folder’s display name. + # A folder’s display name must be unique amongst its siblings, e.g. + # no two folders with the same parent can share the same display name. + # The display name must start and end with a letter or digit, may contain + # letters, digits, spaces, hyphens and underscores and can be no longer + # than 30 characters. This is captured by the regular expression: + # [\p`L`\p`N`](`\p`L`\p`N`_- ]`0,28`[\p`L`\p`N`])?. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Output only. The lifecycle state of the folder. + # Updates to the lifecycle_state must be performed via + # DeleteFolder and + # UndeleteFolder. + # Corresponds to the JSON property `lifecycleState` + # @return [String] + attr_accessor :lifecycle_state + + # Output only. The resource name of the Folder. + # Its format is `folders/`folder_id``, for example: "folders/1234". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The Folder’s parent's resource name. + # Updates to the folder's parent must be performed via + # MoveFolder. + # Corresponds to the JSON property `parent` + # @return [String] + attr_accessor :parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @display_name = args[:display_name] if args.key?(:display_name) + @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) + @name = args[:name] if args.key?(:name) + @parent = args[:parent] if args.key?(:parent) + end + end + + # Metadata describing a long running folder operation + class FolderOperation + include Google::Apis::Core::Hashable + + # The resource name of the folder or organization we are either creating + # the folder under or moving the folder to. + # Corresponds to the JSON property `destinationParent` + # @return [String] + attr_accessor :destination_parent + + # The display name of the folder. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The type of this operation. + # Corresponds to the JSON property `operationType` + # @return [String] + attr_accessor :operation_type + + # The resource name of the folder's parent. + # Only applicable when the operation_type is MOVE. + # Corresponds to the JSON property `sourceParent` + # @return [String] + attr_accessor :source_parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_parent = args[:destination_parent] if args.key?(:destination_parent) + @display_name = args[:display_name] if args.key?(:display_name) + @operation_type = args[:operation_type] if args.key?(:operation_type) + @source_parent = args[:source_parent] if args.key?(:source_parent) + end + end + + # A classification of the Folder Operation error. + class FolderOperationError + include Google::Apis::Core::Hashable + + # The type of operation error experienced. + # Corresponds to the JSON property `errorMessageId` + # @return [String] + attr_accessor :error_message_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @error_message_id = args[:error_message_id] if args.key?(:error_message_id) + end + end + + # Request message for `GetIamPolicy` method. + class GetIamPolicyRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The ListFolders response message. + class ListFoldersResponse + include Google::Apis::Core::Hashable + + # A possibly paginated list of Folders that are direct descendants of + # the specified parent resource. + # Corresponds to the JSON property `folders` + # @return [Array] + attr_accessor :folders + + # A pagination token returned from a previous call to `ListFolders` + # that indicates from where listing should continue. + # This field is optional. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @folders = args[:folders] if args.key?(:folders) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The MoveFolder request message. + class MoveFolderRequest + include Google::Apis::Core::Hashable + + # The resource name of the Folder or Organization to reparent + # the folder under. + # Must be of the form `folders/`folder_id`` or `organizations/`org_id``. + # Corresponds to the JSON property `destinationParent` + # @return [String] + attr_accessor :destination_parent + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @destination_parent = args[:destination_parent] if args.key?(:destination_parent) + end + end + + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # If the value is `false`, it means the operation is still in progress. + # If `true`, the operation is completed, and either `error` or `response` is + # available. + # Corresponds to the JSON property `done` + # @return [Boolean] + attr_accessor :done + alias_method :done?, :done + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + # Corresponds to the JSON property `error` + # @return [Google::Apis::CloudresourcemanagerV2::Status] + attr_accessor :error + + # Service-specific metadata associated with the operation. It typically + # contains progress information and common metadata such as create time. + # Some services might not provide such metadata. Any method that returns a + # long-running operation should document the metadata type, if any. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # The server-assigned name, which is only unique within the same service that + # originally returns it. If you use the default HTTP mapping, the + # `name` should have the format of `operations/some/unique/name`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The normal response of the operation in case of success. If the original + # method returns no data on success, such as `Delete`, the response is + # `google.protobuf.Empty`. If the original method is standard + # `Get`/`Create`/`Update`, the response should be the resource. For other + # methods, the response should have the type `XxxResponse`, where `Xxx` + # is the original method name. For example, if the original method name + # is `TakeSnapshot()`, the inferred response type is + # `TakeSnapshotResponse`. + # Corresponds to the JSON property `response` + # @return [Hash] + attr_accessor :response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @metadata = args[:metadata] if args.key?(:metadata) + @name = args[:name] if args.key?(:name) + @response = args[:response] if args.key?(:response) + end + end + + # Defines an Identity and Access Management (IAM) policy. It is used to + # specify access control policies for Cloud Platform resources. + # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of + # `members` to a `role`, where the members can be user accounts, Google groups, + # Google domains, and service accounts. A `role` is a named list of permissions + # defined by IAM. + # **Example** + # ` + # "bindings": [ + # ` + # "role": "roles/owner", + # "members": [ + # "user:mike@example.com", + # "group:admins@example.com", + # "domain:google.com", + # "serviceAccount:my-other-app@appspot.gserviceaccount.com", + # ] + # `, + # ` + # "role": "roles/viewer", + # "members": ["user:sean@example.com"] + # ` + # ] + # ` + # For a description of IAM and its features, see the + # [IAM developer's guide](https://cloud.google.com/iam/docs). + class Policy + include Google::Apis::Core::Hashable + + # Specifies cloud audit logging configuration for this policy. + # Corresponds to the JSON property `auditConfigs` + # @return [Array] + attr_accessor :audit_configs + + # Associates a list of `members` to a `role`. + # `bindings` with no members will result in an error. + # Corresponds to the JSON property `bindings` + # @return [Array] + attr_accessor :bindings + + # `etag` is used for optimistic concurrency control as a way to help + # prevent simultaneous updates of a policy from overwriting each other. + # It is strongly suggested that systems make use of the `etag` in the + # read-modify-write cycle to perform policy updates in order to avoid race + # conditions: An `etag` is returned in the response to `getIamPolicy`, and + # systems are expected to put that etag in the request to `setIamPolicy` to + # ensure that their change will be applied to the same version of the policy. + # If no `etag` is provided in the call to `setIamPolicy`, then the existing + # policy is overwritten blindly. + # Corresponds to the JSON property `etag` + # NOTE: Values are automatically base64 encoded/decoded in the client library. + # @return [String] + attr_accessor :etag + + # Deprecated. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @audit_configs = args[:audit_configs] if args.key?(:audit_configs) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + @version = args[:version] if args.key?(:version) + end + end + + # A status object which is used as the `metadata` field for the Operation + # returned by CreateProject. It provides insight for when significant phases of + # Project creation have completed. + class ProjectCreationStatus + include Google::Apis::Core::Hashable + + # Creation time of the project creation workflow. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # True if the project can be retrieved using GetProject. No other operations + # on the project are guaranteed to work until the project creation is + # complete. + # Corresponds to the JSON property `gettable` + # @return [Boolean] + attr_accessor :gettable + alias_method :gettable?, :gettable + + # True if the project creation process is complete. + # Corresponds to the JSON property `ready` + # @return [Boolean] + attr_accessor :ready + alias_method :ready?, :ready + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @create_time = args[:create_time] if args.key?(:create_time) + @gettable = args[:gettable] if args.key?(:gettable) + @ready = args[:ready] if args.key?(:ready) + end + end + + # The request message for searching folders. + class SearchFoldersRequest + include Google::Apis::Core::Hashable + + # The maximum number of folders to return in the response. + # This field is optional. + # Corresponds to the JSON property `pageSize` + # @return [Fixnum] + attr_accessor :page_size + + # A pagination token returned from a previous call to `SearchFolders` + # that indicates from where search should continue. + # This field is optional. + # Corresponds to the JSON property `pageToken` + # @return [String] + attr_accessor :page_token + + # Search criteria used to select the Folders to return. + # If no search criteria is specified then all accessible folders will be + # returned. + # Query expressions can be used to restrict results based upon displayName, + # lifecycleState and parent, where the operators `=`, `NOT`, `AND` and `OR` + # can be used along with the suffix wildcard symbol `*`. + # Some example queries are: + # |Query | Description| + # |----- | -----------| + # |displayName=Test* | Folders whose display name starts with "Test". + # |lifecycleState=ACTIVE | Folders whose lifecycleState is ACTIVE. + # |parent=folders/123 | Folders whose parent is "folders/123". + # |parent=folders/123 AND lifecycleState=ACTIVE | Active folders whose parent is + # "folders/123".| + # Corresponds to the JSON property `query` + # @return [String] + attr_accessor :query + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @page_size = args[:page_size] if args.key?(:page_size) + @page_token = args[:page_token] if args.key?(:page_token) + @query = args[:query] if args.key?(:query) + end + end + + # The response message for searching folders. + class SearchFoldersResponse + include Google::Apis::Core::Hashable + + # A possibly paginated folder search results. + # the specified parent resource. + # Corresponds to the JSON property `folders` + # @return [Array] + attr_accessor :folders + + # A pagination token returned from a previous call to `SearchFolders` + # that indicates from where searching should continue. + # This field is optional. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @folders = args[:folders] if args.key?(:folders) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Request message for `SetIamPolicy` method. + class SetIamPolicyRequest + include Google::Apis::Core::Hashable + + # Defines an Identity and Access Management (IAM) policy. It is used to + # specify access control policies for Cloud Platform resources. + # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of + # `members` to a `role`, where the members can be user accounts, Google groups, + # Google domains, and service accounts. A `role` is a named list of permissions + # defined by IAM. + # **Example** + # ` + # "bindings": [ + # ` + # "role": "roles/owner", + # "members": [ + # "user:mike@example.com", + # "group:admins@example.com", + # "domain:google.com", + # "serviceAccount:my-other-app@appspot.gserviceaccount.com", + # ] + # `, + # ` + # "role": "roles/viewer", + # "members": ["user:sean@example.com"] + # ` + # ] + # ` + # For a description of IAM and its features, see the + # [IAM developer's guide](https://cloud.google.com/iam/docs). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::CloudresourcemanagerV2::Policy] + attr_accessor :policy + + # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only + # the fields in the mask will be modified. If no mask is provided, the + # following default mask is used: + # paths: "bindings, etag" + # This field is only used by Cloud IAM. + # Corresponds to the JSON property `updateMask` + # @return [String] + attr_accessor :update_mask + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + @update_mask = args[:update_mask] if args.key?(:update_mask) + end + end + + # The `Status` type defines a logical error model that is suitable for different + # programming environments, including REST APIs and RPC APIs. It is used by + # [gRPC](https://github.com/grpc). The error model is designed to be: + # - Simple to use and understand for most users + # - Flexible enough to meet unexpected needs + # # Overview + # The `Status` message contains three pieces of data: error code, error message, + # and error details. The error code should be an enum value of + # google.rpc.Code, but it may accept additional error codes if needed. The + # error message should be a developer-facing English message that helps + # developers *understand* and *resolve* the error. If a localized user-facing + # error message is needed, put the localized message in the error details or + # localize it in the client. The optional error details may contain arbitrary + # information about the error. There is a predefined set of error detail types + # in the package `google.rpc` that can be used for common error conditions. + # # Language mapping + # The `Status` message is the logical representation of the error model, but it + # is not necessarily the actual wire format. When the `Status` message is + # exposed in different client libraries and different wire protocols, it can be + # mapped differently. For example, it will likely be mapped to some exceptions + # in Java, but more likely mapped to some error codes in C. + # # Other uses + # The error model and the `Status` message can be used in a variety of + # environments, either with or without APIs, to provide a + # consistent developer experience across different environments. + # Example uses of this error model include: + # - Partial errors. If a service needs to return partial errors to the client, + # it may embed the `Status` in the normal response to indicate the partial + # errors. + # - Workflow errors. A typical workflow has multiple steps. Each step may + # have a `Status` message for error reporting. + # - Batch operations. If a client uses batch request and batch response, the + # `Status` message should be used directly inside batch response, one for + # each error sub-response. + # - Asynchronous operations. If an API call embeds asynchronous operation + # results in its response, the status of those operations should be + # represented directly using the `Status` message. + # - Logging. If some API errors are stored in logs, the message `Status` could + # be used directly after any stripping needed for security/privacy reasons. + class Status + include Google::Apis::Core::Hashable + + # The status code, which should be an enum value of google.rpc.Code. + # Corresponds to the JSON property `code` + # @return [Fixnum] + attr_accessor :code + + # A list of messages that carry the error details. There is a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + # A developer-facing error message, which should be in English. Any + # user-facing error message should be localized and sent in the + # google.rpc.Status.details field, or localized by the client. + # Corresponds to the JSON property `message` + # @return [String] + attr_accessor :message + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @details = args[:details] if args.key?(:details) + @message = args[:message] if args.key?(:message) + end + end + + # Request message for `TestIamPermissions` method. + class TestIamPermissionsRequest + include Google::Apis::Core::Hashable + + # The set of permissions to check for the `resource`. Permissions with + # wildcards (such as '*' or 'storage.*') are not allowed. For more + # information see + # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions). + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # Response message for `TestIamPermissions` method. + class TestIamPermissionsResponse + include Google::Apis::Core::Hashable + + # A subset of `TestPermissionsRequest.permissions` that the caller is + # allowed. + # Corresponds to the JSON property `permissions` + # @return [Array] + attr_accessor :permissions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @permissions = args[:permissions] if args.key?(:permissions) + end + end + + # The UndeleteFolder request message. + class UndeleteFolderRequest + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v2/representations.rb b/generated/google/apis/cloudresourcemanager_v2/representations.rb new file mode 100644 index 000000000..cba9df7b8 --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2/representations.rb @@ -0,0 +1,304 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'date' +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudresourcemanagerV2 + + class AuditConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditLogConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Binding + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Folder + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FolderOperation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FolderOperationError + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListFoldersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MoveFolderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Operation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Policy + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ProjectCreationStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SearchFoldersRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SearchFoldersResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SetIamPolicyRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Status + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TestIamPermissionsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class UndeleteFolderRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_log_configs, as: 'auditLogConfigs', class: Google::Apis::CloudresourcemanagerV2::AuditLogConfig, decorator: Google::Apis::CloudresourcemanagerV2::AuditLogConfig::Representation + + property :service, as: 'service' + end + end + + class AuditLogConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :exempted_members, as: 'exemptedMembers' + property :log_type, as: 'logType' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :members, as: 'members' + property :role, as: 'role' + end + end + + class Folder + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :display_name, as: 'displayName' + property :lifecycle_state, as: 'lifecycleState' + property :name, as: 'name' + property :parent, as: 'parent' + end + end + + class FolderOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_parent, as: 'destinationParent' + property :display_name, as: 'displayName' + property :operation_type, as: 'operationType' + property :source_parent, as: 'sourceParent' + end + end + + class FolderOperationError + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_message_id, as: 'errorMessageId' + end + end + + class GetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class ListFoldersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :folders, as: 'folders', class: Google::Apis::CloudresourcemanagerV2::Folder, decorator: Google::Apis::CloudresourcemanagerV2::Folder::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class MoveFolderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :destination_parent, as: 'destinationParent' + end + end + + class Operation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::CloudresourcemanagerV2::Status, decorator: Google::Apis::CloudresourcemanagerV2::Status::Representation + + hash :metadata, as: 'metadata' + property :name, as: 'name' + hash :response, as: 'response' + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :audit_configs, as: 'auditConfigs', class: Google::Apis::CloudresourcemanagerV2::AuditConfig, decorator: Google::Apis::CloudresourcemanagerV2::AuditConfig::Representation + + collection :bindings, as: 'bindings', class: Google::Apis::CloudresourcemanagerV2::Binding, decorator: Google::Apis::CloudresourcemanagerV2::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + property :version, as: 'version' + end + end + + class ProjectCreationStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :create_time, as: 'createTime' + property :gettable, as: 'gettable' + property :ready, as: 'ready' + end + end + + class SearchFoldersRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :page_size, as: 'pageSize' + property :page_token, as: 'pageToken' + property :query, as: 'query' + end + end + + class SearchFoldersResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :folders, as: 'folders', class: Google::Apis::CloudresourcemanagerV2::Folder, decorator: Google::Apis::CloudresourcemanagerV2::Folder::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::CloudresourcemanagerV2::Policy, decorator: Google::Apis::CloudresourcemanagerV2::Policy::Representation + + property :update_mask, as: 'updateMask' + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + collection :details, as: 'details' + property :message, as: 'message' + end + end + + class TestIamPermissionsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class TestIamPermissionsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :permissions, as: 'permissions' + end + end + + class UndeleteFolderRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + end + end +end diff --git a/generated/google/apis/cloudresourcemanager_v2/service.rb b/generated/google/apis/cloudresourcemanager_v2/service.rb new file mode 100644 index 000000000..a290796ed --- /dev/null +++ b/generated/google/apis/cloudresourcemanager_v2/service.rb @@ -0,0 +1,534 @@ +# Copyright 2015 Google Inc. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +require 'google/apis/core/base_service' +require 'google/apis/core/json_representation' +require 'google/apis/core/hashable' +require 'google/apis/errors' + +module Google + module Apis + module CloudresourcemanagerV2 + # Cloud Resource Manager API + # + # The Google Cloud Resource Manager API provides methods for creating, reading, + # and updating project metadata. + # + # @example + # require 'google/apis/cloudresourcemanager_v2' + # + # Cloudresourcemanager = Google::Apis::CloudresourcemanagerV2 # Alias the module + # service = Cloudresourcemanager::CloudResourceManagerService.new + # + # @see https://cloud.google.com/resource-manager + class CloudResourceManagerService < Google::Apis::Core::BaseService + # @return [String] + # API key. Your API key identifies your project and provides you with API access, + # quota, and reports. Required unless you provide an OAuth 2.0 token. + attr_accessor :key + + # @return [String] + # 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. + attr_accessor :quota_user + + def initialize + super('https://content-cloudresourcemanager.googleapis.com/', '') + @batch_path = 'batch' + end + + # Creates a Folder in the resource hierarchy. + # Returns an Operation which can be used to track the progress of the + # folder creation workflow. + # Upon success the Operation.response field will be populated with the + # created Folder. + # In order to succeed, the addition of this new Folder must not violate + # the Folder naming, height or fanout constraints. + # + The Folder's display_name must be distinct from all other Folder's that + # share its parent. + # + The addition of the Folder must not cause the active Folder hierarchy + # to exceed a height of 4. Note, the full active + deleted Folder hierarchy + # is allowed to reach a height of 8; this provides additional headroom when + # moving folders that contain deleted folders. + # + The addition of the Folder must not cause the total number of Folders + # under its parent to exceed 100. + # If the operation fails due to a folder constraint violation, + # a PreconditionFailure explaining the violation will be returned. + # If the failure occurs synchronously then the PreconditionFailure + # will be returned via the Status.details field and if it occurs + # asynchronously then the PreconditionFailure will be returned + # via the the Operation.error field. + # The caller must have `resourcemanager.folders.create` permission on the + # identified parent. + # @param [Google::Apis::CloudresourcemanagerV2::Folder] folder_object + # @param [String] parent + # The resource name of the new Folder's parent. + # Must be of the form `folders/`folder_id`` or `organizations/`org_id``. + # @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::CloudresourcemanagerV2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Operation] + # + # @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 create_folder(folder_object = nil, parent: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/folders', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation + command.request_object = folder_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::Operation::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Operation + command.query['parent'] = parent unless parent.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Requests deletion of a Folder. The Folder is moved into the + # DELETE_REQUESTED state + # immediately, and is deleted approximately 30 days later. This method may + # only be called on an empty Folder in the + # ACTIVE state, where a Folder is empty if + # it doesn't contain any Folders or Projects in the + # ACTIVE state. + # The caller must have `resourcemanager.folders.delete` permission on the + # identified folder. + # @param [String] name + # the resource name of the Folder to be deleted. + # Must be of the form `folders/`folder_id``. + # @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::CloudresourcemanagerV2::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Folder] + # + # @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 delete_folder(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Folder + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Retrieves a Folder identified by the supplied resource name. + # Valid Folder resource names have the format `folders/`folder_id`` + # (for example, `folders/1234`). + # The caller must have `resourcemanager.folders.get` permission on the + # identified folder. + # @param [String] name + # The resource name of the Folder to retrieve. + # Must be of the form `folders/`folder_id``. + # @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::CloudresourcemanagerV2::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Folder] + # + # @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 get_folder(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Folder + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Gets the access control policy for a Folder. The returned policy may be + # empty if no such policy or resource exists. The `resource` field should + # be the Folder's resource name, e.g. "folders/1234". + # The caller must have `resourcemanager.folders.getIamPolicy` permission + # on the identified folder. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV2::GetIamPolicyRequest] get_iam_policy_request_object + # @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::CloudresourcemanagerV2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Policy] + # + # @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 get_folder_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+resource}:getIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::GetIamPolicyRequest::Representation + command.request_object = get_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Lists the Folders that are direct descendants of supplied parent resource. + # List provides a strongly consistent view of the Folders underneath + # the specified parent resource. + # List returns Folders sorted based upon the (ascending) lexical ordering + # of their display_name. + # The caller must have `resourcemanager.folders.list` permission on the + # identified parent. + # @param [Fixnum] page_size + # The maximum number of Folders to return in the response. + # This field is optional. + # @param [String] page_token + # A pagination token returned from a previous call to `ListFolders` + # that indicates where this listing should continue from. + # This field is optional. + # @param [String] parent + # The resource name of the Organization or Folder whose Folders are + # being listed. + # Must be of the form `folders/`folder_id`` or `organizations/`org_id``. + # Access to this method is controlled by checking the + # `resourcemanager.folders.list` permission on the `parent`. + # @param [Boolean] show_deleted + # Controls whether Folders in the + # DELETE_REQUESTED + # state should be returned. Defaults to false. This field is optional. + # @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::CloudresourcemanagerV2::ListFoldersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::ListFoldersResponse] + # + # @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_folders(page_size: nil, page_token: nil, parent: nil, show_deleted: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v2/folders', options) + command.response_representation = Google::Apis::CloudresourcemanagerV2::ListFoldersResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::ListFoldersResponse + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['parent'] = parent unless parent.nil? + command.query['showDeleted'] = show_deleted unless show_deleted.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Moves a Folder under a new resource parent. + # Returns an Operation which can be used to track the progress of the + # folder move workflow. + # Upon success the Operation.response field will be populated with the + # moved Folder. + # Upon failure, a FolderOperationError categorizing the failure cause will + # be returned - if the failure occurs synchronously then the + # FolderOperationError will be returned via the Status.details field + # and if it occurs asynchronously then the FolderOperation will be returned + # via the the Operation.error field. + # In addition, the Operation.metadata field will be populated with a + # FolderOperation message as an aid to stateless clients. + # Folder moves will be rejected if they violate either the naming, height + # or fanout constraints described in the + # CreateFolder documentation. + # The caller must have `resourcemanager.folders.move` permission on the + # folder's current and proposed new parent. + # @param [String] name + # The resource name of the Folder to move. + # Must be of the form folders/`folder_id` + # @param [Google::Apis::CloudresourcemanagerV2::MoveFolderRequest] move_folder_request_object + # @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::CloudresourcemanagerV2::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Operation] + # + # @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 move_folder(name, move_folder_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+name}:move', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::MoveFolderRequest::Representation + command.request_object = move_folder_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::Operation::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Operation + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Updates a Folder, changing its display_name. + # Changes to the folder display_name will be rejected if they violate either + # the display_name formatting rules or naming constraints described in + # the CreateFolder documentation. + # The Folder's display name must start and end with a letter or digit, + # may contain letters, digits, spaces, hyphens and underscores and can be + # no longer than 30 characters. This is captured by the regular expression: + # [\p`L`\p`N`](`\p`L`\p`N`_- ]`0,28`[\p`L`\p`N`])?. + # The caller must have `resourcemanager.folders.update` permission on the + # identified folder. + # If the update fails due to the unique name constraint then a + # PreconditionFailure explaining this violation will be returned + # in the Status.details field. + # @param [String] name + # Output only. The resource name of the Folder. + # Its format is `folders/`folder_id``, for example: "folders/1234". + # @param [Google::Apis::CloudresourcemanagerV2::Folder] folder_object + # @param [String] update_mask + # Fields to be updated. + # Only the `display_name` can be updated. + # @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::CloudresourcemanagerV2::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Folder] + # + # @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 patch_folder(name, folder_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:patch, 'v2/{+name}', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation + command.request_object = folder_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Folder + command.params['name'] = name unless name.nil? + command.query['updateMask'] = update_mask unless update_mask.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Search for folders that match specific filter criteria. + # Search provides an eventually consistent view of the folders a user has + # access to which meet the specified filter criteria. + # This will only return folders on which the caller has the + # permission `resourcemanager.folders.get`. + # @param [Google::Apis::CloudresourcemanagerV2::SearchFoldersRequest] search_folders_request_object + # @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::CloudresourcemanagerV2::SearchFoldersResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::SearchFoldersResponse] + # + # @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 search_folders(search_folders_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/folders:search', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::SearchFoldersRequest::Representation + command.request_object = search_folders_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::SearchFoldersResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::SearchFoldersResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Sets the access control policy on a Folder, replacing any existing policy. + # The `resource` field should be the Folder's resource name, e.g. + # "folders/1234". + # The caller must have `resourcemanager.folders.setIamPolicy` permission + # on the identified folder. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV2::SetIamPolicyRequest] set_iam_policy_request_object + # @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::CloudresourcemanagerV2::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Policy] + # + # @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 set_folder_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Policy + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Returns permissions that a caller has on the specified Folder. + # The `resource` field should be the Folder's resource name, + # e.g. "folders/1234". + # There are no permissions required for making this API call. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. + # See the operation documentation for the appropriate value for this field. + # @param [Google::Apis::CloudresourcemanagerV2::TestIamPermissionsRequest] test_iam_permissions_request_object + # @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::CloudresourcemanagerV2::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::TestIamPermissionsResponse] + # + # @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 test_folder_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::TestIamPermissionsResponse + command.params['resource'] = resource unless resource.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Cancels the deletion request for a Folder. This method may only be + # called on a Folder in the + # DELETE_REQUESTED state. + # In order to succeed, the Folder's parent must be in the + # ACTIVE state. + # In addition, reintroducing the folder into the tree must not violate + # folder naming, height and fanout constraints described in the + # CreateFolder documentation. + # The caller must have `resourcemanager.folders.undelete` permission on the + # identified folder. + # @param [String] name + # The resource name of the Folder to undelete. + # Must be of the form `folders/`folder_id``. + # @param [Google::Apis::CloudresourcemanagerV2::UndeleteFolderRequest] undelete_folder_request_object + # @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::CloudresourcemanagerV2::Folder] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV2::Folder] + # + # @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 undelete_folder(name, undelete_folder_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v2/{+name}:undelete', options) + command.request_representation = Google::Apis::CloudresourcemanagerV2::UndeleteFolderRequest::Representation + command.request_object = undelete_folder_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV2::Folder::Representation + command.response_class = Google::Apis::CloudresourcemanagerV2::Folder + command.params['name'] = name unless name.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + protected + + def apply_command_defaults(command) + command.query['key'] = key unless key.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + end + end + end + end +end diff --git a/generated/google/apis/serviceconsumermanagement_v1.rb b/generated/google/apis/serviceconsumermanagement_v1.rb index 7ecbbc520..a15e3a629 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 = '20180306' + REVISION = '20180310' # 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 2dec3d4ab..a9fd40a88 100644 --- a/generated/google/apis/serviceconsumermanagement_v1/classes.rb +++ b/generated/google/apis/serviceconsumermanagement_v1/classes.rb @@ -22,7 +22,7 @@ module Google module Apis module ServiceconsumermanagementV1 - # Request to add a newly created and configured tenant project to tenancy + # Request to add a newly created and configured tenant project to a tenancy # unit. class AddTenantProjectRequest include Google::Apis::Core::Hashable @@ -524,7 +524,7 @@ module Google end end - # Describes billing configuration for a new Tenant Project + # Describes billing configuration for a new tenant project. class BillingConfig include Google::Apis::Core::Hashable @@ -705,13 +705,13 @@ module Google class CreateTenancyUnitRequest include Google::Apis::Core::Hashable - # Optional producer provided identifier of the tenancy unit - # Must be no longer than 40 characters and preferably URI friendly - # If it is not provided, UID for the tenancy unit will be auto generated + # Optional producer provided identifier of the tenancy unit. + # Must be no longer than 40 characters and preferably URI friendly. + # If it is not provided, a UID for the tenancy unit will be auto generated. # It must be unique across a service. # If the tenancy unit already exists for the service and consumer pair, - # CreateTenancyUnit will return existing tenancy unit if provided identifier - # is identical or empty, otherwise the call will fail. + # `CreateTenancyUnit` will return existing the tenancy unit if provided + # identifier is identical or empty, otherwise the call will fail. # Corresponds to the JSON property `tenancyUnitId` # @return [String] attr_accessor :tenancy_unit_id @@ -1661,7 +1661,7 @@ module Google # @return [String] attr_accessor :next_page_token - # Tenancy Units matching the request. + # Tenancy units matching the request. # Corresponds to the JSON property `tenancyUnits` # @return [Array] attr_accessor :tenancy_units @@ -2624,7 +2624,7 @@ module Google include Google::Apis::Core::Hashable # Uses the same format as in IAM policy. - # `member` must include both prefix and id. E.g., `user:`emailId``, + # `member` must include both prefix and ID. For example, `user:`emailId``, # `serviceAccount:`emailId``, `group:`emailId``. # Corresponds to the JSON property `members` # @return [Array] @@ -3357,7 +3357,7 @@ module Google # @return [String] attr_accessor :account_id - # Roles for the service account above on tenant project. + # Roles for the associated service account for the tenant project. # Corresponds to the JSON property `tenantProjectRoles` # @return [Array] attr_accessor :tenant_project_roles @@ -3600,8 +3600,8 @@ module Google class TenancyUnit include Google::Apis::Core::Hashable - # @OutputOnly Cloud resource One Platform Name of the consumer of this - # service. For example 'projects/123456'. + # @OutputOnly Cloud resource name of the consumer of this service. + # For example 'projects/123456'. # Corresponds to the JSON property `consumer` # @return [String] attr_accessor :consumer @@ -3651,7 +3651,7 @@ module Google class TenantProjectConfig include Google::Apis::Core::Hashable - # Describes billing configuration for a new Tenant Project + # Describes billing configuration for a new tenant project. # Corresponds to the JSON property `billingConfig` # @return [Google::Apis::ServiceconsumermanagementV1::BillingConfig] attr_accessor :billing_config @@ -3677,14 +3677,14 @@ module Google # Google Cloud API names of services that will be activated on this project # during provisioning. If any of these services can not be activated, - # addTenantProject method will fail. + # the `addTenantProject` method will fail. # For example: 'compute.googleapis.com','cloudfunctions.googleapis.com' # Corresponds to the JSON property `services` # @return [Array] attr_accessor :services # Describes policy settings that need to be applied to a newly - # created Tenant Project. + # created tenant project. # Corresponds to the JSON property `tenantProjectPolicy` # @return [Google::Apis::ServiceconsumermanagementV1::TenantProjectPolicy] attr_accessor :tenant_project_policy @@ -3705,7 +3705,7 @@ module Google end # Describes policy settings that need to be applied to a newly - # created Tenant Project. + # created tenant project. class TenantProjectPolicy include Google::Apis::Core::Hashable @@ -3734,7 +3734,7 @@ module Google include Google::Apis::Core::Hashable # @OutputOnly Identifier of the tenant resource. - # For cloud projects it is in the form 'projects/`number`'. + # For cloud projects, it is in the form 'projects/`number`'. # For example 'projects/123456'. # Corresponds to the JSON property `resource` # @return [String] diff --git a/generated/google/apis/serviceconsumermanagement_v1/service.rb b/generated/google/apis/serviceconsumermanagement_v1/service.rb index 3b0aaaddd..0306bdef7 100644 --- a/generated/google/apis/serviceconsumermanagement_v1/service.rb +++ b/generated/google/apis/serviceconsumermanagement_v1/service.rb @@ -209,8 +209,9 @@ module Google # `service` the name of a service, for example 'service.googleapis.com'. # @param [Fixnum] page_size # The maximum number of results returned by this request. Currently, the - # default maximum is set to 1000. If page_size is not provided or provided a - # number larger than 1000, it will be automatically set to 1000. + # default maximum is set to 1000. If page_size is not provided or the size + # provided is a number larger than 1000, it will be automatically set to + # 1000. # Optional. # @param [String] page_token # The continuation token, which is used to page through large result sets. @@ -221,7 +222,7 @@ module Google # Set a query ``expression`` for querying tenancy units. Your ``expression`` # must be in the format: `field_name=literal_string`. The `field_name` is the # name of the field you want to compare. Supported fields are - # `tenant_resources.tag` and`tenant_resources.resource`. + # `tenant_resources.tag` and `tenant_resources.resource`. # For example, to search tenancy units that contain at least one tenant # resource with given tag 'xyz', use query `tenant_resources.tag=xyz`. # To search tenancy units that contain at least one tenant resource with @@ -262,10 +263,10 @@ module Google end # Add a new tenant project to the tenancy unit. - # There can be at most 512 tenant projects in a tenancy units. - # If there are previously failed AddTenantProject calls, you might need to - # call RemoveTenantProject first to clean them before you can make another - # AddTenantProject with the same tag. + # There can be at most 512 tenant projects in a tenancy unit. + # If there are previously failed `AddTenantProject` calls, you might need to + # call `RemoveTenantProject` first to clean them before you can make another + # `AddTenantProject` with the same tag. # Operation. # @param [String] parent # Name of the tenancy unit. @@ -337,7 +338,7 @@ module Google execute_or_queue_command(command, &block) end - # Delete tenancy unit. Before the tenancy unit is deleted, there should be + # Delete a tenancy unit. Before the tenancy unit is deleted, there should be # no tenant resource in it. # Operation. # @param [String] name @@ -369,10 +370,10 @@ module Google execute_or_queue_command(command, &block) end - # Find tenancy unit for a service and consumer. - # This method should not be used in producers' runtime path, e.g. finding - # the tenant project number when creating VMs. Producers should persist - # the tenant project information after the project is created. + # Find the tenancy unit for a service and consumer. + # This method should not be used in producers' runtime path, for example + # finding the tenant project number when creating VMs. Producers should + # persist the tenant project information after the project is created. # @param [String] parent # Service and consumer. Required. # services/`service`/`collection id`/`resource id` diff --git a/generated/google/apis/sheets_v4.rb b/generated/google/apis/sheets_v4.rb index faa25ddcb..1994d7e6d 100644 --- a/generated/google/apis/sheets_v4.rb +++ b/generated/google/apis/sheets_v4.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/sheets/ module SheetsV4 VERSION = 'V4' - REVISION = '20180301' + REVISION = '20180309' # View and manage the files in your Google Drive AUTH_DRIVE = 'https://www.googleapis.com/auth/drive' diff --git a/generated/google/apis/sheets_v4/classes.rb b/generated/google/apis/sheets_v4/classes.rb index b7cb3eded..f46587302 100644 --- a/generated/google/apis/sheets_v4/classes.rb +++ b/generated/google/apis/sheets_v4/classes.rb @@ -1156,7 +1156,7 @@ module Google attr_accessor :series # The stacked type for charts that support vertical stacking. - # Applies to Area, Bar, Column, and Stepped Area charts. + # Applies to Area, Bar, Column, Combo, and Stepped Area charts. # Corresponds to the JSON property `stackedType` # @return [String] attr_accessor :stacked_type @@ -2773,6 +2773,11 @@ module Google # @return [Google::Apis::SheetsV4::TextPosition] attr_accessor :title_text_position + # A Treemap chart. + # Corresponds to the JSON property `treemapChart` + # @return [Google::Apis::SheetsV4::TreemapChartSpec] + attr_accessor :treemap_chart + # A waterfall chart. # Corresponds to the JSON property `waterfallChart` # @return [Google::Apis::SheetsV4::WaterfallChartSpec] @@ -2801,6 +2806,7 @@ module Google @title = args[:title] if args.key?(:title) @title_text_format = args[:title_text_format] if args.key?(:title_text_format) @title_text_position = args[:title_text_position] if args.key?(:title_text_position) + @treemap_chart = args[:treemap_chart] if args.key?(:treemap_chart) @waterfall_chart = args[:waterfall_chart] if args.key?(:waterfall_chart) end end @@ -7954,6 +7960,630 @@ module Google end end + # A color scale for a treemap chart. + class TreemapChartColorScale + include Google::Apis::Core::Hashable + + # Represents a color in the RGBA color space. This representation is designed + # for simplicity of conversion to/from color representations in various + # languages over compactness; for example, the fields of this representation + # can be trivially provided to the constructor of "java.awt.Color" in Java; it + # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" + # method in iOS; and, with just a little work, it can be easily formatted into + # a CSS "rgba()" string in JavaScript, as well. Here are some examples: + # Example (Java): + # import com.google.type.Color; + # // ... + # public static java.awt.Color fromProto(Color protocolor) ` + # float alpha = protocolor.hasAlpha() + # ? protocolor.getAlpha().getValue() + # : 1.0; + # return new java.awt.Color( + # protocolor.getRed(), + # protocolor.getGreen(), + # protocolor.getBlue(), + # alpha); + # ` + # public static Color toProto(java.awt.Color color) ` + # float red = (float) color.getRed(); + # float green = (float) color.getGreen(); + # float blue = (float) color.getBlue(); + # float denominator = 255.0; + # Color.Builder resultBuilder = + # Color + # .newBuilder() + # .setRed(red / denominator) + # .setGreen(green / denominator) + # .setBlue(blue / denominator); + # int alpha = color.getAlpha(); + # if (alpha != 255) ` + # result.setAlpha( + # FloatValue + # .newBuilder() + # .setValue(((float) alpha) / denominator) + # .build()); + # ` + # return resultBuilder.build(); + # ` + # // ... + # Example (iOS / Obj-C): + # // ... + # static UIColor* fromProto(Color* protocolor) ` + # float red = [protocolor red]; + # float green = [protocolor green]; + # float blue = [protocolor blue]; + # FloatValue* alpha_wrapper = [protocolor alpha]; + # float alpha = 1.0; + # if (alpha_wrapper != nil) ` + # alpha = [alpha_wrapper value]; + # ` + # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; + # ` + # static Color* toProto(UIColor* color) ` + # CGFloat red, green, blue, alpha; + # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) ` + # return nil; + # ` + # Color* result = [Color alloc] init]; + # [result setRed:red]; + # [result setGreen:green]; + # [result setBlue:blue]; + # if (alpha <= 0.9999) ` + # [result setAlpha:floatWrapperWithValue(alpha)]; + # ` + # [result autorelease]; + # return result; + # ` + # // ... + # Example (JavaScript): + # // ... + # var protoToCssColor = function(rgb_color) ` + # var redFrac = rgb_color.red || 0.0; + # var greenFrac = rgb_color.green || 0.0; + # var blueFrac = rgb_color.blue || 0.0; + # var red = Math.floor(redFrac * 255); + # var green = Math.floor(greenFrac * 255); + # var blue = Math.floor(blueFrac * 255); + # if (!('alpha' in rgb_color)) ` + # return rgbToCssColor_(red, green, blue); + # ` + # var alphaFrac = rgb_color.alpha.value || 0.0; + # var rgbParams = [red, green, blue].join(','); + # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); + # `; + # var rgbToCssColor_ = function(red, green, blue) ` + # var rgbNumber = new Number((red << 16) | (green << 8) | blue); + # var hexString = rgbNumber.toString(16); + # var missingZeros = 6 - hexString.length; + # var resultBuilder = ['#']; + # for (var i = 0; i < missingZeros; i++) ` + # resultBuilder.push('0'); + # ` + # resultBuilder.push(hexString); + # return resultBuilder.join(''); + # `; + # // ... + # Corresponds to the JSON property `maxValueColor` + # @return [Google::Apis::SheetsV4::Color] + attr_accessor :max_value_color + + # Represents a color in the RGBA color space. This representation is designed + # for simplicity of conversion to/from color representations in various + # languages over compactness; for example, the fields of this representation + # can be trivially provided to the constructor of "java.awt.Color" in Java; it + # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" + # method in iOS; and, with just a little work, it can be easily formatted into + # a CSS "rgba()" string in JavaScript, as well. Here are some examples: + # Example (Java): + # import com.google.type.Color; + # // ... + # public static java.awt.Color fromProto(Color protocolor) ` + # float alpha = protocolor.hasAlpha() + # ? protocolor.getAlpha().getValue() + # : 1.0; + # return new java.awt.Color( + # protocolor.getRed(), + # protocolor.getGreen(), + # protocolor.getBlue(), + # alpha); + # ` + # public static Color toProto(java.awt.Color color) ` + # float red = (float) color.getRed(); + # float green = (float) color.getGreen(); + # float blue = (float) color.getBlue(); + # float denominator = 255.0; + # Color.Builder resultBuilder = + # Color + # .newBuilder() + # .setRed(red / denominator) + # .setGreen(green / denominator) + # .setBlue(blue / denominator); + # int alpha = color.getAlpha(); + # if (alpha != 255) ` + # result.setAlpha( + # FloatValue + # .newBuilder() + # .setValue(((float) alpha) / denominator) + # .build()); + # ` + # return resultBuilder.build(); + # ` + # // ... + # Example (iOS / Obj-C): + # // ... + # static UIColor* fromProto(Color* protocolor) ` + # float red = [protocolor red]; + # float green = [protocolor green]; + # float blue = [protocolor blue]; + # FloatValue* alpha_wrapper = [protocolor alpha]; + # float alpha = 1.0; + # if (alpha_wrapper != nil) ` + # alpha = [alpha_wrapper value]; + # ` + # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; + # ` + # static Color* toProto(UIColor* color) ` + # CGFloat red, green, blue, alpha; + # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) ` + # return nil; + # ` + # Color* result = [Color alloc] init]; + # [result setRed:red]; + # [result setGreen:green]; + # [result setBlue:blue]; + # if (alpha <= 0.9999) ` + # [result setAlpha:floatWrapperWithValue(alpha)]; + # ` + # [result autorelease]; + # return result; + # ` + # // ... + # Example (JavaScript): + # // ... + # var protoToCssColor = function(rgb_color) ` + # var redFrac = rgb_color.red || 0.0; + # var greenFrac = rgb_color.green || 0.0; + # var blueFrac = rgb_color.blue || 0.0; + # var red = Math.floor(redFrac * 255); + # var green = Math.floor(greenFrac * 255); + # var blue = Math.floor(blueFrac * 255); + # if (!('alpha' in rgb_color)) ` + # return rgbToCssColor_(red, green, blue); + # ` + # var alphaFrac = rgb_color.alpha.value || 0.0; + # var rgbParams = [red, green, blue].join(','); + # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); + # `; + # var rgbToCssColor_ = function(red, green, blue) ` + # var rgbNumber = new Number((red << 16) | (green << 8) | blue); + # var hexString = rgbNumber.toString(16); + # var missingZeros = 6 - hexString.length; + # var resultBuilder = ['#']; + # for (var i = 0; i < missingZeros; i++) ` + # resultBuilder.push('0'); + # ` + # resultBuilder.push(hexString); + # return resultBuilder.join(''); + # `; + # // ... + # Corresponds to the JSON property `midValueColor` + # @return [Google::Apis::SheetsV4::Color] + attr_accessor :mid_value_color + + # Represents a color in the RGBA color space. This representation is designed + # for simplicity of conversion to/from color representations in various + # languages over compactness; for example, the fields of this representation + # can be trivially provided to the constructor of "java.awt.Color" in Java; it + # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" + # method in iOS; and, with just a little work, it can be easily formatted into + # a CSS "rgba()" string in JavaScript, as well. Here are some examples: + # Example (Java): + # import com.google.type.Color; + # // ... + # public static java.awt.Color fromProto(Color protocolor) ` + # float alpha = protocolor.hasAlpha() + # ? protocolor.getAlpha().getValue() + # : 1.0; + # return new java.awt.Color( + # protocolor.getRed(), + # protocolor.getGreen(), + # protocolor.getBlue(), + # alpha); + # ` + # public static Color toProto(java.awt.Color color) ` + # float red = (float) color.getRed(); + # float green = (float) color.getGreen(); + # float blue = (float) color.getBlue(); + # float denominator = 255.0; + # Color.Builder resultBuilder = + # Color + # .newBuilder() + # .setRed(red / denominator) + # .setGreen(green / denominator) + # .setBlue(blue / denominator); + # int alpha = color.getAlpha(); + # if (alpha != 255) ` + # result.setAlpha( + # FloatValue + # .newBuilder() + # .setValue(((float) alpha) / denominator) + # .build()); + # ` + # return resultBuilder.build(); + # ` + # // ... + # Example (iOS / Obj-C): + # // ... + # static UIColor* fromProto(Color* protocolor) ` + # float red = [protocolor red]; + # float green = [protocolor green]; + # float blue = [protocolor blue]; + # FloatValue* alpha_wrapper = [protocolor alpha]; + # float alpha = 1.0; + # if (alpha_wrapper != nil) ` + # alpha = [alpha_wrapper value]; + # ` + # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; + # ` + # static Color* toProto(UIColor* color) ` + # CGFloat red, green, blue, alpha; + # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) ` + # return nil; + # ` + # Color* result = [Color alloc] init]; + # [result setRed:red]; + # [result setGreen:green]; + # [result setBlue:blue]; + # if (alpha <= 0.9999) ` + # [result setAlpha:floatWrapperWithValue(alpha)]; + # ` + # [result autorelease]; + # return result; + # ` + # // ... + # Example (JavaScript): + # // ... + # var protoToCssColor = function(rgb_color) ` + # var redFrac = rgb_color.red || 0.0; + # var greenFrac = rgb_color.green || 0.0; + # var blueFrac = rgb_color.blue || 0.0; + # var red = Math.floor(redFrac * 255); + # var green = Math.floor(greenFrac * 255); + # var blue = Math.floor(blueFrac * 255); + # if (!('alpha' in rgb_color)) ` + # return rgbToCssColor_(red, green, blue); + # ` + # var alphaFrac = rgb_color.alpha.value || 0.0; + # var rgbParams = [red, green, blue].join(','); + # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); + # `; + # var rgbToCssColor_ = function(red, green, blue) ` + # var rgbNumber = new Number((red << 16) | (green << 8) | blue); + # var hexString = rgbNumber.toString(16); + # var missingZeros = 6 - hexString.length; + # var resultBuilder = ['#']; + # for (var i = 0; i < missingZeros; i++) ` + # resultBuilder.push('0'); + # ` + # resultBuilder.push(hexString); + # return resultBuilder.join(''); + # `; + # // ... + # Corresponds to the JSON property `minValueColor` + # @return [Google::Apis::SheetsV4::Color] + attr_accessor :min_value_color + + # Represents a color in the RGBA color space. This representation is designed + # for simplicity of conversion to/from color representations in various + # languages over compactness; for example, the fields of this representation + # can be trivially provided to the constructor of "java.awt.Color" in Java; it + # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" + # method in iOS; and, with just a little work, it can be easily formatted into + # a CSS "rgba()" string in JavaScript, as well. Here are some examples: + # Example (Java): + # import com.google.type.Color; + # // ... + # public static java.awt.Color fromProto(Color protocolor) ` + # float alpha = protocolor.hasAlpha() + # ? protocolor.getAlpha().getValue() + # : 1.0; + # return new java.awt.Color( + # protocolor.getRed(), + # protocolor.getGreen(), + # protocolor.getBlue(), + # alpha); + # ` + # public static Color toProto(java.awt.Color color) ` + # float red = (float) color.getRed(); + # float green = (float) color.getGreen(); + # float blue = (float) color.getBlue(); + # float denominator = 255.0; + # Color.Builder resultBuilder = + # Color + # .newBuilder() + # .setRed(red / denominator) + # .setGreen(green / denominator) + # .setBlue(blue / denominator); + # int alpha = color.getAlpha(); + # if (alpha != 255) ` + # result.setAlpha( + # FloatValue + # .newBuilder() + # .setValue(((float) alpha) / denominator) + # .build()); + # ` + # return resultBuilder.build(); + # ` + # // ... + # Example (iOS / Obj-C): + # // ... + # static UIColor* fromProto(Color* protocolor) ` + # float red = [protocolor red]; + # float green = [protocolor green]; + # float blue = [protocolor blue]; + # FloatValue* alpha_wrapper = [protocolor alpha]; + # float alpha = 1.0; + # if (alpha_wrapper != nil) ` + # alpha = [alpha_wrapper value]; + # ` + # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; + # ` + # static Color* toProto(UIColor* color) ` + # CGFloat red, green, blue, alpha; + # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) ` + # return nil; + # ` + # Color* result = [Color alloc] init]; + # [result setRed:red]; + # [result setGreen:green]; + # [result setBlue:blue]; + # if (alpha <= 0.9999) ` + # [result setAlpha:floatWrapperWithValue(alpha)]; + # ` + # [result autorelease]; + # return result; + # ` + # // ... + # Example (JavaScript): + # // ... + # var protoToCssColor = function(rgb_color) ` + # var redFrac = rgb_color.red || 0.0; + # var greenFrac = rgb_color.green || 0.0; + # var blueFrac = rgb_color.blue || 0.0; + # var red = Math.floor(redFrac * 255); + # var green = Math.floor(greenFrac * 255); + # var blue = Math.floor(blueFrac * 255); + # if (!('alpha' in rgb_color)) ` + # return rgbToCssColor_(red, green, blue); + # ` + # var alphaFrac = rgb_color.alpha.value || 0.0; + # var rgbParams = [red, green, blue].join(','); + # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); + # `; + # var rgbToCssColor_ = function(red, green, blue) ` + # var rgbNumber = new Number((red << 16) | (green << 8) | blue); + # var hexString = rgbNumber.toString(16); + # var missingZeros = 6 - hexString.length; + # var resultBuilder = ['#']; + # for (var i = 0; i < missingZeros; i++) ` + # resultBuilder.push('0'); + # ` + # resultBuilder.push(hexString); + # return resultBuilder.join(''); + # `; + # // ... + # Corresponds to the JSON property `noDataColor` + # @return [Google::Apis::SheetsV4::Color] + attr_accessor :no_data_color + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @max_value_color = args[:max_value_color] if args.key?(:max_value_color) + @mid_value_color = args[:mid_value_color] if args.key?(:mid_value_color) + @min_value_color = args[:min_value_color] if args.key?(:min_value_color) + @no_data_color = args[:no_data_color] if args.key?(:no_data_color) + end + end + + # A Treemap chart. + class TreemapChartSpec + include Google::Apis::Core::Hashable + + # The data included in a domain or series. + # Corresponds to the JSON property `colorData` + # @return [Google::Apis::SheetsV4::ChartData] + attr_accessor :color_data + + # A color scale for a treemap chart. + # Corresponds to the JSON property `colorScale` + # @return [Google::Apis::SheetsV4::TreemapChartColorScale] + attr_accessor :color_scale + + # Represents a color in the RGBA color space. This representation is designed + # for simplicity of conversion to/from color representations in various + # languages over compactness; for example, the fields of this representation + # can be trivially provided to the constructor of "java.awt.Color" in Java; it + # can also be trivially provided to UIColor's "+colorWithRed:green:blue:alpha" + # method in iOS; and, with just a little work, it can be easily formatted into + # a CSS "rgba()" string in JavaScript, as well. Here are some examples: + # Example (Java): + # import com.google.type.Color; + # // ... + # public static java.awt.Color fromProto(Color protocolor) ` + # float alpha = protocolor.hasAlpha() + # ? protocolor.getAlpha().getValue() + # : 1.0; + # return new java.awt.Color( + # protocolor.getRed(), + # protocolor.getGreen(), + # protocolor.getBlue(), + # alpha); + # ` + # public static Color toProto(java.awt.Color color) ` + # float red = (float) color.getRed(); + # float green = (float) color.getGreen(); + # float blue = (float) color.getBlue(); + # float denominator = 255.0; + # Color.Builder resultBuilder = + # Color + # .newBuilder() + # .setRed(red / denominator) + # .setGreen(green / denominator) + # .setBlue(blue / denominator); + # int alpha = color.getAlpha(); + # if (alpha != 255) ` + # result.setAlpha( + # FloatValue + # .newBuilder() + # .setValue(((float) alpha) / denominator) + # .build()); + # ` + # return resultBuilder.build(); + # ` + # // ... + # Example (iOS / Obj-C): + # // ... + # static UIColor* fromProto(Color* protocolor) ` + # float red = [protocolor red]; + # float green = [protocolor green]; + # float blue = [protocolor blue]; + # FloatValue* alpha_wrapper = [protocolor alpha]; + # float alpha = 1.0; + # if (alpha_wrapper != nil) ` + # alpha = [alpha_wrapper value]; + # ` + # return [UIColor colorWithRed:red green:green blue:blue alpha:alpha]; + # ` + # static Color* toProto(UIColor* color) ` + # CGFloat red, green, blue, alpha; + # if (![color getRed:&red green:&green blue:&blue alpha:&alpha]) ` + # return nil; + # ` + # Color* result = [Color alloc] init]; + # [result setRed:red]; + # [result setGreen:green]; + # [result setBlue:blue]; + # if (alpha <= 0.9999) ` + # [result setAlpha:floatWrapperWithValue(alpha)]; + # ` + # [result autorelease]; + # return result; + # ` + # // ... + # Example (JavaScript): + # // ... + # var protoToCssColor = function(rgb_color) ` + # var redFrac = rgb_color.red || 0.0; + # var greenFrac = rgb_color.green || 0.0; + # var blueFrac = rgb_color.blue || 0.0; + # var red = Math.floor(redFrac * 255); + # var green = Math.floor(greenFrac * 255); + # var blue = Math.floor(blueFrac * 255); + # if (!('alpha' in rgb_color)) ` + # return rgbToCssColor_(red, green, blue); + # ` + # var alphaFrac = rgb_color.alpha.value || 0.0; + # var rgbParams = [red, green, blue].join(','); + # return ['rgba(', rgbParams, ',', alphaFrac, ')'].join(''); + # `; + # var rgbToCssColor_ = function(red, green, blue) ` + # var rgbNumber = new Number((red << 16) | (green << 8) | blue); + # var hexString = rgbNumber.toString(16); + # var missingZeros = 6 - hexString.length; + # var resultBuilder = ['#']; + # for (var i = 0; i < missingZeros; i++) ` + # resultBuilder.push('0'); + # ` + # resultBuilder.push(hexString); + # return resultBuilder.join(''); + # `; + # // ... + # Corresponds to the JSON property `headerColor` + # @return [Google::Apis::SheetsV4::Color] + attr_accessor :header_color + + # True to hide tooltips. + # Corresponds to the JSON property `hideTooltips` + # @return [Boolean] + attr_accessor :hide_tooltips + alias_method :hide_tooltips?, :hide_tooltips + + # The number of additional data levels beyond the labeled levels to be shown + # on the treemap chart. These levels are not interactive and are shown + # without their labels. Defaults to 0 if not specified. + # Corresponds to the JSON property `hintedLevels` + # @return [Fixnum] + attr_accessor :hinted_levels + + # The data included in a domain or series. + # Corresponds to the JSON property `labels` + # @return [Google::Apis::SheetsV4::ChartData] + attr_accessor :labels + + # The number of data levels to show on the treemap chart. These levels are + # interactive and are shown with their labels. Defaults to 2 if not + # specified. + # Corresponds to the JSON property `levels` + # @return [Fixnum] + attr_accessor :levels + + # The maximum possible data value. Cells with values greater than this will + # have the same color as cells with this value. If not specified, defaults + # to the actual maximum value from color_data, or the maximum value from + # size_data if color_data is not specified. + # Corresponds to the JSON property `maxValue` + # @return [Float] + attr_accessor :max_value + + # The minimum possible data value. Cells with values less than this will + # have the same color as cells with this value. If not specified, defaults + # to the actual minimum value from color_data, or the minimum value from + # size_data if color_data is not specified. + # Corresponds to the JSON property `minValue` + # @return [Float] + attr_accessor :min_value + + # The data included in a domain or series. + # Corresponds to the JSON property `parentLabels` + # @return [Google::Apis::SheetsV4::ChartData] + attr_accessor :parent_labels + + # The data included in a domain or series. + # Corresponds to the JSON property `sizeData` + # @return [Google::Apis::SheetsV4::ChartData] + attr_accessor :size_data + + # The format of a run of text in a cell. + # Absent values indicate that the field isn't specified. + # Corresponds to the JSON property `textFormat` + # @return [Google::Apis::SheetsV4::TextFormat] + attr_accessor :text_format + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @color_data = args[:color_data] if args.key?(:color_data) + @color_scale = args[:color_scale] if args.key?(:color_scale) + @header_color = args[:header_color] if args.key?(:header_color) + @hide_tooltips = args[:hide_tooltips] if args.key?(:hide_tooltips) + @hinted_levels = args[:hinted_levels] if args.key?(:hinted_levels) + @labels = args[:labels] if args.key?(:labels) + @levels = args[:levels] if args.key?(:levels) + @max_value = args[:max_value] if args.key?(:max_value) + @min_value = args[:min_value] if args.key?(:min_value) + @parent_labels = args[:parent_labels] if args.key?(:parent_labels) + @size_data = args[:size_data] if args.key?(:size_data) + @text_format = args[:text_format] if args.key?(:text_format) + end + end + # Unmerges cells in the given range. class UnmergeCellsRequest include Google::Apis::Core::Hashable diff --git a/generated/google/apis/sheets_v4/representations.rb b/generated/google/apis/sheets_v4/representations.rb index 370e42a00..c6dd1d1e5 100644 --- a/generated/google/apis/sheets_v4/representations.rb +++ b/generated/google/apis/sheets_v4/representations.rb @@ -934,6 +934,18 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class TreemapChartColorScale + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TreemapChartSpec + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class UnmergeCellsRequest class Representation < Google::Apis::Core::JsonRepresentation; end @@ -1662,6 +1674,8 @@ module Google property :title_text_position, as: 'titleTextPosition', class: Google::Apis::SheetsV4::TextPosition, decorator: Google::Apis::SheetsV4::TextPosition::Representation + property :treemap_chart, as: 'treemapChart', class: Google::Apis::SheetsV4::TreemapChartSpec, decorator: Google::Apis::SheetsV4::TreemapChartSpec::Representation + property :waterfall_chart, as: 'waterfallChart', class: Google::Apis::SheetsV4::WaterfallChartSpec, decorator: Google::Apis::SheetsV4::WaterfallChartSpec::Representation end @@ -2816,6 +2830,45 @@ module Google end end + class TreemapChartColorScale + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :max_value_color, as: 'maxValueColor', class: Google::Apis::SheetsV4::Color, decorator: Google::Apis::SheetsV4::Color::Representation + + property :mid_value_color, as: 'midValueColor', class: Google::Apis::SheetsV4::Color, decorator: Google::Apis::SheetsV4::Color::Representation + + property :min_value_color, as: 'minValueColor', class: Google::Apis::SheetsV4::Color, decorator: Google::Apis::SheetsV4::Color::Representation + + property :no_data_color, as: 'noDataColor', class: Google::Apis::SheetsV4::Color, decorator: Google::Apis::SheetsV4::Color::Representation + + end + end + + class TreemapChartSpec + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :color_data, as: 'colorData', class: Google::Apis::SheetsV4::ChartData, decorator: Google::Apis::SheetsV4::ChartData::Representation + + property :color_scale, as: 'colorScale', class: Google::Apis::SheetsV4::TreemapChartColorScale, decorator: Google::Apis::SheetsV4::TreemapChartColorScale::Representation + + property :header_color, as: 'headerColor', class: Google::Apis::SheetsV4::Color, decorator: Google::Apis::SheetsV4::Color::Representation + + property :hide_tooltips, as: 'hideTooltips' + property :hinted_levels, as: 'hintedLevels' + property :labels, as: 'labels', class: Google::Apis::SheetsV4::ChartData, decorator: Google::Apis::SheetsV4::ChartData::Representation + + property :levels, as: 'levels' + property :max_value, as: 'maxValue' + property :min_value, as: 'minValue' + property :parent_labels, as: 'parentLabels', class: Google::Apis::SheetsV4::ChartData, decorator: Google::Apis::SheetsV4::ChartData::Representation + + property :size_data, as: 'sizeData', class: Google::Apis::SheetsV4::ChartData, decorator: Google::Apis::SheetsV4::ChartData::Representation + + property :text_format, as: 'textFormat', class: Google::Apis::SheetsV4::TextFormat, decorator: Google::Apis::SheetsV4::TextFormat::Representation + + end + end + class UnmergeCellsRequest # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google/apis/slides_v1.rb b/generated/google/apis/slides_v1.rb index 0ce7fb968..482abf6da 100644 --- a/generated/google/apis/slides_v1.rb +++ b/generated/google/apis/slides_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/slides/ module SlidesV1 VERSION = 'V1' - REVISION = '20180301' + REVISION = '20180307' # View and manage the files in your Google Drive AUTH_DRIVE = 'https://www.googleapis.com/auth/drive' diff --git a/generated/google/apis/slides_v1/classes.rb b/generated/google/apis/slides_v1/classes.rb index e3be5f006..686034773 100644 --- a/generated/google/apis/slides_v1/classes.rb +++ b/generated/google/apis/slides_v1/classes.rb @@ -5082,7 +5082,7 @@ module Google # The time at which to end playback, measured in seconds from the beginning # of the video. # If set, the end time should be after the start time. - # If not set or if you set this to a value that exceeds the video duration, + # If not set or if you set this to a value that exceeds the video's length, # the video will be played until its end. # Corresponds to the JSON property `end` # @return [Fixnum] diff --git a/generated/google/apis/storagetransfer_v1.rb b/generated/google/apis/storagetransfer_v1.rb index 891e29df5..a9b369a1d 100644 --- a/generated/google/apis/storagetransfer_v1.rb +++ b/generated/google/apis/storagetransfer_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/storage/transfer module StoragetransferV1 VERSION = 'V1' - REVISION = '20180228' + REVISION = '20180308' # 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/storagetransfer_v1/service.rb b/generated/google/apis/storagetransfer_v1/service.rb index af8fdb42d..3f9286337 100644 --- a/generated/google/apis/storagetransfer_v1/service.rb +++ b/generated/google/apis/storagetransfer_v1/service.rb @@ -44,7 +44,7 @@ module Google attr_accessor :quota_user def initialize - super('https://storagetransfer.googleapis.com/', '') + super('https://content-storagetransfer.googleapis.com/', '') @batch_path = 'batch' end