From 403cf9f9e98f5e076c73c5ebe6abd0be61eeac5a Mon Sep 17 00:00:00 2001 From: Thomas Coffee Date: Mon, 3 Oct 2016 17:27:26 -0700 Subject: [PATCH 1/4] Regenerate APIs from discovery --- api_names_out.yaml | 587 ++--- generated/google/apis/adexchangebuyer_v1_4.rb | 2 +- .../apis/adexchangebuyer_v1_4/classes.rb | 85 +- .../adexchangebuyer_v1_4/representations.rb | 33 + .../apis/adexchangebuyer_v1_4/service.rb | 38 + generated/google/apis/adsense_v1_4.rb | 2 +- generated/google/apis/adsensehost_v4_1.rb | 2 +- .../google/apis/analyticsreporting_v4.rb | 2 +- generated/google/apis/androidenterprise_v1.rb | 2 +- .../apis/androidenterprise_v1/classes.rb | 8 +- .../apis/androidenterprise_v1/service.rb | 20 +- generated/google/apis/appsactivity_v1.rb | 2 +- generated/google/apis/bigquery_v2.rb | 2 +- generated/google/apis/calendar_v3.rb | 2 +- generated/google/apis/cloudbuild_v1.rb | 2 +- .../google/apis/cloudbuild_v1/classes.rb | 64 +- .../google/apis/cloudresourcemanager_v1.rb | 2 +- .../apis/cloudresourcemanager_v1/classes.rb | 817 ++++--- .../representations.rb | 259 ++- .../apis/cloudresourcemanager_v1/service.rb | 295 ++- .../apis/cloudresourcemanager_v1beta1.rb | 2 +- .../cloudresourcemanager_v1beta1/classes.rb | 103 +- .../representations.rb | 44 + .../cloudresourcemanager_v1beta1/service.rb | 57 +- generated/google/apis/compute_beta.rb | 2 +- generated/google/apis/compute_beta/classes.rb | 51 +- .../apis/compute_beta/representations.rb | 1 + generated/google/apis/compute_beta/service.rb | 106 +- generated/google/apis/compute_v1.rb | 2 +- generated/google/apis/compute_v1/classes.rb | 45 +- .../google/apis/compute_v1/representations.rb | 3 + generated/google/apis/content_v2.rb | 2 +- generated/google/apis/datastore_v1.rb | 2 +- generated/google/apis/dns_v1.rb | 2 +- .../google/apis/doubleclickbidmanager_v1.rb | 2 +- .../apis/doubleclickbidmanager_v1/classes.rb | 163 +- .../representations.rb | 67 +- .../apis/doubleclickbidmanager_v1/service.rb | 18 +- generated/google/apis/doubleclicksearch_v2.rb | 2 +- generated/google/apis/drive_v2.rb | 2 +- generated/google/apis/drive_v3.rb | 2 +- generated/google/apis/genomics_v1.rb | 2 +- generated/google/apis/iam_v1.rb | 4 +- generated/google/apis/iam_v1/classes.rb | 473 ++-- .../google/apis/iam_v1/representations.rb | 185 +- generated/google/apis/iam_v1/service.rb | 168 +- generated/google/apis/identitytoolkit_v3.rb | 2 +- .../google/apis/identitytoolkit_v3/classes.rb | 31 +- .../identitytoolkit_v3/representations.rb | 17 +- generated/google/apis/language_v1beta1.rb | 2 +- .../google/apis/language_v1beta1/classes.rb | 6 +- .../google/apis/language_v1beta1/service.rb | 6 +- generated/google/apis/logging_v2beta1.rb | 12 +- .../google/apis/logging_v2beta1/classes.rb | 2002 +++++++++-------- .../apis/logging_v2beta1/representations.rb | 509 ++--- .../google/apis/logging_v2beta1/service.rb | 681 +++--- generated/google/apis/monitoring_v3.rb | 2 +- .../google/apis/monitoring_v3/classes.rb | 33 +- .../google/apis/monitoring_v3/service.rb | 2 +- generated/google/apis/oauth2_v2.rb | 2 +- generated/google/apis/plus_domains_v1.rb | 2 +- generated/google/apis/plus_v1.rb | 2 +- .../google/apis/replicapoolupdater_v1beta1.rb | 6 +- .../replicapoolupdater_v1beta1/service.rb | 4 +- generated/google/apis/sheets_v4.rb | 2 +- generated/google/apis/speech_v1beta1.rb | 2 +- .../google/apis/speech_v1beta1/classes.rb | 9 - .../apis/speech_v1beta1/representations.rb | 1 - generated/google/apis/storage_v1.rb | 2 +- generated/google/apis/storage_v1/classes.rb | 6 +- .../google/apis/storage_v1/representations.rb | 3 +- generated/google/apis/youtube_partner_v1.rb | 2 +- 72 files changed, 4095 insertions(+), 2989 deletions(-) diff --git a/api_names_out.yaml b/api_names_out.yaml index c1be7186d..623e487fb 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -2520,6 +2520,10 @@ "/compute:beta/compute.regionInstanceGroupManagers.listManagedInstances/instanceGroupManager": instance_group_manager "/compute:beta/compute.regionInstanceGroupManagers.listManagedInstances/project": project "/compute:beta/compute.regionInstanceGroupManagers.listManagedInstances/region": region +"/compute:beta/compute.regionInstanceGroupManagers.patch": patch_region_instance_group_manager +"/compute:beta/compute.regionInstanceGroupManagers.patch/instanceGroupManager": instance_group_manager +"/compute:beta/compute.regionInstanceGroupManagers.patch/project": project +"/compute:beta/compute.regionInstanceGroupManagers.patch/region": region "/compute:beta/compute.regionInstanceGroupManagers.recreateInstances": recreate_region_instance_group_manager_instances "/compute:beta/compute.regionInstanceGroupManagers.recreateInstances/instanceGroupManager": instance_group_manager "/compute:beta/compute.regionInstanceGroupManagers.recreateInstances/project": project @@ -2545,6 +2549,10 @@ "/compute:beta/compute.regionInstanceGroupManagers.testIamPermissions/project": project "/compute:beta/compute.regionInstanceGroupManagers.testIamPermissions/region": region "/compute:beta/compute.regionInstanceGroupManagers.testIamPermissions/resource": resource +"/compute:beta/compute.regionInstanceGroupManagers.update": update_region_instance_group_manager +"/compute:beta/compute.regionInstanceGroupManagers.update/instanceGroupManager": instance_group_manager +"/compute:beta/compute.regionInstanceGroupManagers.update/project": project +"/compute:beta/compute.regionInstanceGroupManagers.update/region": region "/compute:beta/compute.regionInstanceGroups.get": get_region_instance_group "/compute:beta/compute.regionInstanceGroups.get/instanceGroup": instance_group "/compute:beta/compute.regionInstanceGroups.get/project": project @@ -3872,6 +3880,7 @@ "/compute:beta/Project/quotas/quota": quota "/compute:beta/Project/selfLink": self_link "/compute:beta/Project/usageExportLocation": usage_export_location +"/compute:beta/Project/xpnProjectStatus": xpn_project_status "/compute:beta/Quota": quota "/compute:beta/Quota/limit": limit "/compute:beta/Quota/metric": metric @@ -5005,6 +5014,9 @@ "/adexchangebuyer:v1.4/adexchangebuyer.creatives.list/maxResults": max_results "/adexchangebuyer:v1.4/adexchangebuyer.creatives.list/openAuctionStatusFilter": open_auction_status_filter "/adexchangebuyer:v1.4/adexchangebuyer.creatives.list/pageToken": page_token +"/adexchangebuyer:v1.4/adexchangebuyer.creatives.listDeals": list_creative_deals +"/adexchangebuyer:v1.4/adexchangebuyer.creatives.listDeals/accountId": account_id +"/adexchangebuyer:v1.4/adexchangebuyer.creatives.listDeals/buyerCreativeId": buyer_creative_id "/adexchangebuyer:v1.4/adexchangebuyer.creatives.removeDeal": remove_creative_deal "/adexchangebuyer:v1.4/adexchangebuyer.creatives.removeDeal/accountId": account_id "/adexchangebuyer:v1.4/adexchangebuyer.creatives.removeDeal/buyerCreativeId": buyer_creative_id @@ -5193,6 +5205,7 @@ "/adexchangebuyer:v1.4/Creative/nativeAd/price": price "/adexchangebuyer:v1.4/Creative/nativeAd/starRating": star_rating "/adexchangebuyer:v1.4/Creative/nativeAd/store": store +"/adexchangebuyer:v1.4/Creative/nativeAd/videoURL": video_url "/adexchangebuyer:v1.4/Creative/openAuctionStatus": open_auction_status "/adexchangebuyer:v1.4/Creative/productCategories": product_categories "/adexchangebuyer:v1.4/Creative/productCategories/product_category": product_category @@ -5222,6 +5235,13 @@ "/adexchangebuyer:v1.4/Creative/version": version "/adexchangebuyer:v1.4/Creative/videoURL": video_url "/adexchangebuyer:v1.4/Creative/width": width +"/adexchangebuyer:v1.4/CreativeDealIds": creative_deal_ids +"/adexchangebuyer:v1.4/CreativeDealIds/dealStatuses": deal_statuses +"/adexchangebuyer:v1.4/CreativeDealIds/dealStatuses/deal_status": deal_status +"/adexchangebuyer:v1.4/CreativeDealIds/dealStatuses/deal_status/arcStatus": arc_status +"/adexchangebuyer:v1.4/CreativeDealIds/dealStatuses/deal_status/dealId": deal_id +"/adexchangebuyer:v1.4/CreativeDealIds/dealStatuses/deal_status/webPropertyId": web_property_id +"/adexchangebuyer:v1.4/CreativeDealIds/kind": kind "/adexchangebuyer:v1.4/CreativesList": creatives_list "/adexchangebuyer:v1.4/CreativesList/items": items "/adexchangebuyer:v1.4/CreativesList/items/item": item @@ -5331,6 +5351,7 @@ "/adexchangebuyer:v1.4/MarketplaceDeal/flightEndTimeMs": flight_end_time_ms "/adexchangebuyer:v1.4/MarketplaceDeal/flightStartTimeMs": flight_start_time_ms "/adexchangebuyer:v1.4/MarketplaceDeal/inventoryDescription": inventory_description +"/adexchangebuyer:v1.4/MarketplaceDeal/isRfpTemplate": is_rfp_template "/adexchangebuyer:v1.4/MarketplaceDeal/kind": kind "/adexchangebuyer:v1.4/MarketplaceDeal/lastUpdateTimeMs": last_update_time_ms "/adexchangebuyer:v1.4/MarketplaceDeal/name": name @@ -5492,6 +5513,8 @@ "/adexchangebuyer:v1.4/Proposal/buyerContacts": buyer_contacts "/adexchangebuyer:v1.4/Proposal/buyerContacts/buyer_contact": buyer_contact "/adexchangebuyer:v1.4/Proposal/buyerPrivateData": buyer_private_data +"/adexchangebuyer:v1.4/Proposal/dbmAdvertiserIds": dbm_advertiser_ids +"/adexchangebuyer:v1.4/Proposal/dbmAdvertiserIds/dbm_advertiser_id": dbm_advertiser_id "/adexchangebuyer:v1.4/Proposal/hasBuyerSignedOff": has_buyer_signed_off "/adexchangebuyer:v1.4/Proposal/hasSellerSignedOff": has_seller_signed_off "/adexchangebuyer:v1.4/Proposal/inventorySource": inventory_source @@ -12886,6 +12909,7 @@ "/compute:v1/Autoscaler/id": id "/compute:v1/Autoscaler/kind": kind "/compute:v1/Autoscaler/name": name +"/compute:v1/Autoscaler/region": region "/compute:v1/Autoscaler/selfLink": self_link "/compute:v1/Autoscaler/target": target "/compute:v1/Autoscaler/zone": zone @@ -13302,6 +13326,7 @@ "/compute:v1/InstanceGroup/namedPorts": named_ports "/compute:v1/InstanceGroup/namedPorts/named_port": named_port "/compute:v1/InstanceGroup/network": network +"/compute:v1/InstanceGroup/region": region "/compute:v1/InstanceGroup/selfLink": self_link "/compute:v1/InstanceGroup/size": size "/compute:v1/InstanceGroup/subnetwork": subnetwork @@ -13333,6 +13358,7 @@ "/compute:v1/InstanceGroupManager/name": name "/compute:v1/InstanceGroupManager/namedPorts": named_ports "/compute:v1/InstanceGroupManager/namedPorts/named_port": named_port +"/compute:v1/InstanceGroupManager/region": region "/compute:v1/InstanceGroupManager/selfLink": self_link "/compute:v1/InstanceGroupManager/targetPools": target_pools "/compute:v1/InstanceGroupManager/targetPools/target_pool": target_pool @@ -18564,13 +18590,25 @@ "/doubleclickbidmanager:v1/doubleclickbidmanager.queries.getquery/queryId": query_id "/doubleclickbidmanager:v1/doubleclickbidmanager.queries.runquery/queryId": query_id "/doubleclickbidmanager:v1/doubleclickbidmanager.reports.listreports/queryId": query_id -"/doubleclickbidmanager:v1/doubleclickbidmanager.rubicon.notifyproposalchange": notifyproposalchange_rubicon +"/doubleclickbidmanager:v1/doubleclickbidmanager.sdf.download": download_sdf "/doubleclickbidmanager:v1/DownloadLineItemsRequest/fileSpec": file_spec "/doubleclickbidmanager:v1/DownloadLineItemsRequest/filterIds": filter_ids "/doubleclickbidmanager:v1/DownloadLineItemsRequest/filterIds/filter_id": filter_id "/doubleclickbidmanager:v1/DownloadLineItemsRequest/filterType": filter_type "/doubleclickbidmanager:v1/DownloadLineItemsRequest/format": format "/doubleclickbidmanager:v1/DownloadLineItemsResponse/lineItems": line_items +"/doubleclickbidmanager:v1/DownloadRequest": download_request +"/doubleclickbidmanager:v1/DownloadRequest/fileTypes": file_types +"/doubleclickbidmanager:v1/DownloadRequest/fileTypes/file_type": file_type +"/doubleclickbidmanager:v1/DownloadRequest/filterIds": filter_ids +"/doubleclickbidmanager:v1/DownloadRequest/filterIds/filter_id": filter_id +"/doubleclickbidmanager:v1/DownloadRequest/filterType": filter_type +"/doubleclickbidmanager:v1/DownloadRequest/version": version +"/doubleclickbidmanager:v1/DownloadResponse": download_response +"/doubleclickbidmanager:v1/DownloadResponse/adGroups": ad_groups +"/doubleclickbidmanager:v1/DownloadResponse/ads": ads +"/doubleclickbidmanager:v1/DownloadResponse/insertionOrders": insertion_orders +"/doubleclickbidmanager:v1/DownloadResponse/lineItems": line_items "/doubleclickbidmanager:v1/FilterPair": filter_pair "/doubleclickbidmanager:v1/FilterPair/type": type "/doubleclickbidmanager:v1/FilterPair/value": value @@ -18580,19 +18618,6 @@ "/doubleclickbidmanager:v1/ListReportsResponse/kind": kind "/doubleclickbidmanager:v1/ListReportsResponse/reports": reports "/doubleclickbidmanager:v1/ListReportsResponse/reports/report": report -"/doubleclickbidmanager:v1/Note": note -"/doubleclickbidmanager:v1/Note/id": id -"/doubleclickbidmanager:v1/Note/message": message -"/doubleclickbidmanager:v1/Note/source": source -"/doubleclickbidmanager:v1/Note/timestamp": timestamp -"/doubleclickbidmanager:v1/Note/username": username -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest": notify_proposal_change_request -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest/action": action -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest/href": href -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest/id": id -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest/notes": notes -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest/notes/note": note -"/doubleclickbidmanager:v1/NotifyProposalChangeRequest/token": token "/doubleclickbidmanager:v1/Parameters": parameters "/doubleclickbidmanager:v1/Parameters/filters": filters "/doubleclickbidmanager:v1/Parameters/filters/filter": filter @@ -22536,12 +22561,24 @@ "/cloudresourcemanager:v1/fields": fields "/cloudresourcemanager:v1/key": key "/cloudresourcemanager:v1/quotaUser": quota_user +"/cloudresourcemanager:v1/cloudresourcemanager.operations.get": get_operation +"/cloudresourcemanager:v1/cloudresourcemanager.operations.get/name": name +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.search": search_organizations +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.get": get_organization +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.get/name": name +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.setIamPolicy": set_organization_iam_policy +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.setIamPolicy/resource": resource +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.getIamPolicy": get_organization_iam_policy +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.getIamPolicy/resource": resource +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.testIamPermissions": test_organization_iam_permissions +"/cloudresourcemanager:v1/cloudresourcemanager.organizations.testIamPermissions/resource": resource "/cloudresourcemanager:v1/cloudresourcemanager.projects.get": get_project "/cloudresourcemanager:v1/cloudresourcemanager.projects.get/projectId": project_id "/cloudresourcemanager:v1/cloudresourcemanager.projects.list": list_projects "/cloudresourcemanager:v1/cloudresourcemanager.projects.list/pageToken": page_token "/cloudresourcemanager:v1/cloudresourcemanager.projects.list/pageSize": page_size "/cloudresourcemanager:v1/cloudresourcemanager.projects.list/filter": filter +"/cloudresourcemanager:v1/cloudresourcemanager.projects.create": create_project "/cloudresourcemanager:v1/cloudresourcemanager.projects.update": update_project "/cloudresourcemanager:v1/cloudresourcemanager.projects.update/projectId": project_id "/cloudresourcemanager:v1/cloudresourcemanager.projects.delete": delete_project @@ -22554,8 +22591,54 @@ "/cloudresourcemanager:v1/cloudresourcemanager.projects.setIamPolicy/resource": resource "/cloudresourcemanager:v1/cloudresourcemanager.projects.testIamPermissions": test_project_iam_permissions "/cloudresourcemanager:v1/cloudresourcemanager.projects.testIamPermissions/resource": resource -"/cloudresourcemanager:v1/cloudresourcemanager.operations.get": get_operation -"/cloudresourcemanager:v1/cloudresourcemanager.operations.get/name": name +"/cloudresourcemanager:v1/Operation": operation +"/cloudresourcemanager:v1/Operation/name": name +"/cloudresourcemanager:v1/Operation/metadata": metadata +"/cloudresourcemanager:v1/Operation/metadata/metadatum": metadatum +"/cloudresourcemanager:v1/Operation/done": done +"/cloudresourcemanager:v1/Operation/error": error +"/cloudresourcemanager:v1/Operation/response": response +"/cloudresourcemanager:v1/Operation/response/response": response +"/cloudresourcemanager:v1/Status": status +"/cloudresourcemanager:v1/Status/code": code +"/cloudresourcemanager:v1/Status/message": message +"/cloudresourcemanager:v1/Status/details": details +"/cloudresourcemanager:v1/Status/details/detail": detail +"/cloudresourcemanager:v1/Status/details/detail/detail": detail +"/cloudresourcemanager:v1/SearchOrganizationsRequest": search_organizations_request +"/cloudresourcemanager:v1/SearchOrganizationsRequest/pageSize": page_size +"/cloudresourcemanager:v1/SearchOrganizationsRequest/pageToken": page_token +"/cloudresourcemanager:v1/SearchOrganizationsRequest/filter": filter +"/cloudresourcemanager:v1/SearchOrganizationsResponse": search_organizations_response +"/cloudresourcemanager:v1/SearchOrganizationsResponse/organizations": organizations +"/cloudresourcemanager:v1/SearchOrganizationsResponse/organizations/organization": organization +"/cloudresourcemanager:v1/SearchOrganizationsResponse/nextPageToken": next_page_token +"/cloudresourcemanager:v1/Organization": organization +"/cloudresourcemanager:v1/Organization/name": name +"/cloudresourcemanager:v1/Organization/displayName": display_name +"/cloudresourcemanager:v1/Organization/owner": owner +"/cloudresourcemanager:v1/Organization/creationTime": creation_time +"/cloudresourcemanager:v1/Organization/lifecycleState": lifecycle_state +"/cloudresourcemanager:v1/OrganizationOwner": organization_owner +"/cloudresourcemanager:v1/OrganizationOwner/directoryCustomerId": directory_customer_id +"/cloudresourcemanager:v1/SetIamPolicyRequest": set_iam_policy_request +"/cloudresourcemanager:v1/SetIamPolicyRequest/policy": policy +"/cloudresourcemanager:v1/Policy": policy +"/cloudresourcemanager:v1/Policy/version": version +"/cloudresourcemanager:v1/Policy/bindings": bindings +"/cloudresourcemanager:v1/Policy/bindings/binding": binding +"/cloudresourcemanager:v1/Policy/etag": etag +"/cloudresourcemanager:v1/Binding": binding +"/cloudresourcemanager:v1/Binding/role": role +"/cloudresourcemanager:v1/Binding/members": members +"/cloudresourcemanager:v1/Binding/members/member": member +"/cloudresourcemanager:v1/GetIamPolicyRequest": get_iam_policy_request +"/cloudresourcemanager:v1/TestIamPermissionsRequest": test_iam_permissions_request +"/cloudresourcemanager:v1/TestIamPermissionsRequest/permissions": permissions +"/cloudresourcemanager:v1/TestIamPermissionsRequest/permissions/permission": permission +"/cloudresourcemanager:v1/TestIamPermissionsResponse": test_iam_permissions_response +"/cloudresourcemanager:v1/TestIamPermissionsResponse/permissions": permissions +"/cloudresourcemanager:v1/TestIamPermissionsResponse/permissions/permission": permission "/cloudresourcemanager:v1/Project": project "/cloudresourcemanager:v1/Project/projectNumber": project_number "/cloudresourcemanager:v1/Project/projectId": project_id @@ -22574,42 +22657,22 @@ "/cloudresourcemanager:v1/ListProjectsResponse/nextPageToken": next_page_token "/cloudresourcemanager:v1/Empty": empty "/cloudresourcemanager:v1/UndeleteProjectRequest": undelete_project_request -"/cloudresourcemanager:v1/GetIamPolicyRequest": get_iam_policy_request -"/cloudresourcemanager:v1/Policy": policy -"/cloudresourcemanager:v1/Policy/version": version -"/cloudresourcemanager:v1/Policy/bindings": bindings -"/cloudresourcemanager:v1/Policy/bindings/binding": binding -"/cloudresourcemanager:v1/Policy/etag": etag -"/cloudresourcemanager:v1/Binding": binding -"/cloudresourcemanager:v1/Binding/role": role -"/cloudresourcemanager:v1/Binding/members": members -"/cloudresourcemanager:v1/Binding/members/member": member -"/cloudresourcemanager:v1/SetIamPolicyRequest": set_iam_policy_request -"/cloudresourcemanager:v1/SetIamPolicyRequest/policy": policy -"/cloudresourcemanager:v1/TestIamPermissionsRequest": test_iam_permissions_request -"/cloudresourcemanager:v1/TestIamPermissionsRequest/permissions": permissions -"/cloudresourcemanager:v1/TestIamPermissionsRequest/permissions/permission": permission -"/cloudresourcemanager:v1/TestIamPermissionsResponse": test_iam_permissions_response -"/cloudresourcemanager:v1/TestIamPermissionsResponse/permissions": permissions -"/cloudresourcemanager:v1/TestIamPermissionsResponse/permissions/permission": permission -"/cloudresourcemanager:v1/Operation": operation -"/cloudresourcemanager:v1/Operation/name": name -"/cloudresourcemanager:v1/Operation/metadata": metadata -"/cloudresourcemanager:v1/Operation/metadata/metadatum": metadatum -"/cloudresourcemanager:v1/Operation/done": done -"/cloudresourcemanager:v1/Operation/error": error -"/cloudresourcemanager:v1/Operation/response": response -"/cloudresourcemanager:v1/Operation/response/response": response -"/cloudresourcemanager:v1/Status": status -"/cloudresourcemanager:v1/Status/code": code -"/cloudresourcemanager:v1/Status/message": message -"/cloudresourcemanager:v1/Status/details": details -"/cloudresourcemanager:v1/Status/details/detail": detail -"/cloudresourcemanager:v1/Status/details/detail/detail": detail +"/cloudresourcemanager:v1/ProjectCreationStatus": project_creation_status +"/cloudresourcemanager:v1/ProjectCreationStatus/createTime": create_time +"/cloudresourcemanager:v1/ProjectCreationStatus/gettable": gettable +"/cloudresourcemanager:v1/ProjectCreationStatus/ready": ready +"/cloudresourcemanager:v1/FolderOperation": folder_operation +"/cloudresourcemanager:v1/FolderOperation/displayName": display_name +"/cloudresourcemanager:v1/FolderOperation/operationType": operation_type +"/cloudresourcemanager:v1/FolderOperation/sourceParent": source_parent +"/cloudresourcemanager:v1/FolderOperation/destinationParent": destination_parent +"/cloudresourcemanager:v1/FolderOperationError": folder_operation_error +"/cloudresourcemanager:v1/FolderOperationError/errorMessageId": error_message_id "/cloudresourcemanager:v1beta1/fields": fields "/cloudresourcemanager:v1beta1/key": key "/cloudresourcemanager:v1beta1/quotaUser": quota_user "/cloudresourcemanager:v1beta1/cloudresourcemanager.projects.create": create_project +"/cloudresourcemanager:v1beta1/cloudresourcemanager.projects.create/useLegacyStack": use_legacy_stack "/cloudresourcemanager:v1beta1/cloudresourcemanager.projects.list": list_projects "/cloudresourcemanager:v1beta1/cloudresourcemanager.projects.list/pageToken": page_token "/cloudresourcemanager:v1beta1/cloudresourcemanager.projects.list/pageSize": page_size @@ -22700,6 +22763,17 @@ "/cloudresourcemanager:v1beta1/Organization/lifecycleState": lifecycle_state "/cloudresourcemanager:v1beta1/OrganizationOwner": organization_owner "/cloudresourcemanager:v1beta1/OrganizationOwner/directoryCustomerId": directory_customer_id +"/cloudresourcemanager:v1beta1/ProjectCreationStatus": project_creation_status +"/cloudresourcemanager:v1beta1/ProjectCreationStatus/createTime": create_time +"/cloudresourcemanager:v1beta1/ProjectCreationStatus/gettable": gettable +"/cloudresourcemanager:v1beta1/ProjectCreationStatus/ready": ready +"/cloudresourcemanager:v1beta1/FolderOperation": folder_operation +"/cloudresourcemanager:v1beta1/FolderOperation/displayName": display_name +"/cloudresourcemanager:v1beta1/FolderOperation/operationType": operation_type +"/cloudresourcemanager:v1beta1/FolderOperation/sourceParent": source_parent +"/cloudresourcemanager:v1beta1/FolderOperation/destinationParent": destination_parent +"/cloudresourcemanager:v1beta1/FolderOperationError": folder_operation_error +"/cloudresourcemanager:v1beta1/FolderOperationError/errorMessageId": error_message_id "/cloudtrace:v1/fields": fields "/cloudtrace:v1/key": key "/cloudtrace:v1/quotaUser": quota_user @@ -23758,10 +23832,12 @@ "/iam:v1/iam.projects.serviceAccounts.keys.list/keyTypes": key_types "/iam:v1/iam.projects.serviceAccounts.keys.get": get_project_service_account_key "/iam:v1/iam.projects.serviceAccounts.keys.get/name": name +"/iam:v1/iam.projects.serviceAccounts.keys.get/publicKeyType": public_key_type "/iam:v1/iam.projects.serviceAccounts.keys.create": create_service_account_key "/iam:v1/iam.projects.serviceAccounts.keys.create/name": name "/iam:v1/iam.projects.serviceAccounts.keys.delete": delete_project_service_account_key "/iam:v1/iam.projects.serviceAccounts.keys.delete/name": name +"/iam:v1/iam.roles.queryGrantableRoles": query_grantable_roles "/iam:v1/ListServiceAccountsResponse": list_service_accounts_response "/iam:v1/ListServiceAccountsResponse/accounts": accounts "/iam:v1/ListServiceAccountsResponse/accounts/account": account @@ -23784,11 +23860,14 @@ "/iam:v1/ServiceAccountKey": service_account_key "/iam:v1/ServiceAccountKey/name": name "/iam:v1/ServiceAccountKey/privateKeyType": private_key_type +"/iam:v1/ServiceAccountKey/keyAlgorithm": key_algorithm "/iam:v1/ServiceAccountKey/privateKeyData": private_key_data +"/iam:v1/ServiceAccountKey/publicKeyData": public_key_data "/iam:v1/ServiceAccountKey/validAfterTime": valid_after_time "/iam:v1/ServiceAccountKey/validBeforeTime": valid_before_time "/iam:v1/CreateServiceAccountKeyRequest": create_service_account_key_request "/iam:v1/CreateServiceAccountKeyRequest/privateKeyType": private_key_type +"/iam:v1/CreateServiceAccountKeyRequest/keyAlgorithm": key_algorithm "/iam:v1/SignBlobRequest": sign_blob_request "/iam:v1/SignBlobRequest/bytesToSign": bytes_to_sign "/iam:v1/SignBlobResponse": sign_blob_response @@ -23798,43 +23877,11 @@ "/iam:v1/Policy/version": version "/iam:v1/Policy/bindings": bindings "/iam:v1/Policy/bindings/binding": binding -"/iam:v1/Policy/rules": rules -"/iam:v1/Policy/rules/rule": rule "/iam:v1/Policy/etag": etag "/iam:v1/Binding": binding "/iam:v1/Binding/role": role "/iam:v1/Binding/members": members "/iam:v1/Binding/members/member": member -"/iam:v1/Rule": rule -"/iam:v1/Rule/description": description -"/iam:v1/Rule/permissions": permissions -"/iam:v1/Rule/permissions/permission": permission -"/iam:v1/Rule/action": action -"/iam:v1/Rule/in": in -"/iam:v1/Rule/in/in": in -"/iam:v1/Rule/notIn": not_in -"/iam:v1/Rule/notIn/not_in": not_in -"/iam:v1/Rule/conditions": conditions -"/iam:v1/Rule/conditions/condition": condition -"/iam:v1/Rule/logConfig": log_config -"/iam:v1/Rule/logConfig/log_config": log_config -"/iam:v1/Condition": condition -"/iam:v1/Condition/iam": iam -"/iam:v1/Condition/sys": sys -"/iam:v1/Condition/svc": svc -"/iam:v1/Condition/op": op -"/iam:v1/Condition/value": value -"/iam:v1/Condition/values": values -"/iam:v1/Condition/values/value": value -"/iam:v1/LogConfig": log_config -"/iam:v1/LogConfig/counter": counter -"/iam:v1/LogConfig/dataAccess": data_access -"/iam:v1/LogConfig/cloudAudit": cloud_audit -"/iam:v1/CounterOptions": counter_options -"/iam:v1/CounterOptions/metric": metric -"/iam:v1/CounterOptions/field": field -"/iam:v1/DataAccessOptions": data_access_options -"/iam:v1/CloudAuditOptions": cloud_audit_options "/iam:v1/SetIamPolicyRequest": set_iam_policy_request "/iam:v1/SetIamPolicyRequest/policy": policy "/iam:v1/TestIamPermissionsRequest": test_iam_permissions_request @@ -23843,6 +23890,24 @@ "/iam:v1/TestIamPermissionsResponse": test_iam_permissions_response "/iam:v1/TestIamPermissionsResponse/permissions": permissions "/iam:v1/TestIamPermissionsResponse/permissions/permission": permission +"/iam:v1/QueryGrantableRolesRequest": query_grantable_roles_request +"/iam:v1/QueryGrantableRolesRequest/fullResourceName": full_resource_name +"/iam:v1/QueryGrantableRolesResponse": query_grantable_roles_response +"/iam:v1/QueryGrantableRolesResponse/roles": roles +"/iam:v1/QueryGrantableRolesResponse/roles/role": role +"/iam:v1/Role": role +"/iam:v1/Role/name": name +"/iam:v1/Role/title": title +"/iam:v1/Role/description": description +"/iam:v1/AuditData": audit_data +"/iam:v1/AuditData/policyDelta": policy_delta +"/iam:v1/PolicyDelta": policy_delta +"/iam:v1/PolicyDelta/bindingDeltas": binding_deltas +"/iam:v1/PolicyDelta/bindingDeltas/binding_delta": binding_delta +"/iam:v1/BindingDelta": binding_delta +"/iam:v1/BindingDelta/action": action +"/iam:v1/BindingDelta/role": role +"/iam:v1/BindingDelta/member": member "/kgsearch:v1/fields": fields "/kgsearch:v1/key": key "/kgsearch:v1/quotaUser": quota_user @@ -23859,185 +23924,6 @@ "/kgsearch:v1/SearchResponse/type": type "/kgsearch:v1/SearchResponse/itemListElement": item_list_element "/kgsearch:v1/SearchResponse/itemListElement/item_list_element": item_list_element -"/logging:v2beta1/fields": fields -"/logging:v2beta1/key": key -"/logging:v2beta1/quotaUser": quota_user -"/logging:v2beta1/logging.projects.logs.delete/logName": log_name -"/logging:v2beta1/logging.projects.sinks.list": list_project_sinks -"/logging:v2beta1/logging.projects.sinks.list/projectName": project_name -"/logging:v2beta1/logging.projects.sinks.list/pageToken": page_token -"/logging:v2beta1/logging.projects.sinks.list/pageSize": page_size -"/logging:v2beta1/logging.projects.sinks.get": get_project_sink -"/logging:v2beta1/logging.projects.sinks.get/sinkName": sink_name -"/logging:v2beta1/logging.projects.sinks.create": create_project_sink -"/logging:v2beta1/logging.projects.sinks.create/projectName": project_name -"/logging:v2beta1/logging.projects.sinks.update": update_project_sink -"/logging:v2beta1/logging.projects.sinks.update/sinkName": sink_name -"/logging:v2beta1/logging.projects.sinks.delete": delete_project_sink -"/logging:v2beta1/logging.projects.sinks.delete/sinkName": sink_name -"/logging:v2beta1/logging.projects.metrics.list": list_project_metrics -"/logging:v2beta1/logging.projects.metrics.list/projectName": project_name -"/logging:v2beta1/logging.projects.metrics.list/pageToken": page_token -"/logging:v2beta1/logging.projects.metrics.list/pageSize": page_size -"/logging:v2beta1/logging.projects.metrics.get": get_project_metric -"/logging:v2beta1/logging.projects.metrics.get/metricName": metric_name -"/logging:v2beta1/logging.projects.metrics.create": create_project_metric -"/logging:v2beta1/logging.projects.metrics.create/projectName": project_name -"/logging:v2beta1/logging.projects.metrics.update": update_project_metric -"/logging:v2beta1/logging.projects.metrics.update/metricName": metric_name -"/logging:v2beta1/logging.projects.metrics.delete": delete_project_metric -"/logging:v2beta1/logging.projects.metrics.delete/metricName": metric_name -"/logging:v2beta1/logging.entries.write": write_entry_log_entries -"/logging:v2beta1/logging.entries.list": list_entry_log_entries -"/logging:v2beta1/logging.monitoredResourceDescriptors.list": list_monitored_resource_descriptors -"/logging:v2beta1/logging.monitoredResourceDescriptors.list/pageSize": page_size -"/logging:v2beta1/logging.monitoredResourceDescriptors.list/pageToken": page_token -"/logging:v2beta1/Empty": empty -"/logging:v2beta1/WriteLogEntriesRequest": write_log_entries_request -"/logging:v2beta1/WriteLogEntriesRequest/logName": log_name -"/logging:v2beta1/WriteLogEntriesRequest/resource": resource -"/logging:v2beta1/WriteLogEntriesRequest/labels": labels -"/logging:v2beta1/WriteLogEntriesRequest/labels/label": label -"/logging:v2beta1/WriteLogEntriesRequest/entries": entries -"/logging:v2beta1/WriteLogEntriesRequest/entries/entry": entry -"/logging:v2beta1/WriteLogEntriesRequest/partialSuccess": partial_success -"/logging:v2beta1/MonitoredResource": monitored_resource -"/logging:v2beta1/MonitoredResource/type": type -"/logging:v2beta1/MonitoredResource/labels": labels -"/logging:v2beta1/MonitoredResource/labels/label": label -"/logging:v2beta1/LogEntry": log_entry -"/logging:v2beta1/LogEntry/logName": log_name -"/logging:v2beta1/LogEntry/resource": resource -"/logging:v2beta1/LogEntry/protoPayload": proto_payload -"/logging:v2beta1/LogEntry/protoPayload/proto_payload": proto_payload -"/logging:v2beta1/LogEntry/textPayload": text_payload -"/logging:v2beta1/LogEntry/jsonPayload": json_payload -"/logging:v2beta1/LogEntry/jsonPayload/json_payload": json_payload -"/logging:v2beta1/LogEntry/timestamp": timestamp -"/logging:v2beta1/LogEntry/severity": severity -"/logging:v2beta1/LogEntry/insertId": insert_id -"/logging:v2beta1/LogEntry/httpRequest": http_request -"/logging:v2beta1/LogEntry/labels": labels -"/logging:v2beta1/LogEntry/labels/label": label -"/logging:v2beta1/LogEntry/operation": operation -"/logging:v2beta1/HttpRequest": http_request -"/logging:v2beta1/HttpRequest/requestMethod": request_method -"/logging:v2beta1/HttpRequest/requestUrl": request_url -"/logging:v2beta1/HttpRequest/requestSize": request_size -"/logging:v2beta1/HttpRequest/status": status -"/logging:v2beta1/HttpRequest/responseSize": response_size -"/logging:v2beta1/HttpRequest/userAgent": user_agent -"/logging:v2beta1/HttpRequest/remoteIp": remote_ip -"/logging:v2beta1/HttpRequest/referer": referer -"/logging:v2beta1/HttpRequest/cacheLookup": cache_lookup -"/logging:v2beta1/HttpRequest/cacheHit": cache_hit -"/logging:v2beta1/HttpRequest/cacheValidatedWithOriginServer": cache_validated_with_origin_server -"/logging:v2beta1/HttpRequest/cacheFillBytes": cache_fill_bytes -"/logging:v2beta1/LogEntryOperation": log_entry_operation -"/logging:v2beta1/LogEntryOperation/id": id -"/logging:v2beta1/LogEntryOperation/producer": producer -"/logging:v2beta1/LogEntryOperation/first": first -"/logging:v2beta1/LogEntryOperation/last": last -"/logging:v2beta1/WriteLogEntriesResponse": write_log_entries_response -"/logging:v2beta1/ListLogEntriesRequest": list_log_entries_request -"/logging:v2beta1/ListLogEntriesRequest/projectIds": project_ids -"/logging:v2beta1/ListLogEntriesRequest/projectIds/project_id": project_id -"/logging:v2beta1/ListLogEntriesRequest/filter": filter -"/logging:v2beta1/ListLogEntriesRequest/orderBy": order_by -"/logging:v2beta1/ListLogEntriesRequest/pageSize": page_size -"/logging:v2beta1/ListLogEntriesRequest/pageToken": page_token -"/logging:v2beta1/ListLogEntriesRequest/partialSuccess": partial_success -"/logging:v2beta1/ListLogEntriesResponse": list_log_entries_response -"/logging:v2beta1/ListLogEntriesResponse/entries": entries -"/logging:v2beta1/ListLogEntriesResponse/entries/entry": entry -"/logging:v2beta1/ListLogEntriesResponse/nextPageToken": next_page_token -"/logging:v2beta1/ListLogEntriesResponse/projectIdErrors": project_id_errors -"/logging:v2beta1/ListLogEntriesResponse/projectIdErrors/project_id_error": project_id_error -"/logging:v2beta1/Status": status -"/logging:v2beta1/Status/code": code -"/logging:v2beta1/Status/message": message -"/logging:v2beta1/Status/details": details -"/logging:v2beta1/Status/details/detail": detail -"/logging:v2beta1/Status/details/detail/detail": detail -"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse": list_monitored_resource_descriptors_response -"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse/resourceDescriptors": resource_descriptors -"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse/resourceDescriptors/resource_descriptor": resource_descriptor -"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse/nextPageToken": next_page_token -"/logging:v2beta1/MonitoredResourceDescriptor": monitored_resource_descriptor -"/logging:v2beta1/MonitoredResourceDescriptor/name": name -"/logging:v2beta1/MonitoredResourceDescriptor/type": type -"/logging:v2beta1/MonitoredResourceDescriptor/displayName": display_name -"/logging:v2beta1/MonitoredResourceDescriptor/description": description -"/logging:v2beta1/MonitoredResourceDescriptor/labels": labels -"/logging:v2beta1/MonitoredResourceDescriptor/labels/label": label -"/logging:v2beta1/LabelDescriptor": label_descriptor -"/logging:v2beta1/LabelDescriptor/key": key -"/logging:v2beta1/LabelDescriptor/valueType": value_type -"/logging:v2beta1/LabelDescriptor/description": description -"/logging:v2beta1/ListSinksResponse": list_sinks_response -"/logging:v2beta1/ListSinksResponse/sinks": sinks -"/logging:v2beta1/ListSinksResponse/sinks/sink": sink -"/logging:v2beta1/ListSinksResponse/nextPageToken": next_page_token -"/logging:v2beta1/LogSink": log_sink -"/logging:v2beta1/LogSink/name": name -"/logging:v2beta1/LogSink/destination": destination -"/logging:v2beta1/LogSink/filter": filter -"/logging:v2beta1/LogSink/outputVersionFormat": output_version_format -"/logging:v2beta1/ListLogMetricsResponse": list_log_metrics_response -"/logging:v2beta1/ListLogMetricsResponse/metrics": metrics -"/logging:v2beta1/ListLogMetricsResponse/metrics/metric": metric -"/logging:v2beta1/ListLogMetricsResponse/nextPageToken": next_page_token -"/logging:v2beta1/LogMetric": log_metric -"/logging:v2beta1/LogMetric/name": name -"/logging:v2beta1/LogMetric/description": description -"/logging:v2beta1/LogMetric/filter": filter -"/logging:v2beta1/RequestLog": request_log -"/logging:v2beta1/RequestLog/appId": app_id -"/logging:v2beta1/RequestLog/moduleId": module_id -"/logging:v2beta1/RequestLog/versionId": version_id -"/logging:v2beta1/RequestLog/requestId": request_id -"/logging:v2beta1/RequestLog/ip": ip -"/logging:v2beta1/RequestLog/startTime": start_time -"/logging:v2beta1/RequestLog/endTime": end_time -"/logging:v2beta1/RequestLog/latency": latency -"/logging:v2beta1/RequestLog/megaCycles": mega_cycles -"/logging:v2beta1/RequestLog/method": method_prop -"/logging:v2beta1/RequestLog/resource": resource -"/logging:v2beta1/RequestLog/httpVersion": http_version -"/logging:v2beta1/RequestLog/status": status -"/logging:v2beta1/RequestLog/responseSize": response_size -"/logging:v2beta1/RequestLog/referrer": referrer -"/logging:v2beta1/RequestLog/userAgent": user_agent -"/logging:v2beta1/RequestLog/nickname": nickname -"/logging:v2beta1/RequestLog/urlMapEntry": url_map_entry -"/logging:v2beta1/RequestLog/host": host -"/logging:v2beta1/RequestLog/cost": cost -"/logging:v2beta1/RequestLog/taskQueueName": task_queue_name -"/logging:v2beta1/RequestLog/taskName": task_name -"/logging:v2beta1/RequestLog/wasLoadingRequest": was_loading_request -"/logging:v2beta1/RequestLog/pendingTime": pending_time -"/logging:v2beta1/RequestLog/instanceIndex": instance_index -"/logging:v2beta1/RequestLog/finished": finished -"/logging:v2beta1/RequestLog/first": first -"/logging:v2beta1/RequestLog/instanceId": instance_id -"/logging:v2beta1/RequestLog/line": line -"/logging:v2beta1/RequestLog/line/line": line -"/logging:v2beta1/RequestLog/appEngineRelease": app_engine_release -"/logging:v2beta1/RequestLog/traceId": trace_id -"/logging:v2beta1/RequestLog/sourceReference": source_reference -"/logging:v2beta1/RequestLog/sourceReference/source_reference": source_reference -"/logging:v2beta1/LogLine": log_line -"/logging:v2beta1/LogLine/time": time -"/logging:v2beta1/LogLine/severity": severity -"/logging:v2beta1/LogLine/logMessage": log_message -"/logging:v2beta1/LogLine/sourceLocation": source_location -"/logging:v2beta1/SourceLocation": source_location -"/logging:v2beta1/SourceLocation/file": file -"/logging:v2beta1/SourceLocation/line": line -"/logging:v2beta1/SourceLocation/functionName": function_name -"/logging:v2beta1/SourceReference": source_reference -"/logging:v2beta1/SourceReference/repository": repository -"/logging:v2beta1/SourceReference/revisionId": revision_id "/partners:v2/fields": fields "/partners:v2/key": key "/partners:v2/quotaUser": quota_user @@ -25007,8 +24893,6 @@ "/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/continueUri": continue_uri "/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/customParameter": custom_parameter "/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/customParameter/custom_parameter": custom_parameter -"/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/customParameter/custom_parameter/key": key -"/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/customParameter/custom_parameter/value": value "/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/hostedDomain": hosted_domain "/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/identifier": identifier "/identitytoolkit:v3/IdentitytoolkitRelyingpartyCreateAuthUriRequest/oauthConsumerKey": oauth_consumer_key @@ -25385,6 +25269,186 @@ "/licensing:v1/LicenseAssignmentList/items/item": item "/licensing:v1/LicenseAssignmentList/kind": kind "/licensing:v1/LicenseAssignmentList/nextPageToken": next_page_token +"/logging:v2beta1/key": key +"/logging:v2beta1/quotaUser": quota_user +"/logging:v2beta1/fields": fields +"/logging:v2beta1/logging.projects.metrics.update": update_project_metric +"/logging:v2beta1/logging.projects.metrics.update/metricName": metric_name +"/logging:v2beta1/logging.projects.metrics.get": get_project_metric +"/logging:v2beta1/logging.projects.metrics.get/metricName": metric_name +"/logging:v2beta1/logging.projects.metrics.create": create_project_metric +"/logging:v2beta1/logging.projects.metrics.create/parent": parent +"/logging:v2beta1/logging.projects.metrics.list": list_project_metrics +"/logging:v2beta1/logging.projects.metrics.list/pageSize": page_size +"/logging:v2beta1/logging.projects.metrics.list/parent": parent +"/logging:v2beta1/logging.projects.metrics.list/pageToken": page_token +"/logging:v2beta1/logging.projects.metrics.delete": delete_project_metric +"/logging:v2beta1/logging.projects.metrics.delete/metricName": metric_name +"/logging:v2beta1/logging.projects.logs.delete/logName": log_name +"/logging:v2beta1/logging.projects.sinks.update": update_project_sink +"/logging:v2beta1/logging.projects.sinks.update/sinkName": sink_name +"/logging:v2beta1/logging.projects.sinks.get": get_project_sink +"/logging:v2beta1/logging.projects.sinks.get/sinkName": sink_name +"/logging:v2beta1/logging.projects.sinks.create": create_project_sink +"/logging:v2beta1/logging.projects.sinks.create/parent": parent +"/logging:v2beta1/logging.projects.sinks.list": list_project_sinks +"/logging:v2beta1/logging.projects.sinks.list/pageSize": page_size +"/logging:v2beta1/logging.projects.sinks.list/parent": parent +"/logging:v2beta1/logging.projects.sinks.list/pageToken": page_token +"/logging:v2beta1/logging.projects.sinks.delete": delete_project_sink +"/logging:v2beta1/logging.projects.sinks.delete/sinkName": sink_name +"/logging:v2beta1/logging.organizations.logs.delete": delete_organization_log +"/logging:v2beta1/logging.organizations.logs.delete/logName": log_name +"/logging:v2beta1/logging.entries.write": write_entry_log_entries +"/logging:v2beta1/logging.entries.list": list_entry_log_entries +"/logging:v2beta1/logging.monitoredResourceDescriptors.list": list_monitored_resource_descriptors +"/logging:v2beta1/logging.monitoredResourceDescriptors.list/pageSize": page_size +"/logging:v2beta1/logging.monitoredResourceDescriptors.list/pageToken": page_token +"/logging:v2beta1/logging.billingAccounts.logs.delete": delete_billing_account_log +"/logging:v2beta1/logging.billingAccounts.logs.delete/logName": log_name +"/logging:v2beta1/ListLogEntriesResponse": list_log_entries_response +"/logging:v2beta1/ListLogEntriesResponse/entries": entries +"/logging:v2beta1/ListLogEntriesResponse/entries/entry": entry +"/logging:v2beta1/ListLogEntriesResponse/nextPageToken": next_page_token +"/logging:v2beta1/ListSinksResponse": list_sinks_response +"/logging:v2beta1/ListSinksResponse/nextPageToken": next_page_token +"/logging:v2beta1/ListSinksResponse/sinks": sinks +"/logging:v2beta1/ListSinksResponse/sinks/sink": sink +"/logging:v2beta1/SourceLocation": source_location +"/logging:v2beta1/SourceLocation/file": file +"/logging:v2beta1/SourceLocation/functionName": function_name +"/logging:v2beta1/SourceLocation/line": line +"/logging:v2beta1/LogSink": log_sink +"/logging:v2beta1/LogSink/writerIdentity": writer_identity +"/logging:v2beta1/LogSink/filter": filter +"/logging:v2beta1/LogSink/destination": destination +"/logging:v2beta1/LogSink/outputVersionFormat": output_version_format +"/logging:v2beta1/LogSink/name": name +"/logging:v2beta1/LogMetric": log_metric +"/logging:v2beta1/LogMetric/description": description +"/logging:v2beta1/LogMetric/filter": filter +"/logging:v2beta1/LogMetric/name": name +"/logging:v2beta1/LogMetric/version": version +"/logging:v2beta1/LogEntry": log_entry +"/logging:v2beta1/LogEntry/textPayload": text_payload +"/logging:v2beta1/LogEntry/httpRequest": http_request +"/logging:v2beta1/LogEntry/jsonPayload": json_payload +"/logging:v2beta1/LogEntry/jsonPayload/json_payload": json_payload +"/logging:v2beta1/LogEntry/labels": labels +"/logging:v2beta1/LogEntry/labels/label": label +"/logging:v2beta1/LogEntry/logName": log_name +"/logging:v2beta1/LogEntry/severity": severity +"/logging:v2beta1/LogEntry/resource": resource +"/logging:v2beta1/LogEntry/protoPayload": proto_payload +"/logging:v2beta1/LogEntry/protoPayload/proto_payload": proto_payload +"/logging:v2beta1/LogEntry/timestamp": timestamp +"/logging:v2beta1/LogEntry/insertId": insert_id +"/logging:v2beta1/LogEntry/operation": operation +"/logging:v2beta1/LogLine": log_line +"/logging:v2beta1/LogLine/time": time +"/logging:v2beta1/LogLine/severity": severity +"/logging:v2beta1/LogLine/sourceLocation": source_location +"/logging:v2beta1/LogLine/logMessage": log_message +"/logging:v2beta1/SourceReference": source_reference +"/logging:v2beta1/SourceReference/repository": repository +"/logging:v2beta1/SourceReference/revisionId": revision_id +"/logging:v2beta1/MonitoredResource": monitored_resource +"/logging:v2beta1/MonitoredResource/labels": labels +"/logging:v2beta1/MonitoredResource/labels/label": label +"/logging:v2beta1/MonitoredResource/type": type +"/logging:v2beta1/WriteLogEntriesRequest": write_log_entries_request +"/logging:v2beta1/WriteLogEntriesRequest/labels": labels +"/logging:v2beta1/WriteLogEntriesRequest/labels/label": label +"/logging:v2beta1/WriteLogEntriesRequest/entries": entries +"/logging:v2beta1/WriteLogEntriesRequest/entries/entry": entry +"/logging:v2beta1/WriteLogEntriesRequest/logName": log_name +"/logging:v2beta1/WriteLogEntriesRequest/partialSuccess": partial_success +"/logging:v2beta1/WriteLogEntriesRequest/resource": resource +"/logging:v2beta1/LabelDescriptor": label_descriptor +"/logging:v2beta1/LabelDescriptor/description": description +"/logging:v2beta1/LabelDescriptor/valueType": value_type +"/logging:v2beta1/LabelDescriptor/key": key +"/logging:v2beta1/ListLogMetricsResponse": list_log_metrics_response +"/logging:v2beta1/ListLogMetricsResponse/metrics": metrics +"/logging:v2beta1/ListLogMetricsResponse/metrics/metric": metric +"/logging:v2beta1/ListLogMetricsResponse/nextPageToken": next_page_token +"/logging:v2beta1/MonitoredResourceDescriptor": monitored_resource_descriptor +"/logging:v2beta1/MonitoredResourceDescriptor/displayName": display_name +"/logging:v2beta1/MonitoredResourceDescriptor/description": description +"/logging:v2beta1/MonitoredResourceDescriptor/labels": labels +"/logging:v2beta1/MonitoredResourceDescriptor/labels/label": label +"/logging:v2beta1/MonitoredResourceDescriptor/type": type +"/logging:v2beta1/MonitoredResourceDescriptor/name": name +"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse": list_monitored_resource_descriptors_response +"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse/nextPageToken": next_page_token +"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse/resourceDescriptors": resource_descriptors +"/logging:v2beta1/ListMonitoredResourceDescriptorsResponse/resourceDescriptors/resource_descriptor": resource_descriptor +"/logging:v2beta1/LogEntryOperation": log_entry_operation +"/logging:v2beta1/LogEntryOperation/producer": producer +"/logging:v2beta1/LogEntryOperation/last": last +"/logging:v2beta1/LogEntryOperation/first": first +"/logging:v2beta1/LogEntryOperation/id": id +"/logging:v2beta1/Empty": empty +"/logging:v2beta1/HttpRequest": http_request +"/logging:v2beta1/HttpRequest/cacheLookup": cache_lookup +"/logging:v2beta1/HttpRequest/responseSize": response_size +"/logging:v2beta1/HttpRequest/status": status +"/logging:v2beta1/HttpRequest/cacheValidatedWithOriginServer": cache_validated_with_origin_server +"/logging:v2beta1/HttpRequest/referer": referer +"/logging:v2beta1/HttpRequest/cacheHit": cache_hit +"/logging:v2beta1/HttpRequest/requestUrl": request_url +"/logging:v2beta1/HttpRequest/latency": latency +"/logging:v2beta1/HttpRequest/cacheFillBytes": cache_fill_bytes +"/logging:v2beta1/HttpRequest/requestMethod": request_method +"/logging:v2beta1/HttpRequest/remoteIp": remote_ip +"/logging:v2beta1/HttpRequest/serverIp": server_ip +"/logging:v2beta1/HttpRequest/userAgent": user_agent +"/logging:v2beta1/HttpRequest/requestSize": request_size +"/logging:v2beta1/RequestLog": request_log +"/logging:v2beta1/RequestLog/responseSize": response_size +"/logging:v2beta1/RequestLog/requestId": request_id +"/logging:v2beta1/RequestLog/first": first +"/logging:v2beta1/RequestLog/method": method_prop +"/logging:v2beta1/RequestLog/versionId": version_id +"/logging:v2beta1/RequestLog/status": status +"/logging:v2beta1/RequestLog/wasLoadingRequest": was_loading_request +"/logging:v2beta1/RequestLog/ip": ip +"/logging:v2beta1/RequestLog/nickname": nickname +"/logging:v2beta1/RequestLog/taskQueueName": task_queue_name +"/logging:v2beta1/RequestLog/pendingTime": pending_time +"/logging:v2beta1/RequestLog/instanceIndex": instance_index +"/logging:v2beta1/RequestLog/sourceReference": source_reference +"/logging:v2beta1/RequestLog/sourceReference/source_reference": source_reference +"/logging:v2beta1/RequestLog/moduleId": module_id +"/logging:v2beta1/RequestLog/host": host +"/logging:v2beta1/RequestLog/latency": latency +"/logging:v2beta1/RequestLog/urlMapEntry": url_map_entry +"/logging:v2beta1/RequestLog/endTime": end_time +"/logging:v2beta1/RequestLog/line": line +"/logging:v2beta1/RequestLog/line/line": line +"/logging:v2beta1/RequestLog/megaCycles": mega_cycles +"/logging:v2beta1/RequestLog/appId": app_id +"/logging:v2beta1/RequestLog/traceId": trace_id +"/logging:v2beta1/RequestLog/taskName": task_name +"/logging:v2beta1/RequestLog/cost": cost +"/logging:v2beta1/RequestLog/instanceId": instance_id +"/logging:v2beta1/RequestLog/startTime": start_time +"/logging:v2beta1/RequestLog/appEngineRelease": app_engine_release +"/logging:v2beta1/RequestLog/resource": resource +"/logging:v2beta1/RequestLog/httpVersion": http_version +"/logging:v2beta1/RequestLog/referrer": referrer +"/logging:v2beta1/RequestLog/userAgent": user_agent +"/logging:v2beta1/RequestLog/finished": finished +"/logging:v2beta1/WriteLogEntriesResponse": write_log_entries_response +"/logging:v2beta1/ListLogEntriesRequest": list_log_entries_request +"/logging:v2beta1/ListLogEntriesRequest/filter": filter +"/logging:v2beta1/ListLogEntriesRequest/projectIds": project_ids +"/logging:v2beta1/ListLogEntriesRequest/projectIds/project_id": project_id +"/logging:v2beta1/ListLogEntriesRequest/resourceNames": resource_names +"/logging:v2beta1/ListLogEntriesRequest/resourceNames/resource_name": resource_name +"/logging:v2beta1/ListLogEntriesRequest/pageSize": page_size +"/logging:v2beta1/ListLogEntriesRequest/orderBy": order_by +"/logging:v2beta1/ListLogEntriesRequest/pageToken": page_token "/mirror:v1/fields": fields "/mirror:v1/key": key "/mirror:v1/quotaUser": quota_user @@ -27845,7 +27909,6 @@ "/speech:v1beta1/RecognitionConfig/encoding": encoding "/speech:v1beta1/RecognitionConfig/profanityFilter": profanity_filter "/speech:v1beta1/RecognitionConfig/sampleRate": sample_rate -"/speech:v1beta1/RecognitionConfig/audioChannels": audio_channels "/speech:v1beta1/SyncRecognizeRequest": sync_recognize_request "/speech:v1beta1/SyncRecognizeRequest/audio": audio "/speech:v1beta1/SyncRecognizeRequest/config": config diff --git a/generated/google/apis/adexchangebuyer_v1_4.rb b/generated/google/apis/adexchangebuyer_v1_4.rb index 8ba1e9d71..5fa344c26 100644 --- a/generated/google/apis/adexchangebuyer_v1_4.rb +++ b/generated/google/apis/adexchangebuyer_v1_4.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/ad-exchange/buyer-rest module AdexchangebuyerV1_4 VERSION = 'V1_4' - REVISION = '20160831' + REVISION = '20161003' # Manage your Ad Exchange buyer account configuration AUTH_ADEXCHANGE_BUYER = 'https://www.googleapis.com/auth/adexchange.buyer' diff --git a/generated/google/apis/adexchangebuyer_v1_4/classes.rb b/generated/google/apis/adexchangebuyer_v1_4/classes.rb index da4faf272..f94bd7367 100644 --- a/generated/google/apis/adexchangebuyer_v1_4/classes.rb +++ b/generated/google/apis/adexchangebuyer_v1_4/classes.rb @@ -568,7 +568,8 @@ module Google # @return [Array] attr_accessor :languages - # If nativeAd is set, HTMLSnippet and videoURL should not be set. + # If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should + # not be set. (The videoURL inside nativeAd can be set.) # Corresponds to the JSON property `nativeAd` # @return [Google::Apis::AdexchangebuyerV1_4::Creative::NativeAd] attr_accessor :native_ad @@ -618,7 +619,8 @@ module Google # @return [Fixnum] attr_accessor :version - # The url to fetch a video ad. If set, HTMLSnippet should not be set. + # The URL to fetch a video ad. If set, HTMLSnippet and the nativeAd should not + # be set. Note, this is diffrent from resource.native_ad.video_url above. # Corresponds to the JSON property `videoURL` # @return [String] attr_accessor :video_url @@ -789,7 +791,8 @@ module Google end end - # If nativeAd is set, HTMLSnippet and videoURL should not be set. + # If nativeAd is set, HTMLSnippet and the videoURL outside of nativeAd should + # not be set. (The videoURL inside nativeAd can be set.) class NativeAd include Google::Apis::Core::Hashable @@ -853,6 +856,11 @@ module Google # @return [String] attr_accessor :store + # + # Corresponds to the JSON property `videoURL` + # @return [String] + attr_accessor :video_url + def initialize(**args) update!(**args) end @@ -871,6 +879,7 @@ module Google @price = args[:price] if args.key?(:price) @star_rating = args[:star_rating] if args.key?(:star_rating) @store = args[:store] if args.key?(:store) + @video_url = args[:video_url] if args.key?(:video_url) end # The app icon, for app download ads. @@ -1069,6 +1078,62 @@ module Google end end + # The external deal ids associated with a creative. + class CreativeDealIds + include Google::Apis::Core::Hashable + + # A list of external deal ids and ARC approval status. + # Corresponds to the JSON property `dealStatuses` + # @return [Array] + attr_accessor :deal_statuses + + # Resource type. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @deal_statuses = args[:deal_statuses] if args.key?(:deal_statuses) + @kind = args[:kind] if args.key?(:kind) + end + + # + class DealStatus + include Google::Apis::Core::Hashable + + # ARC approval status. + # Corresponds to the JSON property `arcStatus` + # @return [String] + attr_accessor :arc_status + + # External deal ID. + # Corresponds to the JSON property `dealId` + # @return [String] + attr_accessor :deal_id + + # Publisher ID. + # Corresponds to the JSON property `webPropertyId` + # @return [Fixnum] + attr_accessor :web_property_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @arc_status = args[:arc_status] if args.key?(:arc_status) + @deal_id = args[:deal_id] if args.key?(:deal_id) + @web_property_id = args[:web_property_id] if args.key?(:web_property_id) + end + end + end + # The creatives feed lists the active creatives for the Ad Exchange buyer # accounts that the user has access to. Each entry in the feed corresponds to a # single creative. @@ -1833,6 +1898,13 @@ module Google # @return [String] attr_accessor :inventory_description + # Indicates whether the current deal is a RFP template. RFP template is created + # by buyer and not based on seller created products. + # Corresponds to the JSON property `isRfpTemplate` + # @return [Boolean] + attr_accessor :is_rfp_template + alias_method :is_rfp_template?, :is_rfp_template + # Identifies what kind of resource this is. Value: the fixed string " # adexchangebuyer#marketplaceDeal". # Corresponds to the JSON property `kind` @@ -1915,6 +1987,7 @@ module Google @flight_end_time_ms = args[:flight_end_time_ms] if args.key?(:flight_end_time_ms) @flight_start_time_ms = args[:flight_start_time_ms] if args.key?(:flight_start_time_ms) @inventory_description = args[:inventory_description] if args.key?(:inventory_description) + @is_rfp_template = args[:is_rfp_template] if args.key?(:is_rfp_template) @kind = args[:kind] if args.key?(:kind) @last_update_time_ms = args[:last_update_time_ms] if args.key?(:last_update_time_ms) @name = args[:name] if args.key?(:name) @@ -2848,6 +2921,11 @@ module Google # @return [Google::Apis::AdexchangebuyerV1_4::PrivateData] attr_accessor :buyer_private_data + # IDs of DBM advertisers permission to this proposal. + # Corresponds to the JSON property `dbmAdvertiserIds` + # @return [Array] + attr_accessor :dbm_advertiser_ids + # When an proposal is in an accepted state, indicates whether the buyer has # signed off. Once both sides have signed off on a deal, the proposal can be # finalized by the seller. (seller-readonly) @@ -2959,6 +3037,7 @@ module Google @buyer = args[:buyer] if args.key?(:buyer) @buyer_contacts = args[:buyer_contacts] if args.key?(:buyer_contacts) @buyer_private_data = args[:buyer_private_data] if args.key?(:buyer_private_data) + @dbm_advertiser_ids = args[:dbm_advertiser_ids] if args.key?(:dbm_advertiser_ids) @has_buyer_signed_off = args[:has_buyer_signed_off] if args.key?(:has_buyer_signed_off) @has_seller_signed_off = args[:has_seller_signed_off] if args.key?(:has_seller_signed_off) @inventory_source = args[:inventory_source] if args.key?(:inventory_source) diff --git a/generated/google/apis/adexchangebuyer_v1_4/representations.rb b/generated/google/apis/adexchangebuyer_v1_4/representations.rb index a2b44d280..664b9f62d 100644 --- a/generated/google/apis/adexchangebuyer_v1_4/representations.rb +++ b/generated/google/apis/adexchangebuyer_v1_4/representations.rb @@ -178,6 +178,18 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class CreativeDealIds + class Representation < Google::Apis::Core::JsonRepresentation; end + + class DealStatus + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + include Google::Apis::Core::JsonObjectSupport + end + class CreativesList class Representation < Google::Apis::Core::JsonRepresentation; end @@ -697,6 +709,7 @@ module Google property :price, as: 'price' property :star_rating, as: 'starRating' property :store, as: 'store' + property :video_url, as: 'videoURL' end class AppIcon @@ -757,6 +770,24 @@ module Google end end + class CreativeDealIds + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :deal_statuses, as: 'dealStatuses', class: Google::Apis::AdexchangebuyerV1_4::CreativeDealIds::DealStatus, decorator: Google::Apis::AdexchangebuyerV1_4::CreativeDealIds::DealStatus::Representation + + property :kind, as: 'kind' + end + + class DealStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :arc_status, as: 'arcStatus' + property :deal_id, as: 'dealId' + property :web_property_id, as: 'webPropertyId' + end + end + end + class CreativesList # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -991,6 +1022,7 @@ module Google property :flight_end_time_ms, as: 'flightEndTimeMs' property :flight_start_time_ms, as: 'flightStartTimeMs' property :inventory_description, as: 'inventoryDescription' + property :is_rfp_template, as: 'isRfpTemplate' property :kind, as: 'kind' property :last_update_time_ms, as: 'lastUpdateTimeMs' property :name, as: 'name' @@ -1233,6 +1265,7 @@ module Google property :buyer_private_data, as: 'buyerPrivateData', class: Google::Apis::AdexchangebuyerV1_4::PrivateData, decorator: Google::Apis::AdexchangebuyerV1_4::PrivateData::Representation + collection :dbm_advertiser_ids, as: 'dbmAdvertiserIds' property :has_buyer_signed_off, as: 'hasBuyerSignedOff' property :has_seller_signed_off, as: 'hasSellerSignedOff' property :inventory_source, as: 'inventorySource' diff --git a/generated/google/apis/adexchangebuyer_v1_4/service.rb b/generated/google/apis/adexchangebuyer_v1_4/service.rb index 99faee456..6884c2fa6 100644 --- a/generated/google/apis/adexchangebuyer_v1_4/service.rb +++ b/generated/google/apis/adexchangebuyer_v1_4/service.rb @@ -562,6 +562,44 @@ module Google execute_or_queue_command(command, &block) end + # Lists the external deal ids associated with the creative. + # @param [Fixnum] account_id + # The id for the account that will serve this creative. + # @param [String] buyer_creative_id + # The buyer-specific id for this creative. + # @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. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::AdexchangebuyerV1_4::CreativeDealIds] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::AdexchangebuyerV1_4::CreativeDealIds] + # + # @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_creative_deals(account_id, buyer_creative_id, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:get, 'creatives/{accountId}/{buyerCreativeId}/listDeals', options) + command.response_representation = Google::Apis::AdexchangebuyerV1_4::CreativeDealIds::Representation + command.response_class = Google::Apis::AdexchangebuyerV1_4::CreativeDealIds + command.params['accountId'] = account_id unless account_id.nil? + command.params['buyerCreativeId'] = buyer_creative_id unless buyer_creative_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Remove a deal id associated with the creative. # @param [Fixnum] account_id # The id for the account that will serve this creative. diff --git a/generated/google/apis/adsense_v1_4.rb b/generated/google/apis/adsense_v1_4.rb index 9158c9891..6a28882a8 100644 --- a/generated/google/apis/adsense_v1_4.rb +++ b/generated/google/apis/adsense_v1_4.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/adsense/management/ module AdsenseV1_4 VERSION = 'V1_4' - REVISION = '20160918' + REVISION = '20160926' # View and manage your AdSense data AUTH_ADSENSE = 'https://www.googleapis.com/auth/adsense' diff --git a/generated/google/apis/adsensehost_v4_1.rb b/generated/google/apis/adsensehost_v4_1.rb index 60190ff28..c532799d5 100644 --- a/generated/google/apis/adsensehost_v4_1.rb +++ b/generated/google/apis/adsensehost_v4_1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/adsense/host/ module AdsensehostV4_1 VERSION = 'V4_1' - REVISION = '20160918' + REVISION = '20160926' # View and manage your AdSense host data and associated accounts AUTH_ADSENSEHOST = 'https://www.googleapis.com/auth/adsensehost' diff --git a/generated/google/apis/analyticsreporting_v4.rb b/generated/google/apis/analyticsreporting_v4.rb index 7eede7759..d5b7a2fa5 100644 --- a/generated/google/apis/analyticsreporting_v4.rb +++ b/generated/google/apis/analyticsreporting_v4.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/analytics/devguides/reporting/core/v4/ module AnalyticsreportingV4 VERSION = 'V4' - REVISION = '20160809' + REVISION = '20160926' # View your Google Analytics data AUTH_ANALYTICS_READONLY = 'https://www.googleapis.com/auth/analytics.readonly' diff --git a/generated/google/apis/androidenterprise_v1.rb b/generated/google/apis/androidenterprise_v1.rb index ff43857ee..fcd87e79d 100644 --- a/generated/google/apis/androidenterprise_v1.rb +++ b/generated/google/apis/androidenterprise_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/android/work/play/emm-api module AndroidenterpriseV1 VERSION = 'V1' - REVISION = '20160913' + REVISION = '20160928' # Manage corporate Android devices AUTH_ANDROIDENTERPRISE = 'https://www.googleapis.com/auth/androidenterprise' diff --git a/generated/google/apis/androidenterprise_v1/classes.rb b/generated/google/apis/androidenterprise_v1/classes.rb index c521f7af1..03798dfb4 100644 --- a/generated/google/apis/androidenterprise_v1/classes.rb +++ b/generated/google/apis/androidenterprise_v1/classes.rb @@ -113,7 +113,9 @@ module Google attr_accessor :entry # For choice or multiselect restrictions, the list of possible entries' machine- - # readable values. + # readable values. These values should be used in the configuration, either as a + # single string value for a choice restriction or in a stringArray for a + # multiselect restriction. # Corresponds to the JSON property `entryValue` # @return [Array] attr_accessor :entry_value @@ -124,7 +126,9 @@ module Google # @return [String] attr_accessor :key - # For bundle or bundleArray restrictions, the list of nested restrictions. + # For bundle or bundleArray restrictions, the list of nested restrictions. A + # bundle restriction is always nested within a bundleArray restriction, and a + # bundleArray restriction is at most two levels deep. # Corresponds to the JSON property `nestedRestriction` # @return [Array] attr_accessor :nested_restriction diff --git a/generated/google/apis/androidenterprise_v1/service.rb b/generated/google/apis/androidenterprise_v1/service.rb index 4577a3b1d..22edccd7c 100644 --- a/generated/google/apis/androidenterprise_v1/service.rb +++ b/generated/google/apis/androidenterprise_v1/service.rb @@ -1060,8 +1060,8 @@ module Google # service account authenticated for the request. The notification set may be # empty if no notification are pending. # A notification set returned needs to be acknowledged within 20 seconds by - # calling Enterprises.AcknowledgeNotificationSet, unless the notification set is - # empty. + # calling Enterprises​.AcknowledgeNotificationSet, unless the notification set + # is empty. # Notifications that are not acknowledged within the 20 seconds will eventually # be included again in the response to another PullNotificationSet request, and # those that are never acknowledged will ultimately be deleted according to the @@ -1069,11 +1069,16 @@ module Google # Multiple requests might be performed concurrently to retrieve notifications, # in which case the pending notifications (if any) will be split among each # caller, if any are pending. + # If no notifications are present, an empty notification list is returned. + # Subsequent requests may return more notifications once they become available. # @param [String] request_mode - # The request mode for pulling notifications. If omitted, defaults to - # WAIT_FOR_NOTIFCATIONS. - # If this is set to WAIT_FOR_NOTIFCATIONS, the request will eventually timeout, - # in which case it should be retried. + # The request mode for pulling notifications. + # Specifying waitForNotifications will cause the request to block and wait until + # one or more notifications are present, or return an empty notification list if + # no notifications are present after some time. + # Speciying returnImmediately will cause the request to immediately return the + # pending notifications, or an empty list if no notifications are present. + # If omitted, defaults to waitForNotifications. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -3445,6 +3450,9 @@ module Google # Creates a new EMM-managed user. # The Users resource passed in the body of the request should include an # accountIdentifier and an accountType. + # If a corresponding user already exists with the same account identifier, the + # user will be updated with the resource. In this case only the displayName + # field can be changed. # @param [String] enterprise_id # The ID of the enterprise. # @param [Google::Apis::AndroidenterpriseV1::User] user_object diff --git a/generated/google/apis/appsactivity_v1.rb b/generated/google/apis/appsactivity_v1.rb index fbad6d51a..2da17d263 100644 --- a/generated/google/apis/appsactivity_v1.rb +++ b/generated/google/apis/appsactivity_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/google-apps/activity/ module AppsactivityV1 VERSION = 'V1' - REVISION = '20160830' + REVISION = '20160916' # View the activity history of your Google Apps AUTH_ACTIVITY = 'https://www.googleapis.com/auth/activity' diff --git a/generated/google/apis/bigquery_v2.rb b/generated/google/apis/bigquery_v2.rb index df5279bfd..edd93a1a3 100644 --- a/generated/google/apis/bigquery_v2.rb +++ b/generated/google/apis/bigquery_v2.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/bigquery/ module BigqueryV2 VERSION = 'V2' - REVISION = '20160910' + REVISION = '20160922' # View and manage your data in Google BigQuery AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery' diff --git a/generated/google/apis/calendar_v3.rb b/generated/google/apis/calendar_v3.rb index 515b49b5f..c8763a96a 100644 --- a/generated/google/apis/calendar_v3.rb +++ b/generated/google/apis/calendar_v3.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/google-apps/calendar/firstapp module CalendarV3 VERSION = 'V3' - REVISION = '20160913' + REVISION = '20160927' # Manage your calendars AUTH_CALENDAR = 'https://www.googleapis.com/auth/calendar' diff --git a/generated/google/apis/cloudbuild_v1.rb b/generated/google/apis/cloudbuild_v1.rb index 348b93dbc..43324ad0f 100644 --- a/generated/google/apis/cloudbuild_v1.rb +++ b/generated/google/apis/cloudbuild_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/container-builder/docs/ module CloudbuildV1 VERSION = 'V1' - REVISION = '20160920' + REVISION = '20161003' # 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/cloudbuild_v1/classes.rb b/generated/google/apis/cloudbuild_v1/classes.rb index a91bb29e1..5721cfa9d 100644 --- a/generated/google/apis/cloudbuild_v1/classes.rb +++ b/generated/google/apis/cloudbuild_v1/classes.rb @@ -102,6 +102,15 @@ module Google # At a high level, a Build describes where to find source code, how to build # it (for example, the builder image to run on the source), and what tag to # apply to the built image when it is pushed to Google Container Registry. + # Fields can include the following variables which will be expanded when the + # build is created: + # - $PROJECT_ID: the project ID of the build. + # - $BUILD_ID: the autogenerated ID of the build. + # - $REPO_NAME: the source repository name specified by RepoSource. + # - $BRANCH_NAME: the branch name specified by RepoSource. + # - $TAG_NAME: the tag name specified by RepoSource. + # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or + # resolved from the specified branch or tag. # Corresponds to the JSON property `build` # @return [Google::Apis::CloudbuildV1::Build] attr_accessor :build @@ -326,6 +335,15 @@ module Google # At a high level, a Build describes where to find source code, how to build # it (for example, the builder image to run on the source), and what tag to # apply to the built image when it is pushed to Google Container Registry. + # Fields can include the following variables which will be expanded when the + # build is created: + # - $PROJECT_ID: the project ID of the build. + # - $BUILD_ID: the autogenerated ID of the build. + # - $REPO_NAME: the source repository name specified by RepoSource. + # - $BRANCH_NAME: the branch name specified by RepoSource. + # - $TAG_NAME: the tag name specified by RepoSource. + # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or + # resolved from the specified branch or tag. # Corresponds to the JSON property `build` # @return [Google::Apis::CloudbuildV1::Build] attr_accessor :build @@ -464,6 +482,15 @@ module Google # At a high level, a Build describes where to find source code, how to build # it (for example, the builder image to run on the source), and what tag to # apply to the built image when it is pushed to Google Container Registry. + # Fields can include the following variables which will be expanded when the + # build is created: + # - $PROJECT_ID: the project ID of the build. + # - $BUILD_ID: the autogenerated ID of the build. + # - $REPO_NAME: the source repository name specified by RepoSource. + # - $BRANCH_NAME: the branch name specified by RepoSource. + # - $TAG_NAME: the tag name specified by RepoSource. + # - $REVISION_ID or $COMMIT_SHA: the commit SHA specified by RepoSource or + # resolved from the specified branch or tag. class Build include Google::Apis::Core::Hashable @@ -538,10 +565,13 @@ module Google # @return [String] attr_accessor :status_detail - # List of images expected to be built and pushed to Google Container - # Registry. If an image is listed here and the image is not produced by - # one of the build steps, the build will fail. Any images present when - # the build steps are complete will be pushed to Container Registry. + # A list of images to be pushed upon the successful completion of all build + # steps. + # The images will be pushed using the builder + # service account's credentials. + # The digests of the pushed images will be stored in the Build resource's + # results field. + # If any of the images fail to be pushed, the build is marked FAILURE. # Corresponds to the JSON property `images` # @return [Array] attr_accessor :images @@ -724,7 +754,9 @@ module Google # @return [String] attr_accessor :id - # Additional environment variables to set for this step's container. + # A list of environment variable definitions to be used when running a step. + # The elements are of the form "KEY=VALUE" for the environment variable "KEY" + # being given the value "VALUE". # Corresponds to the JSON property `env` # @return [Array] attr_accessor :env @@ -738,13 +770,29 @@ module Google # @return [Array] attr_accessor :wait_for - # Command-line arguments to use when running this step's container. + # A list of arguments that will be presented to the step when it is started. + # If the image used to run the step's container has an entrypoint, these args + # will be used as arguments to that entrypoint. If the image does not define + # an entrypoint, the first element in args will be used as the entrypoint, + # and the remainder will be used as arguments. # Corresponds to the JSON property `args` # @return [Array] attr_accessor :args - # Name of the container image to use for creating this stage in the - # pipeline, as presented to `docker pull`. + # The name of the container image that will run this particular build step. + # If the image is already available in the host's + # Docker daemon's cache, it will be run directly. If not, the host will + # attempt to pull the image first, using the builder service account's + # credentials if necessary. + # The Docker daemon's cache will already have the latest versions of all of + # the officially supported build steps + # (https://github.com/GoogleCloudPlatform/cloud-builders). The Docker daemon + # will also have cached many of the layers for some popular images, like + # "ubuntu", "debian", but they will be refreshed at the time you attempt to + # use them. + # If you built an image in a previous build step, it will be stored in the + # host's Docker daemon's cache and is available to use as the name for a + # later build step. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name diff --git a/generated/google/apis/cloudresourcemanager_v1.rb b/generated/google/apis/cloudresourcemanager_v1.rb index bdbf5a500..d41391dd0 100644 --- a/generated/google/apis/cloudresourcemanager_v1.rb +++ b/generated/google/apis/cloudresourcemanager_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/resource-manager module CloudresourcemanagerV1 VERSION = 'V1' - REVISION = '20160617' + REVISION = '20160927' # 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/cloudresourcemanager_v1/classes.rb b/generated/google/apis/cloudresourcemanager_v1/classes.rb index b01f7a180..81b331353 100644 --- a/generated/google/apis/cloudresourcemanager_v1/classes.rb +++ b/generated/google/apis/cloudresourcemanager_v1/classes.rb @@ -22,6 +22,469 @@ module Google module Apis module CloudresourcemanagerV1 + # This resource represents a long-running operation that is the result of a + # network API call. + class Operation + include Google::Apis::Core::Hashable + + # 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 + + # 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 + + # 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` which 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 purpose. - 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::CloudresourcemanagerV1::Status] + attr_accessor :error + + # 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) + @name = args[:name] if args.key?(:name) + @metadata = args[:metadata] if args.key?(:metadata) + @done = args[:done] if args.key?(:done) + @error = args[:error] if args.key?(:error) + @response = args[:response] if args.key?(:response) + 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` which 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 purpose. - 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 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 + + # A list of messages that carry the error details. There will be a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @message = args[:message] if args.key?(:message) + @details = args[:details] if args.key?(:details) + end + end + + # The request sent to the `SearchOrganizations` method. + class SearchOrganizationsRequest + include Google::Apis::Core::Hashable + + # The maximum number of Organizations 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 `SearchOrganizations` that + # indicates from where listing should continue. This field is optional. + # Corresponds to the JSON property `pageToken` + # @return [String] + attr_accessor :page_token + + # An optional query string used to filter the Organizations to return in the + # response. Filter rules are case-insensitive. Organizations may be filtered by ` + # owner.directoryCustomerId` or by `domain`, where the domain is a Google for + # Work domain, for example: |Filter|Description| |------|-----------| |owner. + # directorycustomerid:123456789|Organizations with `owner.directory_customer_id` + # equal to `123456789`.| |domain:google.com|Organizations corresponding to the + # domain `google.com`.| This field is optional. + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + 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) + @filter = args[:filter] if args.key?(:filter) + end + end + + # The response returned from the `SearchOrganizations` method. + class SearchOrganizationsResponse + include Google::Apis::Core::Hashable + + # The list of Organizations that matched the search query, possibly paginated. + # Corresponds to the JSON property `organizations` + # @return [Array] + attr_accessor :organizations + + # A pagination token to be used to retrieve the next page of results. If the + # result is too large to fit within the page size specified in the request, this + # field will be set with a token that can be used to fetch the next page of + # results. If this field is empty, it indicates that this response contains the + # last page of results. + # 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) + @organizations = args[:organizations] if args.key?(:organizations) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # The root node in the resource hierarchy to which a particular entity's (e.g., + # company) resources belong. + class Organization + include Google::Apis::Core::Hashable + + # Output Only. The resource name of the organization. This is the organization's + # relative path in the API. Its format is "organizations/[organization_id]". For + # example, "organizations/1234". + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # A friendly string to be used to refer to the Organization in the UI. Assigned + # by the server, set to the firm name of the Google For Work customer that owns + # this organization. @OutputOnly + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # The entity that owns an Organization. The lifetime of the Organization and all + # of its descendants are bound to the `OrganizationOwner`. If the ` + # OrganizationOwner` is deleted, the Organization and all its descendants will + # be deleted. + # Corresponds to the JSON property `owner` + # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner] + attr_accessor :owner + + # Timestamp when the Organization was created. Assigned by the server. @ + # OutputOnly + # Corresponds to the JSON property `creationTime` + # @return [String] + attr_accessor :creation_time + + # The organization's current lifecycle state. Assigned by the server. @ + # OutputOnly + # Corresponds to the JSON property `lifecycleState` + # @return [String] + attr_accessor :lifecycle_state + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @display_name = args[:display_name] if args.key?(:display_name) + @owner = args[:owner] if args.key?(:owner) + @creation_time = args[:creation_time] if args.key?(:creation_time) + @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state) + end + end + + # The entity that owns an Organization. The lifetime of the Organization and all + # of its descendants are bound to the `OrganizationOwner`. If the ` + # OrganizationOwner` is deleted, the Organization and all its descendants will + # be deleted. + class OrganizationOwner + include Google::Apis::Core::Hashable + + # The Google for Work customer id used in the Directory API. + # Corresponds to the JSON property `directoryCustomerId` + # @return [String] + attr_accessor :directory_customer_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id) + 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). + # Corresponds to the JSON property `policy` + # @return [Google::Apis::CloudresourcemanagerV1::Policy] + attr_accessor :policy + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy = args[:policy] if args.key?(:policy) + 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). + class Policy + include Google::Apis::Core::Hashable + + # Version of the `Policy`. The default version is 0. + # Corresponds to the JSON property `version` + # @return [Fixnum] + attr_accessor :version + + # Associates a list of `members` to a `role`. Multiple `bindings` must not be + # specified for the same `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` + # @return [String] + attr_accessor :etag + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @version = args[:version] if args.key?(:version) + @bindings = args[:bindings] if args.key?(:bindings) + @etag = args[:etag] if args.key?(:etag) + end + end + + # Associates `members` with a `role`. + class Binding + include Google::Apis::Core::Hashable + + # 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 + + # 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 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @role = args[:role] if args.key?(:role) + @members = args[:members] if args.key?(:members) + 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 + + # 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 + # A Project is a high-level Google Cloud Platform entity. It is a container for # ACLs, APIs, AppEngine Apps, VMs, and other Google Cloud Platform resources. class Project @@ -185,246 +648,29 @@ module Google end end - # Request message for `GetIamPolicy` method. - class GetIamPolicyRequest + # 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 - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - 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). - class Policy - include Google::Apis::Core::Hashable - - # Version of the `Policy`. The default version is 0. - # Corresponds to the JSON property `version` - # @return [Fixnum] - attr_accessor :version - - # Associates a list of `members` to a `role`. Multiple `bindings` must not be - # specified for the same `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` + # Creation time of the project creation workflow. + # Corresponds to the JSON property `createTime` # @return [String] - attr_accessor :etag + attr_accessor :create_time - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @version = args[:version] if args.key?(:version) - @bindings = args[:bindings] if args.key?(:bindings) - @etag = args[:etag] if args.key?(:etag) - end - end - - # Associates `members` with a `role`. - class Binding - include Google::Apis::Core::Hashable - - # 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 - - # 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 - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @role = args[:role] if args.key?(:role) - @members = args[:members] if args.key?(:members) - 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). - # Corresponds to the JSON property `policy` - # @return [Google::Apis::CloudresourcemanagerV1::Policy] - attr_accessor :policy - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @policy = args[:policy] if args.key?(:policy) - 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. - # 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 - - # This resource represents a long-running operation that is the result of a - # network API call. - class Operation - include Google::Apis::Core::Hashable - - # 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 - - # 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 - - # 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` + # 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 :done - alias_method :done?, :done + attr_accessor :gettable + alias_method :gettable?, :gettable - # 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` which 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 purpose. - 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::CloudresourcemanagerV1::Status] - attr_accessor :error - - # 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 + # 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) @@ -432,66 +678,37 @@ module Google # Update properties of this object def update!(**args) - @name = args[:name] if args.key?(:name) - @metadata = args[:metadata] if args.key?(:metadata) - @done = args[:done] if args.key?(:done) - @error = args[:error] if args.key?(:error) - @response = args[:response] if args.key?(:response) + @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 `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` which 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 purpose. - 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 + # Metadata describing a long running folder operation + class FolderOperation 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 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` + # The display name of the folder. + # Corresponds to the JSON property `displayName` # @return [String] - attr_accessor :message + attr_accessor :display_name - # A list of messages that carry the error details. There will be a common set of - # message types for APIs to use. - # Corresponds to the JSON property `details` - # @return [Array>] - attr_accessor :details + # 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 + + # 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 def initialize(**args) update!(**args) @@ -499,9 +716,29 @@ module Google # Update properties of this object def update!(**args) - @code = args[:code] if args.key?(:code) - @message = args[:message] if args.key?(:message) - @details = args[:details] if args.key?(:details) + @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) + @destination_parent = args[:destination_parent] if args.key?(:destination_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 end diff --git a/generated/google/apis/cloudresourcemanager_v1/representations.rb b/generated/google/apis/cloudresourcemanager_v1/representations.rb index c36e73ec0..3b81b7036 100644 --- a/generated/google/apis/cloudresourcemanager_v1/representations.rb +++ b/generated/google/apis/cloudresourcemanager_v1/representations.rb @@ -22,6 +22,78 @@ module Google module Apis module CloudresourcemanagerV1 + class Operation + 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 SearchOrganizationsRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SearchOrganizationsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Organization + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class OrganizationOwner + 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 Policy + 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 GetIamPolicyRequest + 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 Project class Representation < Google::Apis::Core::JsonRepresentation; end @@ -52,52 +124,126 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class GetIamPolicyRequest + class ProjectCreationStatus class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class Policy + class FolderOperation 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 SetIamPolicyRequest - 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 FolderOperationError class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end class Operation - class Representation < Google::Apis::Core::JsonRepresentation; end + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + hash :metadata, as: 'metadata' + property :done, as: 'done' + property :error, as: 'error', class: Google::Apis::CloudresourcemanagerV1::Status, decorator: Google::Apis::CloudresourcemanagerV1::Status::Representation - include Google::Apis::Core::JsonObjectSupport + hash :response, as: 'response' + end end class Status - class Representation < Google::Apis::Core::JsonRepresentation; end + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :message, as: 'message' + collection :details, as: 'details' + end + end - include Google::Apis::Core::JsonObjectSupport + class SearchOrganizationsRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :page_size, as: 'pageSize' + property :page_token, as: 'pageToken' + property :filter, as: 'filter' + end + end + + class SearchOrganizationsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :organizations, as: 'organizations', class: Google::Apis::CloudresourcemanagerV1::Organization, decorator: Google::Apis::CloudresourcemanagerV1::Organization::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class Organization + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :display_name, as: 'displayName' + property :owner, as: 'owner', class: Google::Apis::CloudresourcemanagerV1::OrganizationOwner, decorator: Google::Apis::CloudresourcemanagerV1::OrganizationOwner::Representation + + property :creation_time, as: 'creationTime' + property :lifecycle_state, as: 'lifecycleState' + end + end + + class OrganizationOwner + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :directory_customer_id, as: 'directoryCustomerId' + end + end + + class SetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy, as: 'policy', class: Google::Apis::CloudresourcemanagerV1::Policy, decorator: Google::Apis::CloudresourcemanagerV1::Policy::Representation + + end + end + + class Policy + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :version, as: 'version' + collection :bindings, as: 'bindings', class: Google::Apis::CloudresourcemanagerV1::Binding, decorator: Google::Apis::CloudresourcemanagerV1::Binding::Representation + + property :etag, :base64 => true, as: 'etag' + end + end + + class Binding + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :role, as: 'role' + collection :members, as: 'members' + end + end + + class GetIamPolicyRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + 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 Project @@ -143,70 +289,29 @@ module Google end end - class GetIamPolicyRequest + 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 Policy + class FolderOperation # @private class Representation < Google::Apis::Core::JsonRepresentation - property :version, as: 'version' - collection :bindings, as: 'bindings', class: Google::Apis::CloudresourcemanagerV1::Binding, decorator: Google::Apis::CloudresourcemanagerV1::Binding::Representation - - property :etag, :base64 => true, as: 'etag' + property :display_name, as: 'displayName' + property :operation_type, as: 'operationType' + property :source_parent, as: 'sourceParent' + property :destination_parent, as: 'destinationParent' end end - class Binding + class FolderOperationError # @private class Representation < Google::Apis::Core::JsonRepresentation - property :role, as: 'role' - collection :members, as: 'members' - end - end - - class SetIamPolicyRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :policy, as: 'policy', class: Google::Apis::CloudresourcemanagerV1::Policy, decorator: Google::Apis::CloudresourcemanagerV1::Policy::Representation - - 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 Operation - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :name, as: 'name' - hash :metadata, as: 'metadata' - property :done, as: 'done' - property :error, as: 'error', class: Google::Apis::CloudresourcemanagerV1::Status, decorator: Google::Apis::CloudresourcemanagerV1::Status::Representation - - hash :response, as: 'response' - end - end - - class Status - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :code, as: 'code' - property :message, as: 'message' - collection :details, as: 'details' + property :error_message_id, as: 'errorMessageId' end end end diff --git a/generated/google/apis/cloudresourcemanager_v1/service.rb b/generated/google/apis/cloudresourcemanager_v1/service.rb index c7c8736e8..a2a08a683 100644 --- a/generated/google/apis/cloudresourcemanager_v1/service.rb +++ b/generated/google/apis/cloudresourcemanager_v1/service.rb @@ -47,6 +47,210 @@ module Google super('https://cloudresourcemanager.googleapis.com/', '') end + # Gets the latest state of a long-running operation. Clients can use this method + # to poll the operation result at intervals as recommended by the API service. + # @param [String] name + # The name of the operation resource. + # @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::CloudresourcemanagerV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::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 get_operation(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV1::Operation::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::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 + + # Searches Organization resources that are visible to the user and satisfy the + # specified filter. This method returns Organizations in an unspecified order. + # New Organizations do not necessarily appear at the end of the results. + # @param [Google::Apis::CloudresourcemanagerV1::SearchOrganizationsRequest] search_organizations_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::CloudresourcemanagerV1::SearchOrganizationsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse] + # + # @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_organizations(search_organizations_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/organizations:search', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1::SearchOrganizationsRequest::Representation + command.request_object = search_organizations_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Fetches an Organization resource identified by the specified resource name. + # @param [String] name + # The resource name of the Organization to fetch, e.g. "organizations/1234". + # @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::CloudresourcemanagerV1::Organization] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::Organization] + # + # @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_organization(name, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+name}', options) + command.response_representation = Google::Apis::CloudresourcemanagerV1::Organization::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::Organization + 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 + + # Sets the access control policy on an Organization resource. Replaces any + # existing policy. The `resource` field should be the organization's resource + # name, e.g. "organizations/123". + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. `resource` is + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. + # @param [Google::Apis::CloudresourcemanagerV1::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::CloudresourcemanagerV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::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_organization_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::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 + + # Gets the access control policy for an Organization resource. May be empty if + # no such policy or resource exists. The `resource` field should be the + # organization's resource name, e.g. "organizations/123". + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. `resource` is + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. + # @param [Google::Apis::CloudresourcemanagerV1::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::CloudresourcemanagerV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::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_organization_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1::GetIamPolicyRequest::Representation + command.request_object = get_iam_policy_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1::Policy::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::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 Organization. The ` + # resource` field should be the organization's resource name, e.g. " + # organizations/123". + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. ` + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. + # @param [Google::Apis::CloudresourcemanagerV1::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::CloudresourcemanagerV1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::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_organization_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::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 + # Retrieves the Project identified by the specified `project_id` (for example, ` # my-project-123`). The caller must have read permissions for this Project. # @param [String] project_id @@ -127,6 +331,42 @@ module Google execute_or_queue_command(command, &block) end + # Request that a new Project be created. The result is an Operation which can be + # used to track the creation process. It is automatically deleted after a few + # hours, so there is no need to call DeleteOperation. Our SLO permits Project + # creation to take up to 30 seconds at the 90th percentile. As of 2016-08-29, we + # are observing 6 seconds 50th percentile latency. 95th percentile latency is + # around 11 seconds. We recommend polling at the 5th second with an exponential + # backoff. + # @param [Google::Apis::CloudresourcemanagerV1::Project] project_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::CloudresourcemanagerV1::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::CloudresourcemanagerV1::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_project(project_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/projects', options) + command.request_representation = Google::Apis::CloudresourcemanagerV1::Project::Representation + command.request_object = project_object + command.response_representation = Google::Apis::CloudresourcemanagerV1::Operation::Representation + command.response_class = Google::Apis::CloudresourcemanagerV1::Operation + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + # Updates the attributes of the Project identified by the specified `project_id` # (for example, `my-project-123`). The caller must have modify permissions for # this Project. @@ -242,9 +482,8 @@ module Google # denied if the policy or the resource does not exist. # @param [String] resource # REQUIRED: The resource for which the policy is being requested. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `getIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1::GetIamPolicyRequest] get_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -287,11 +526,10 @@ module Google # accept the invitation. + Invitations to grant the owner role cannot be sent # using `setIamPolicy()`; they must be sent only using the Cloud Platform # Console. + Membership changes that leave the project without any owners that - # have accepted the Terms of Service (ToS) will be rejected. + Members cannot be - # added to more than one role in the same policy. + There must be at least one - # owner who has accepted the Terms of Service (ToS) agreement in the policy. - # Calling `setIamPolicy()` to to remove the last ToS-accepted owner from the - # policy will fail. This restriction also applies to legacy projects that no + # have accepted the Terms of Service (ToS) will be rejected. + There must be at + # least one owner who has accepted the Terms of Service (ToS) agreement in the + # policy. Calling `setIamPolicy()` to to remove the last ToS-accepted owner from + # the policy will fail. This restriction also applies to legacy projects that no # longer have owners who have accepted the ToS. Edits to IAM policies will be # rejected until the lack of a ToS-accepting owner is rectified. + Calling this # method requires enabling the App Engine Admin API. Note: Removing service @@ -300,9 +538,8 @@ module Google # used before removing or updating its roles. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `setIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1::SetIamPolicyRequest] set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -336,9 +573,8 @@ module Google # Returns permissions that a caller has on the specified Project. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. ` - # resource` is usually specified as a path, such as `projects/*project*/zones/* - # zone*/disks/*disk*`. The format for the path specified in this value is - # resource specific and is specified in the `testIamPermissions` documentation. + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1::TestIamPermissionsRequest] test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -368,37 +604,6 @@ module Google command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - - # Gets the latest state of a long-running operation. Clients can use this method - # to poll the operation result at intervals as recommended by the API service. - # @param [String] name - # The name of the operation resource. - # @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::CloudresourcemanagerV1::Operation] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::CloudresourcemanagerV1::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 get_operation(name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v1/{+name}', options) - command.response_representation = Google::Apis::CloudresourcemanagerV1::Operation::Representation - command.response_class = Google::Apis::CloudresourcemanagerV1::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 protected diff --git a/generated/google/apis/cloudresourcemanager_v1beta1.rb b/generated/google/apis/cloudresourcemanager_v1beta1.rb index f8d15a918..1d62c9b71 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/resource-manager module CloudresourcemanagerV1beta1 VERSION = 'V1beta1' - REVISION = '20160617' + REVISION = '20160927' # 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/cloudresourcemanager_v1beta1/classes.rb b/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb index da39a54a4..7b8b2c42b 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb @@ -372,8 +372,8 @@ module Google 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. + # (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 @@ -455,8 +455,9 @@ module Google # @return [String] attr_accessor :organization_id - # A friendly string to be used to refer to the Organization in the UI. This - # field is required. + # A friendly string to be used to refer to the Organization in the UI. Assigned + # by the server, set to the firm name of the Google For Work customer that owns + # this organization. @OutputOnly # Corresponds to the JSON property `displayName` # @return [String] attr_accessor :display_name @@ -517,6 +518,100 @@ module Google @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id) 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 + + # Metadata describing a long running folder operation + class FolderOperation + include Google::Apis::Core::Hashable + + # 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 + + # 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 + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @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) + @destination_parent = args[:destination_parent] if args.key?(:destination_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 end end end diff --git a/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb b/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb index fefef83cc..6205727a7 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb @@ -124,6 +124,24 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class ProjectCreationStatus + 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 Project # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -263,6 +281,32 @@ module Google property :directory_customer_id, as: 'directoryCustomerId' 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 FolderOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :display_name, as: 'displayName' + property :operation_type, as: 'operationType' + property :source_parent, as: 'sourceParent' + property :destination_parent, as: 'destinationParent' + end + end + + class FolderOperationError + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :error_message_id, as: 'errorMessageId' + end + end end end end diff --git a/generated/google/apis/cloudresourcemanager_v1beta1/service.rb b/generated/google/apis/cloudresourcemanager_v1beta1/service.rb index a9661c5bf..fd8b6f731 100644 --- a/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +++ b/generated/google/apis/cloudresourcemanager_v1beta1/service.rb @@ -52,6 +52,8 @@ module Google # or update the Project. Several APIs are activated automatically for the # Project, including Google Cloud Storage. # @param [Google::Apis::CloudresourcemanagerV1beta1::Project] project_object + # @param [Boolean] use_legacy_stack + # A safety hatch to opt out of the new reliable project creation process. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -69,12 +71,13 @@ module Google # @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_project(project_object = nil, fields: nil, quota_user: nil, options: nil, &block) + def create_project(project_object = nil, use_legacy_stack: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1beta1/projects', options) command.request_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation command.request_object = project_object command.response_representation = Google::Apis::CloudresourcemanagerV1beta1::Project::Representation command.response_class = Google::Apis::CloudresourcemanagerV1beta1::Project + command.query['useLegacyStack'] = use_legacy_stack unless use_legacy_stack.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) @@ -310,9 +313,8 @@ module Google # denied if the policy or the resource does not exist. # @param [String] resource # REQUIRED: The resource for which the policy is being requested. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `getIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest] get_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -355,11 +357,10 @@ module Google # accept the invitation. + Invitations to grant the owner role cannot be sent # using `setIamPolicy()`; they must be sent only using the Cloud Platform # Console. + Membership changes that leave the project without any owners that - # have accepted the Terms of Service (ToS) will be rejected. + Members cannot be - # added to more than one role in the same policy. + There must be at least one - # owner who has accepted the Terms of Service (ToS) agreement in the policy. - # Calling `setIamPolicy()` to to remove the last ToS-accepted owner from the - # policy will fail. This restriction also applies to legacy projects that no + # have accepted the Terms of Service (ToS) will be rejected. + There must be at + # least one owner who has accepted the Terms of Service (ToS) agreement in the + # policy. Calling `setIamPolicy()` to to remove the last ToS-accepted owner from + # the policy will fail. This restriction also applies to legacy projects that no # longer have owners who have accepted the ToS. Edits to IAM policies will be # rejected until the lack of a ToS-accepting owner is rectified. + Calling this # method requires enabling the App Engine Admin API. Note: Removing service @@ -368,9 +369,8 @@ module Google # used before removing or updating its roles. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `setIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest] set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -404,9 +404,8 @@ module Google # Returns permissions that a caller has on the specified Project. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. ` - # resource` is usually specified as a path, such as `projects/*project*/zones/* - # zone*/disks/*disk*`. The format for the path specified in this value is - # resource specific and is specified in the `testIamPermissions` documentation. + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -485,8 +484,7 @@ module Google # Fetches an Organization resource identified by the specified resource name. # @param [String] name - # The resource name of the Organization to fetch. Its format is "organizations/[ - # organization_id]". For example, "organizations/1234". + # The resource name of the Organization to fetch, e.g. "organizations/1234". # @param [String] organization_id # The id of the Organization resource to fetch. This field is deprecated and # will be removed in v1. Use name instead. @@ -555,13 +553,11 @@ module Google # Sets the access control policy on an Organization resource. Replaces any # existing policy. The `resource` field should be the organization's resource - # name, e.g. "organizations/123". For backward compatibility, the resource - # provided may also be the organization_id. This will not be supported in v1. + # name, e.g. "organizations/123". # @param [String] resource # REQUIRED: The resource for which the policy is being specified. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `setIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1beta1::SetIamPolicyRequest] set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -594,14 +590,11 @@ module Google # Gets the access control policy for an Organization resource. May be empty if # no such policy or resource exists. The `resource` field should be the - # organization's resource name, e.g. "organizations/123". For backward - # compatibility, the resource provided may also be the organization_id. This - # will not be supported in v1. + # organization's resource name, e.g. "organizations/123". # @param [String] resource # REQUIRED: The resource for which the policy is being requested. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `getIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1beta1::GetIamPolicyRequest] get_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -634,13 +627,11 @@ module Google # Returns permissions that a caller has on the specified Organization. The ` # resource` field should be the organization's resource name, e.g. " - # organizations/123". For backward compatibility, the resource provided may also - # be the organization_id. This will not be supported in v1. + # organizations/123". # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. ` - # resource` is usually specified as a path, such as `projects/*project*/zones/* - # zone*/disks/*disk*`. The format for the path specified in this value is - # resource specific and is specified in the `testIamPermissions` documentation. + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. # @param [Google::Apis::CloudresourcemanagerV1beta1::TestIamPermissionsRequest] test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. diff --git a/generated/google/apis/compute_beta.rb b/generated/google/apis/compute_beta.rb index 9d605b032..45e0f1eff 100644 --- a/generated/google/apis/compute_beta.rb +++ b/generated/google/apis/compute_beta.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/compute/docs/reference/latest/ module ComputeBeta VERSION = 'Beta' - REVISION = '20160908' + REVISION = '20160926' # 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/compute_beta/classes.rb b/generated/google/apis/compute_beta/classes.rb index 99cbaebc4..f60d53839 100644 --- a/generated/google/apis/compute_beta/classes.rb +++ b/generated/google/apis/compute_beta/classes.rb @@ -588,8 +588,8 @@ module Google attr_accessor :status # [Output Only] Human-readable details about the current state of the autoscaler. - # Examples: ?Error when fetching replicas: Replica Pool xxx doesn?t exist.? ? - # Autoscaling capped at min_num_replicas: 2.? + # Read the documentation for Commonly returned status messages for examples of + # status messages you might encounter. # Corresponds to the JSON property `statusDetails` # @return [Array] attr_accessor :status_details @@ -728,12 +728,12 @@ module Google class AutoscalerStatusDetails include Google::Apis::Core::Hashable - # + # The status message. # Corresponds to the JSON property `message` # @return [String] attr_accessor :message - # + # The type of error returned. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type @@ -931,12 +931,12 @@ module Google class AutoscalingPolicyCustomMetricUtilization include Google::Apis::Core::Hashable - # The identifier of the Cloud Monitoring metric. The metric cannot have negative - # values and should be a utilization metric, which means that the number of - # virtual machines handling requests should increase or decrease proportionally - # to the metric. The metric must also have a label of compute.googleapis.com/ - # resource_id with the value of the instance's unique ID, although this alone - # does not guarantee that the metric is valid. + # The identifier of the Stackdriver Monitoring metric. The metric cannot have + # negative values and should be a utilization metric, which means that the + # number of virtual machines handling requests should increase or decrease + # proportionally to the metric. The metric must also have a label of compute. + # googleapis.com/resource_id with the value of the instance's unique ID, + # although this alone does not guarantee that the metric is valid. # For example, the following is a valid metric: # compute.googleapis.com/instance/network/received_bytes_count # The following is not a valid metric because it does not increase or decrease @@ -952,7 +952,7 @@ module Google # @return [Float] attr_accessor :utilization_target - # Defines how target utilization value is expressed for a Cloud Monitoring + # Defines how target utilization value is expressed for a Stackdriver Monitoring # metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, # the default is GAUGE. # Corresponds to the JSON property `utilizationTargetType` @@ -2903,11 +2903,12 @@ module Google end end - # Features supported by the guest os. + # Guest OS features. class GuestOsFeature include Google::Apis::Core::Hashable - # The type of supported feature.. + # The type of supported feature. Currenty only VIRTIO_SCSI_MULTIQUEUE is + # supported. # Corresponds to the JSON property `type` # @return [String] attr_accessor :type @@ -3676,7 +3677,12 @@ module Google # @return [String] attr_accessor :family - # Features of the guest os, valid for bootable images only. + # A list of features to enable on the guest OS. Applicable for bootable images + # only. Currently, only one feature is supported, VIRTIO_SCSCI_MULTIQUEUE, which + # allows each virtual CPU to have its own queue. For Windows images, you can + # only enable VIRTIO_SCSCI_MULTIQUEUE on images with driver version 1.2.0.1621 + # or higher. Linux images with kernel versions 3.17 and higher will support + # VIRTIO_SCSCI_MULTIQUEUE. # Corresponds to the JSON property `guestOsFeatures` # @return [Array] attr_accessor :guest_os_features @@ -4131,8 +4137,8 @@ module Google # @return [String] attr_accessor :fingerprint - # [Output Only] A unique identifier for this instance group. The server - # generates this identifier. + # [Output Only] A unique identifier for this instance group, generated by the + # server. # Corresponds to the JSON property `id` # @return [String] attr_accessor :id @@ -6554,7 +6560,9 @@ module Google # @return [String] attr_accessor :target_id - # [Output Only] The URL of the resource that the operation modifies. + # [Output Only] The URL of the resource that the operation modifies. If creating + # a persistent disk snapshot, this points to the persistent disk that the + # snapshot was created from. # Corresponds to the JSON property `targetLink` # @return [String] attr_accessor :target_link @@ -7053,6 +7061,12 @@ module Google # @return [Google::Apis::ComputeBeta::UsageExportLocation] attr_accessor :usage_export_location + # [Output Only] The role this project has in a Cross Project Network (XPN) + # configuration. Currently only HOST projects are differentiated. + # Corresponds to the JSON property `xpnProjectStatus` + # @return [String] + attr_accessor :xpn_project_status + def initialize(**args) update!(**args) end @@ -7070,6 +7084,7 @@ module Google @quotas = args[:quotas] if args.key?(:quotas) @self_link = args[:self_link] if args.key?(:self_link) @usage_export_location = args[:usage_export_location] if args.key?(:usage_export_location) + @xpn_project_status = args[:xpn_project_status] if args.key?(:xpn_project_status) end end @@ -7618,7 +7633,7 @@ module Google class ResourceGroupReference include Google::Apis::Core::Hashable - # A URI referencing one of the resource views listed in the backend service. + # A URI referencing one of the instance groups listed in the backend service. # Corresponds to the JSON property `group` # @return [String] attr_accessor :group diff --git a/generated/google/apis/compute_beta/representations.rb b/generated/google/apis/compute_beta/representations.rb index a383c7238..8678d2909 100644 --- a/generated/google/apis/compute_beta/representations.rb +++ b/generated/google/apis/compute_beta/representations.rb @@ -3203,6 +3203,7 @@ module Google property :self_link, as: 'selfLink' property :usage_export_location, as: 'usageExportLocation', class: Google::Apis::ComputeBeta::UsageExportLocation, decorator: Google::Apis::ComputeBeta::UsageExportLocation::Representation + property :xpn_project_status, as: 'xpnProjectStatus' end end diff --git a/generated/google/apis/compute_beta/service.rb b/generated/google/apis/compute_beta/service.rb index f23281118..f905f1cd2 100644 --- a/generated/google/apis/compute_beta/service.rb +++ b/generated/google/apis/compute_beta/service.rb @@ -8110,7 +8110,7 @@ module Google execute_or_queue_command(command, &block) end - # Updates a autoscaler in the specified project using the data included in the + # Updates an autoscaler in the specified project using the data included in the # request. This method supports patch semantics. # @param [String] project # Project ID for this request. @@ -8199,7 +8199,7 @@ module Google execute_or_queue_command(command, &block) end - # Updates a autoscaler in the specified project using the data included in the + # Updates an autoscaler in the specified project using the data included in the # request. # @param [String] project # Project ID for this request. @@ -8774,7 +8774,7 @@ module Google execute_or_queue_command(command, &block) end - # Returns all of the details for the specified managed instance group. + # Returns all of the details about the specified managed instance group. # @param [String] project # Project ID for this request. # @param [String] region @@ -8985,6 +8985,54 @@ module Google execute_or_queue_command(command, &block) end + # Updates a managed instance group using the information that you specify in the + # request. This operation is marked as DONE when the group is updated even if + # the instances in the group have not yet been updated. You must separately + # verify the status of the individual instances with the listmanagedinstances + # method. This method supports patch semantics. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeBeta::InstanceGroupManager] instance_group_manager_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. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::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 patch_region_instance_group_manager(project, region, instance_group_manager, instance_group_manager_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:patch, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}', options) + command.request_representation = Google::Apis::ComputeBeta::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Schedules a group action to recreate the specified instances in the managed # instance group. The instances are deleted and recreated using the current # instance template for the managed instance group. This operation is marked as @@ -9129,8 +9177,8 @@ module Google execute_or_queue_command(command, &block) end - # Sets the instance template to use when creating new instances in this group. - # Existing instances are not affected. + # Sets the instance template to use when creating new instances or recreating + # instances in this group. Existing instances are not affected. # @param [String] project # Project ID for this request. # @param [String] region @@ -9263,6 +9311,54 @@ module Google execute_or_queue_command(command, &block) end + # Updates a managed instance group using the information that you specify in the + # request. This operation is marked as DONE when the group is updated even if + # the instances in the group have not yet been updated. You must separately + # verify the status of the individual instances with the listmanagedinstances + # method. + # @param [String] project + # Project ID for this request. + # @param [String] region + # Name of the region scoping this request. + # @param [String] instance_group_manager + # The name of the instance group manager. + # @param [Google::Apis::ComputeBeta::InstanceGroupManager] instance_group_manager_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. + # Overrides userIp if both are provided. + # @param [String] user_ip + # IP address of the site where the request originates. Use this if you want to + # enforce per-user limits. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::ComputeBeta::Operation] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::ComputeBeta::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 update_region_instance_group_manager(project, region, instance_group_manager, instance_group_manager_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:put, '{project}/regions/{region}/instanceGroupManagers/{instanceGroupManager}', options) + command.request_representation = Google::Apis::ComputeBeta::InstanceGroupManager::Representation + command.request_object = instance_group_manager_object + command.response_representation = Google::Apis::ComputeBeta::Operation::Representation + command.response_class = Google::Apis::ComputeBeta::Operation + command.params['project'] = project unless project.nil? + command.params['region'] = region unless region.nil? + command.params['instanceGroupManager'] = instance_group_manager unless instance_group_manager.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['userIp'] = user_ip unless user_ip.nil? + execute_or_queue_command(command, &block) + end + # Returns the specified instance group resource. # @param [String] project # Project ID for this request. diff --git a/generated/google/apis/compute_v1.rb b/generated/google/apis/compute_v1.rb index a60bb546c..5f47c8cdb 100644 --- a/generated/google/apis/compute_v1.rb +++ b/generated/google/apis/compute_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/compute/docs/reference/latest/ module ComputeV1 VERSION = 'V1' - REVISION = '20160908' + REVISION = '20160926' # 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/compute_v1/classes.rb b/generated/google/apis/compute_v1/classes.rb index fb92aa9fd..44cb458f7 100644 --- a/generated/google/apis/compute_v1/classes.rb +++ b/generated/google/apis/compute_v1/classes.rb @@ -565,6 +565,12 @@ module Google # @return [String] attr_accessor :name + # [Output Only] URL of the region where the instance group resides (for + # autoscalers living in regional scope). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + # [Output Only] Server-defined URL for the resource. # Corresponds to the JSON property `selfLink` # @return [String] @@ -593,6 +599,7 @@ module Google @id = args[:id] if args.key?(:id) @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) + @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) @target = args[:target] if args.key?(:target) @zone = args[:zone] if args.key?(:zone) @@ -879,12 +886,12 @@ module Google class AutoscalingPolicyCustomMetricUtilization include Google::Apis::Core::Hashable - # The identifier of the Cloud Monitoring metric. The metric cannot have negative - # values and should be a utilization metric, which means that the number of - # virtual machines handling requests should increase or decrease proportionally - # to the metric. The metric must also have a label of compute.googleapis.com/ - # resource_id with the value of the instance's unique ID, although this alone - # does not guarantee that the metric is valid. + # The identifier of the Stackdriver Monitoring metric. The metric cannot have + # negative values and should be a utilization metric, which means that the + # number of virtual machines handling requests should increase or decrease + # proportionally to the metric. The metric must also have a label of compute. + # googleapis.com/resource_id with the value of the instance's unique ID, + # although this alone does not guarantee that the metric is valid. # For example, the following is a valid metric: # compute.googleapis.com/instance/network/received_bytes_count # The following is not a valid metric because it does not increase or decrease @@ -900,7 +907,7 @@ module Google # @return [Float] attr_accessor :utilization_target - # Defines how target utilization value is expressed for a Cloud Monitoring + # Defines how target utilization value is expressed for a Stackdriver Monitoring # metric. Either GAUGE, DELTA_PER_SECOND, or DELTA_PER_MINUTE. If not specified, # the default is GAUGE. # Corresponds to the JSON property `utilizationTargetType` @@ -3754,8 +3761,8 @@ module Google # @return [String] attr_accessor :fingerprint - # [Output Only] A unique identifier for this instance group. The server - # generates this identifier. + # [Output Only] A unique identifier for this instance group, generated by the + # server. # Corresponds to the JSON property `id` # @return [String] attr_accessor :id @@ -3786,6 +3793,12 @@ module Google # @return [String] attr_accessor :network + # The URL of the region where the instance group is located (for regional + # resources). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + # [Output Only] The URL for this instance group. The server generates this URL. # Corresponds to the JSON property `selfLink` # @return [String] @@ -3821,6 +3834,7 @@ module Google @name = args[:name] if args.key?(:name) @named_ports = args[:named_ports] if args.key?(:named_ports) @network = args[:network] if args.key?(:network) + @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) @size = args[:size] if args.key?(:size) @subnetwork = args[:subnetwork] if args.key?(:subnetwork) @@ -3998,6 +4012,12 @@ module Google # @return [Array] attr_accessor :named_ports + # [Output Only] The URL of the region where the managed instance group resides ( + # for regional resources). + # Corresponds to the JSON property `region` + # @return [String] + attr_accessor :region + # [Output Only] The URL for this managed instance group. The server defines this # URL. # Corresponds to the JSON property `selfLink` @@ -4041,6 +4061,7 @@ module Google @kind = args[:kind] if args.key?(:kind) @name = args[:name] if args.key?(:name) @named_ports = args[:named_ports] if args.key?(:named_ports) + @region = args[:region] if args.key?(:region) @self_link = args[:self_link] if args.key?(:self_link) @target_pools = args[:target_pools] if args.key?(:target_pools) @target_size = args[:target_size] if args.key?(:target_size) @@ -6048,7 +6069,9 @@ module Google # @return [String] attr_accessor :target_id - # [Output Only] The URL of the resource that the operation modifies. + # [Output Only] The URL of the resource that the operation modifies. If creating + # a persistent disk snapshot, this points to the persistent disk that the + # snapshot was created from. # Corresponds to the JSON property `targetLink` # @return [String] attr_accessor :target_link @@ -6725,7 +6748,7 @@ module Google class ResourceGroupReference include Google::Apis::Core::Hashable - # A URI referencing one of the resource views listed in the backend service. + # A URI referencing one of the instance groups listed in the backend service. # Corresponds to the JSON property `group` # @return [String] attr_accessor :group diff --git a/generated/google/apis/compute_v1/representations.rb b/generated/google/apis/compute_v1/representations.rb index b110e01ec..4f0b30c5d 100644 --- a/generated/google/apis/compute_v1/representations.rb +++ b/generated/google/apis/compute_v1/representations.rb @@ -1480,6 +1480,7 @@ module Google property :id, as: 'id' property :kind, as: 'kind' property :name, as: 'name' + property :region, as: 'region' property :self_link, as: 'selfLink' property :target, as: 'target' property :zone, as: 'zone' @@ -2217,6 +2218,7 @@ module Google collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeV1::NamedPort, decorator: Google::Apis::ComputeV1::NamedPort::Representation property :network, as: 'network' + property :region, as: 'region' property :self_link, as: 'selfLink' property :size, as: 'size' property :subnetwork, as: 'subnetwork' @@ -2264,6 +2266,7 @@ module Google property :name, as: 'name' collection :named_ports, as: 'namedPorts', class: Google::Apis::ComputeV1::NamedPort, decorator: Google::Apis::ComputeV1::NamedPort::Representation + property :region, as: 'region' property :self_link, as: 'selfLink' collection :target_pools, as: 'targetPools' property :target_size, as: 'targetSize' diff --git a/generated/google/apis/content_v2.rb b/generated/google/apis/content_v2.rb index 49c7a2245..34661a43e 100644 --- a/generated/google/apis/content_v2.rb +++ b/generated/google/apis/content_v2.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/shopping-content module ContentV2 VERSION = 'V2' - REVISION = '20160905' + REVISION = '20160928' # Manage your product listings and accounts for Google Shopping AUTH_CONTENT = 'https://www.googleapis.com/auth/content' diff --git a/generated/google/apis/datastore_v1.rb b/generated/google/apis/datastore_v1.rb index 5be7418cd..92fb2b8f5 100644 --- a/generated/google/apis/datastore_v1.rb +++ b/generated/google/apis/datastore_v1.rb @@ -26,7 +26,7 @@ module Google # @see https://cloud.google.com/datastore/ module DatastoreV1 VERSION = 'V1' - REVISION = '20160823' + REVISION = '20160920' # 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/dns_v1.rb b/generated/google/apis/dns_v1.rb index 0dd3deda0..1774a4548 100644 --- a/generated/google/apis/dns_v1.rb +++ b/generated/google/apis/dns_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/cloud-dns module DnsV1 VERSION = 'V1' - REVISION = '20160825' + REVISION = '20160920' # 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/doubleclickbidmanager_v1.rb b/generated/google/apis/doubleclickbidmanager_v1.rb index 7cbf42857..a56030411 100644 --- a/generated/google/apis/doubleclickbidmanager_v1.rb +++ b/generated/google/apis/doubleclickbidmanager_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/bid-manager/ module DoubleclickbidmanagerV1 VERSION = 'V1' - REVISION = '20160608' + REVISION = '20160927' end end end diff --git a/generated/google/apis/doubleclickbidmanager_v1/classes.rb b/generated/google/apis/doubleclickbidmanager_v1/classes.rb index 9ff5c40ac..26c3efb6f 100644 --- a/generated/google/apis/doubleclickbidmanager_v1/classes.rb +++ b/generated/google/apis/doubleclickbidmanager_v1/classes.rb @@ -81,6 +81,83 @@ module Google end end + # Request to fetch stored insertion orders, line items, TrueView ad groups and + # ads. + class DownloadRequest + include Google::Apis::Core::Hashable + + # File types that will be returned. + # Corresponds to the JSON property `fileTypes` + # @return [Array] + attr_accessor :file_types + + # IDs of the specified filter type used to filter entities to fetch. If omitted, + # all the entities will be returned. + # Corresponds to the JSON property `filterIds` + # @return [Array] + attr_accessor :filter_ids + + # Filter type used to filter line items to fetch. + # Corresponds to the JSON property `filterType` + # @return [String] + attr_accessor :filter_type + + # SDF Version (column names, types, order) in which the entities will be + # returned. Default to 3. + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file_types = args[:file_types] if args.key?(:file_types) + @filter_ids = args[:filter_ids] if args.key?(:filter_ids) + @filter_type = args[:filter_type] if args.key?(:filter_type) + @version = args[:version] if args.key?(:version) + end + end + + # Download response. + class DownloadResponse + include Google::Apis::Core::Hashable + + # Retrieved ad groups in SDF format. + # Corresponds to the JSON property `adGroups` + # @return [String] + attr_accessor :ad_groups + + # Retrieved ads in SDF format. + # Corresponds to the JSON property `ads` + # @return [String] + attr_accessor :ads + + # Retrieved insertion orders in SDF format. + # Corresponds to the JSON property `insertionOrders` + # @return [String] + attr_accessor :insertion_orders + + # Retrieved line items in SDF format. + # Corresponds to the JSON property `lineItems` + # @return [String] + attr_accessor :line_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @ad_groups = args[:ad_groups] if args.key?(:ad_groups) + @ads = args[:ads] if args.key?(:ads) + @insertion_orders = args[:insertion_orders] if args.key?(:insertion_orders) + @line_items = args[:line_items] if args.key?(:line_items) + end + end + # Filter used to match traffic data in your report. class FilterPair include Google::Apis::Core::Hashable @@ -158,92 +235,6 @@ module Google end end - # Publisher comment from Rubicon. - class Note - include Google::Apis::Core::Hashable - - # Note id. - # Corresponds to the JSON property `id` - # @return [String] - attr_accessor :id - - # Message from publisher. - # Corresponds to the JSON property `message` - # @return [String] - attr_accessor :message - - # Equals "publisher" for notification from Rubicon. - # Corresponds to the JSON property `source` - # @return [String] - attr_accessor :source - - # Time when the note was added, e.g. "2015-12-16T17:25:35.000-08:00". - # Corresponds to the JSON property `timestamp` - # @return [String] - attr_accessor :timestamp - - # Publisher user name. - # Corresponds to the JSON property `username` - # @return [String] - attr_accessor :username - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @id = args[:id] if args.key?(:id) - @message = args[:message] if args.key?(:message) - @source = args[:source] if args.key?(:source) - @timestamp = args[:timestamp] if args.key?(:timestamp) - @username = args[:username] if args.key?(:username) - end - end - - # NotifyProposalChange request. - class NotifyProposalChangeRequest - include Google::Apis::Core::Hashable - - # Action taken by publisher. One of: Accept, Decline, Append - # Corresponds to the JSON property `action` - # @return [String] - attr_accessor :action - - # URL to access proposal detail. - # Corresponds to the JSON property `href` - # @return [String] - attr_accessor :href - - # Below are contents of notification from Rubicon. Proposal id. - # Corresponds to the JSON property `id` - # @return [String] - attr_accessor :id - - # Notes from publisher - # Corresponds to the JSON property `notes` - # @return [Array] - attr_accessor :notes - - # Deal token, available when proposal is accepted by publisher. - # Corresponds to the JSON property `token` - # @return [String] - attr_accessor :token - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @action = args[:action] if args.key?(:action) - @href = args[:href] if args.key?(:href) - @id = args[:id] if args.key?(:id) - @notes = args[:notes] if args.key?(:notes) - @token = args[:token] if args.key?(:token) - end - end - # Parameters of a query or report. class Parameters include Google::Apis::Core::Hashable diff --git a/generated/google/apis/doubleclickbidmanager_v1/representations.rb b/generated/google/apis/doubleclickbidmanager_v1/representations.rb index e5545ddd0..fd8c5ebd2 100644 --- a/generated/google/apis/doubleclickbidmanager_v1/representations.rb +++ b/generated/google/apis/doubleclickbidmanager_v1/representations.rb @@ -34,6 +34,18 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class DownloadRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DownloadResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class FilterPair class Representation < Google::Apis::Core::JsonRepresentation; end @@ -52,18 +64,6 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class Note - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class NotifyProposalChangeRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class Parameters class Representation < Google::Apis::Core::JsonRepresentation; end @@ -165,6 +165,26 @@ module Google end end + class DownloadRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :file_types, as: 'fileTypes' + collection :filter_ids, as: 'filterIds' + property :filter_type, as: 'filterType' + property :version, as: 'version' + end + end + + class DownloadResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :ad_groups, as: 'adGroups' + property :ads, as: 'ads' + property :insertion_orders, as: 'insertionOrders' + property :line_items, as: 'lineItems' + end + end + class FilterPair # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -191,29 +211,6 @@ module Google end end - class Note - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :id, as: 'id' - property :message, as: 'message' - property :source, as: 'source' - property :timestamp, as: 'timestamp' - property :username, as: 'username' - end - end - - class NotifyProposalChangeRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :action, as: 'action' - property :href, as: 'href' - property :id, as: 'id' - collection :notes, as: 'notes', class: Google::Apis::DoubleclickbidmanagerV1::Note, decorator: Google::Apis::DoubleclickbidmanagerV1::Note::Representation - - property :token, as: 'token' - end - end - class Parameters # @private class Representation < Google::Apis::Core::JsonRepresentation diff --git a/generated/google/apis/doubleclickbidmanager_v1/service.rb b/generated/google/apis/doubleclickbidmanager_v1/service.rb index 3d233deeb..b834a1ef9 100644 --- a/generated/google/apis/doubleclickbidmanager_v1/service.rb +++ b/generated/google/apis/doubleclickbidmanager_v1/service.rb @@ -328,8 +328,8 @@ module Google execute_or_queue_command(command, &block) end - # Update proposal upon actions of Rubicon publisher. - # @param [Google::Apis::DoubleclickbidmanagerV1::NotifyProposalChangeRequest] notify_proposal_change_request_object + # Retrieves entities in SDF format. + # @param [Google::Apis::DoubleclickbidmanagerV1::DownloadRequest] download_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -343,18 +343,20 @@ module Google # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [NilClass] No result returned for this method + # @yieldparam result [Google::Apis::DoubleclickbidmanagerV1::DownloadResponse] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [void] + # @return [Google::Apis::DoubleclickbidmanagerV1::DownloadResponse] # # @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 notifyproposalchange_rubicon(notify_proposal_change_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) - command = make_simple_command(:post, 'rubicon/notifyproposalchange', options) - command.request_representation = Google::Apis::DoubleclickbidmanagerV1::NotifyProposalChangeRequest::Representation - command.request_object = notify_proposal_change_request_object + def download_sdf(download_request_object = nil, fields: nil, quota_user: nil, user_ip: nil, options: nil, &block) + command = make_simple_command(:post, 'sdf/download', options) + command.request_representation = Google::Apis::DoubleclickbidmanagerV1::DownloadRequest::Representation + command.request_object = download_request_object + command.response_representation = Google::Apis::DoubleclickbidmanagerV1::DownloadResponse::Representation + command.response_class = Google::Apis::DoubleclickbidmanagerV1::DownloadResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? command.query['userIp'] = user_ip unless user_ip.nil? diff --git a/generated/google/apis/doubleclicksearch_v2.rb b/generated/google/apis/doubleclicksearch_v2.rb index b62eb8b9d..507be534c 100644 --- a/generated/google/apis/doubleclicksearch_v2.rb +++ b/generated/google/apis/doubleclicksearch_v2.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/doubleclick-search/ module DoubleclicksearchV2 VERSION = 'V2' - REVISION = '20160907' + REVISION = '20160927' # View and manage your advertising data in DoubleClick Search AUTH_DOUBLECLICKSEARCH = 'https://www.googleapis.com/auth/doubleclicksearch' diff --git a/generated/google/apis/drive_v2.rb b/generated/google/apis/drive_v2.rb index 7cfa36f37..d0650b9c6 100644 --- a/generated/google/apis/drive_v2.rb +++ b/generated/google/apis/drive_v2.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/drive/ module DriveV2 VERSION = 'V2' - REVISION = '20160913' + REVISION = '20160922' # View and manage the files in your Google Drive AUTH_DRIVE = 'https://www.googleapis.com/auth/drive' diff --git a/generated/google/apis/drive_v3.rb b/generated/google/apis/drive_v3.rb index ef8d8db9e..40ce52f4e 100644 --- a/generated/google/apis/drive_v3.rb +++ b/generated/google/apis/drive_v3.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/drive/ module DriveV3 VERSION = 'V3' - REVISION = '20160913' + REVISION = '20160922' # View and manage the files in your Google Drive AUTH_DRIVE = 'https://www.googleapis.com/auth/drive' diff --git a/generated/google/apis/genomics_v1.rb b/generated/google/apis/genomics_v1.rb index 15c65161b..e23656275 100644 --- a/generated/google/apis/genomics_v1.rb +++ b/generated/google/apis/genomics_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/genomics/ module GenomicsV1 VERSION = 'V1' - REVISION = '20160914' + REVISION = '20160929' # View and manage your data in Google BigQuery AUTH_BIGQUERY = 'https://www.googleapis.com/auth/bigquery' diff --git a/generated/google/apis/iam_v1.rb b/generated/google/apis/iam_v1.rb index fe20a6673..9dbe04ad0 100644 --- a/generated/google/apis/iam_v1.rb +++ b/generated/google/apis/iam_v1.rb @@ -18,7 +18,7 @@ require 'google/apis/iam_v1/representations.rb' module Google module Apis - # Google Identity and Access Management API + # Google Identity and Access Management (IAM) API # # Manages identity and access control for Google Cloud Platform resources, # including the creation of service accounts, which you can use to authenticate @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/iam/ module IamV1 VERSION = 'V1' - REVISION = '20160129' + REVISION = '20160915' # 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/iam_v1/classes.rb b/generated/google/apis/iam_v1/classes.rb index da1e8c2f3..e207d18f7 100644 --- a/generated/google/apis/iam_v1/classes.rb +++ b/generated/google/apis/iam_v1/classes.rb @@ -31,8 +31,8 @@ module Google # @return [Array] attr_accessor :accounts - # To retrieve the next page of results, set [ListServiceAccountsRequest. - # page_token] to this value. + # To retrieve the next page of results, set ListServiceAccountsRequest. + # page_token to this value. # Corresponds to the JSON property `nextPageToken` # @return [String] attr_accessor :next_page_token @@ -49,22 +49,25 @@ module Google end # A service account in the Identity and Access Management API. To create a - # service account, you specify the project_id and account_id for the account. - # The account_id is unique within the project, and used to generate the service - # account email address and a stable unique id. All other methods can identify - # accounts using the format "projects/`project`/serviceAccounts/`account`". - # Using '-' as a wildcard for the project, will infer the project from the - # account. The account value can be the email address or the unique_id of the - # service account. + # service account, specify the `project_id` and the `account_id` for the account. + # The `account_id` is unique within the project, and is used to generate the + # service account email address and a stable `unique_id`. If the account already + # exists, the account's resource name is returned in util::Status's ResourceInfo. + # resource_name in the format of projects/`project`/serviceAccounts/`email`. The + # caller can use the name in other methods to access the account. All other + # methods can identify the service account using the format `projects/`project`/ + # serviceAccounts/`account``. Using `-` as a wildcard for the project will infer + # the project from the account. The `account` value can be the `email` address + # or the `unique_id` of the service account. class ServiceAccount include Google::Apis::Core::Hashable - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". In requests using '-' as a wildcard for the - # project, will infer the project from the account and the account value can be - # the email address or the unique_id of the service account. In responses the - # resource name will always be in the format "projects/`project`/serviceAccounts/ - # `email`". + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Requests using `-` as a wildcard for the + # project will infer the project from the `account` and the `account` value can + # be the `email` address or the `unique_id` of the service account. In responses + # the resource name will always be in the format `projects/`project`/ + # serviceAccounts/`email``. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name @@ -74,12 +77,12 @@ module Google # @return [String] attr_accessor :project_id - # @OutputOnly unique and stable id of the service account. + # @OutputOnly The unique and stable id of the service account. # Corresponds to the JSON property `uniqueId` # @return [String] attr_accessor :unique_id - # @OutputOnly Email address of the service account. + # @OutputOnly The email address of the service account. # Corresponds to the JSON property `email` # @return [String] attr_accessor :email @@ -123,21 +126,24 @@ module Google include Google::Apis::Core::Hashable # Required. The account id that is used to generate the service account email - # address and a stable unique id. It is unique within a project, must be 1-63 - # characters long, and match the regular expression [a-z]([-a-z0-9]*[a-z0-9]) to - # comply with RFC1035. + # address and a stable unique id. It is unique within a project, must be 6-30 + # characters long, and match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])` + # to comply with RFC1035. # Corresponds to the JSON property `accountId` # @return [String] attr_accessor :account_id # A service account in the Identity and Access Management API. To create a - # service account, you specify the project_id and account_id for the account. - # The account_id is unique within the project, and used to generate the service - # account email address and a stable unique id. All other methods can identify - # accounts using the format "projects/`project`/serviceAccounts/`account`". - # Using '-' as a wildcard for the project, will infer the project from the - # account. The account value can be the email address or the unique_id of the - # service account. + # service account, specify the `project_id` and the `account_id` for the account. + # The `account_id` is unique within the project, and is used to generate the + # service account email address and a stable `unique_id`. If the account already + # exists, the account's resource name is returned in util::Status's ResourceInfo. + # resource_name in the format of projects/`project`/serviceAccounts/`email`. The + # caller can use the name in other methods to access the account. All other + # methods can identify the service account using the format `projects/`project`/ + # serviceAccounts/`account``. Using `-` as a wildcard for the project will infer + # the project from the account. The `account` value can be the `email` address + # or the `unique_id` of the service account. # Corresponds to the JSON property `serviceAccount` # @return [Google::Apis::IamV1::ServiceAccount] attr_accessor :service_account @@ -189,28 +195,47 @@ module Google end end - # Represents a service account key. A service account can have 0 or more key - # pairs. The private keys for these are not stored by Google. ServiceAccountKeys - # are immutable. + # Represents a service account key. A service account has two sets of key-pairs: + # user-managed, and system-managed. User-managed key-pairs can be created and + # deleted by users. Users are responsible for rotating these keys periodically + # to ensure security of their service accounts. Users retain the private key of + # these key-pairs, and Google retains ONLY the public key. System-managed key- + # pairs are managed automatically by Google, and rotated daily without user + # intervention. The private key never leaves Google's servers to maximize + # security. Public keys for all service accounts are also published at the + # OAuth2 Service Account API. class ServiceAccountKey include Google::Apis::Core::Hashable - # The resource name of the service account key in the format "projects/`project`/ - # serviceAccounts/`email`/keys/`key`". + # The resource name of the service account key in the following format `projects/ + # `project`/serviceAccounts/`account`/keys/`key``. # Corresponds to the JSON property `name` # @return [String] attr_accessor :name - # The type of the private key. + # The output format for the private key. Only provided in ` + # CreateServiceAccountKey` responses, not in `GetServiceAccountKey` or ` + # ListServiceAccountKey` responses. Google never exposes system-managed private + # keys, and never retains user-managed private keys. # Corresponds to the JSON property `privateKeyType` # @return [String] attr_accessor :private_key_type - # The key data. + # Specifies the algorithm (and possibly key size) for the key. + # Corresponds to the JSON property `keyAlgorithm` + # @return [String] + attr_accessor :key_algorithm + + # The private key data. Only provided in `CreateServiceAccountKey` responses. # Corresponds to the JSON property `privateKeyData` # @return [String] attr_accessor :private_key_data + # The public key data. Only provided in `GetServiceAccountKey` responses. + # Corresponds to the JSON property `publicKeyData` + # @return [String] + attr_accessor :public_key_data + # The key can be used after this timestamp. # Corresponds to the JSON property `validAfterTime` # @return [String] @@ -229,7 +254,9 @@ module Google def update!(**args) @name = args[:name] if args.key?(:name) @private_key_type = args[:private_key_type] if args.key?(:private_key_type) + @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm) @private_key_data = args[:private_key_data] if args.key?(:private_key_data) + @public_key_data = args[:public_key_data] if args.key?(:public_key_data) @valid_after_time = args[:valid_after_time] if args.key?(:valid_after_time) @valid_before_time = args[:valid_before_time] if args.key?(:valid_before_time) end @@ -239,11 +266,18 @@ module Google class CreateServiceAccountKeyRequest include Google::Apis::Core::Hashable - # The type of the key requested. GOOGLE_CREDENTIALS is the default key type. + # The output format of the private key. `GOOGLE_CREDENTIALS_FILE` is the default + # output format. # Corresponds to the JSON property `privateKeyType` # @return [String] attr_accessor :private_key_type + # Which type of key and algorithm to use for the key. The default is currently a + # 4K RSA key. However this may change in the future. + # Corresponds to the JSON property `keyAlgorithm` + # @return [String] + attr_accessor :key_algorithm + def initialize(**args) update!(**args) end @@ -251,6 +285,7 @@ module Google # Update properties of this object def update!(**args) @private_key_type = args[:private_key_type] if args.key?(:private_key_type) + @key_algorithm = args[:key_algorithm] if args.key?(:key_algorithm) end end @@ -258,7 +293,7 @@ module Google class SignBlobRequest include Google::Apis::Core::Hashable - # The bytes to sign + # The bytes to sign. # Corresponds to the JSON property `bytesToSign` # @return [String] attr_accessor :bytes_to_sign @@ -305,7 +340,7 @@ module Google # 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: + # 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). class Policy @@ -323,11 +358,6 @@ module Google # @return [Array] attr_accessor :bindings - # - # Corresponds to the JSON property `rules` - # @return [Array] - attr_accessor :rules - # `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 @@ -348,7 +378,6 @@ module Google def update!(**args) @version = args[:version] if args.key?(:version) @bindings = args[:bindings] if args.key?(:bindings) - @rules = args[:rules] if args.key?(:rules) @etag = args[:etag] if args.key?(:etag) end end @@ -390,209 +419,6 @@ module Google end end - # A rule to be applied in a Policy. - class Rule - include Google::Apis::Core::Hashable - - # Human-readable description of the rule. - # Corresponds to the JSON property `description` - # @return [String] - attr_accessor :description - - # A permission is a string of form '..' (e.g., 'storage.buckets.list'). A value - # of '*' matches all permissions, and a verb part of '*' (e.g., 'storage.buckets. - # *') matches all verbs. - # Corresponds to the JSON property `permissions` - # @return [Array] - attr_accessor :permissions - - # Required - # Corresponds to the JSON property `action` - # @return [String] - attr_accessor :action - - # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is in this set of entries. - # Corresponds to the JSON property `in` - # @return [Array] - attr_accessor :in - - # The rule matches if the PRINCIPAL/AUTHORITY_SELECTOR is not in this set of - # entries. The format for in and not_in entries is the same as for members in a - # Binding (see google/iam/v1/policy.proto). - # Corresponds to the JSON property `notIn` - # @return [Array] - attr_accessor :not_in - - # Additional restrictions that must be met - # Corresponds to the JSON property `conditions` - # @return [Array] - attr_accessor :conditions - - # The config returned to callers of tech.iam.IAM.CheckPolicy for any entries - # that match the LOG action. - # Corresponds to the JSON property `logConfig` - # @return [Array] - attr_accessor :log_config - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @description = args[:description] if args.key?(:description) - @permissions = args[:permissions] if args.key?(:permissions) - @action = args[:action] if args.key?(:action) - @in = args[:in] if args.key?(:in) - @not_in = args[:not_in] if args.key?(:not_in) - @conditions = args[:conditions] if args.key?(:conditions) - @log_config = args[:log_config] if args.key?(:log_config) - end - end - - # A condition to be met. - class Condition - include Google::Apis::Core::Hashable - - # Trusted attributes supplied by the IAM system. - # Corresponds to the JSON property `iam` - # @return [String] - attr_accessor :iam - - # Trusted attributes supplied by any service that owns resources and uses the - # IAM system for access control. - # Corresponds to the JSON property `sys` - # @return [String] - attr_accessor :sys - - # Trusted attributes discharged by the service. - # Corresponds to the JSON property `svc` - # @return [String] - attr_accessor :svc - - # An operator to apply the subject with. - # Corresponds to the JSON property `op` - # @return [String] - attr_accessor :op - - # The object of the condition. Exactly one of these must be set. - # Corresponds to the JSON property `value` - # @return [String] - attr_accessor :value - - # The objects of the condition. This is mutually exclusive with 'value'. - # Corresponds to the JSON property `values` - # @return [Array] - attr_accessor :values - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @iam = args[:iam] if args.key?(:iam) - @sys = args[:sys] if args.key?(:sys) - @svc = args[:svc] if args.key?(:svc) - @op = args[:op] if args.key?(:op) - @value = args[:value] if args.key?(:value) - @values = args[:values] if args.key?(:values) - end - end - - # Specifies what kind of log the caller must write Increment a streamz counter - # with the specified metric and field names. Metric names should start with a '/' - # , generally be lowercase-only, and end in "_count". Field names should not - # contain an initial slash. The actual exported metric names will have "/iam/ - # policy" prepended. Field names correspond to IAM request parameters and field - # values are their respective values. At present only "iam_principal", - # corresponding to IAMContext.principal, is supported. Examples: counter ` - # metric: "/debug_access_count" field: "iam_principal" ` ==> increment counter / - # iam/policy/backend_debug_access_count `iam_principal=[value of IAMContext. - # principal]` At this time we do not support: * multiple field names (though - # this may be supported in the future) * decrementing the counter * incrementing - # it by anything other than 1 - class LogConfig - include Google::Apis::Core::Hashable - - # Options for counters - # Corresponds to the JSON property `counter` - # @return [Google::Apis::IamV1::CounterOptions] - attr_accessor :counter - - # Write a Data Access (Gin) log - # Corresponds to the JSON property `dataAccess` - # @return [Google::Apis::IamV1::DataAccessOptions] - attr_accessor :data_access - - # Write a Cloud Audit log - # Corresponds to the JSON property `cloudAudit` - # @return [Google::Apis::IamV1::CloudAuditOptions] - attr_accessor :cloud_audit - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @counter = args[:counter] if args.key?(:counter) - @data_access = args[:data_access] if args.key?(:data_access) - @cloud_audit = args[:cloud_audit] if args.key?(:cloud_audit) - end - end - - # Options for counters - class CounterOptions - include Google::Apis::Core::Hashable - - # The metric to update. - # Corresponds to the JSON property `metric` - # @return [String] - attr_accessor :metric - - # The field value to attribute. - # Corresponds to the JSON property `field` - # @return [String] - attr_accessor :field - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @metric = args[:metric] if args.key?(:metric) - @field = args[:field] if args.key?(:field) - end - end - - # Write a Data Access (Gin) log - class DataAccessOptions - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # Write a Cloud Audit log - class CloudAuditOptions - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - # Request message for `SetIamPolicy` method. class SetIamPolicyRequest include Google::Apis::Core::Hashable @@ -604,7 +430,7 @@ module Google # 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: + # 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). # Corresponds to the JSON property `policy` @@ -626,8 +452,8 @@ module Google 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. + # (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 @@ -660,6 +486,155 @@ module Google @permissions = args[:permissions] if args.key?(:permissions) end end + + # The grantable role query request. + class QueryGrantableRolesRequest + include Google::Apis::Core::Hashable + + # Required. The full resource name to query from the list of grantable roles. + # The name follows the Google Cloud Platform resource format. For example, a + # Cloud Platform project with id `my-project` will be named `// + # cloudresourcemanager.googleapis.com/projects/my-project`. + # Corresponds to the JSON property `fullResourceName` + # @return [String] + attr_accessor :full_resource_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @full_resource_name = args[:full_resource_name] if args.key?(:full_resource_name) + end + end + + # The grantable role query response. + class QueryGrantableRolesResponse + include Google::Apis::Core::Hashable + + # The list of matching roles. + # Corresponds to the JSON property `roles` + # @return [Array] + attr_accessor :roles + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @roles = args[:roles] if args.key?(:roles) + end + end + + # A role in the Identity and Access Management API. + class Role + include Google::Apis::Core::Hashable + + # The name of the role. When Role is used in CreateRole, the role name must not + # be set. When Role is used in output and other input such as UpdateRole, the + # role name is the complete path, e.g., roles/logging.viewer for curated roles + # and organizations/`organization-id`/roles/logging.viewer for custom roles. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Optional. A human-readable title for the role. Typically this is limited to + # 100 UTF-8 bytes. + # Corresponds to the JSON property `title` + # @return [String] + attr_accessor :title + + # Optional. A human-readable description for the role. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @title = args[:title] if args.key?(:title) + @description = args[:description] if args.key?(:description) + end + end + + # Audit log information specific to Cloud IAM. This message is serialized as an ` + # Any` type in the `ServiceData` message of an `AuditLog` message. + class AuditData + include Google::Apis::Core::Hashable + + # The difference delta between two policies. + # Corresponds to the JSON property `policyDelta` + # @return [Google::Apis::IamV1::PolicyDelta] + attr_accessor :policy_delta + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @policy_delta = args[:policy_delta] if args.key?(:policy_delta) + end + end + + # The difference delta between two policies. + class PolicyDelta + include Google::Apis::Core::Hashable + + # The delta for Bindings between two policies. + # Corresponds to the JSON property `bindingDeltas` + # @return [Array] + attr_accessor :binding_deltas + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @binding_deltas = args[:binding_deltas] if args.key?(:binding_deltas) + end + end + + # One delta entry for Binding. Each individual change (only one member in each + # entry) to a binding will be a separate entry. + class BindingDelta + include Google::Apis::Core::Hashable + + # The action that was performed on a Binding. Required + # Corresponds to the JSON property `action` + # @return [String] + attr_accessor :action + + # 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 + + # A single identity requesting access for a Cloud Platform resource. Follows the + # same format of Binding.members. Required + # Corresponds to the JSON property `member` + # @return [String] + attr_accessor :member + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @action = args[:action] if args.key?(:action) + @role = args[:role] if args.key?(:role) + @member = args[:member] if args.key?(:member) + end + end end end end diff --git a/generated/google/apis/iam_v1/representations.rb b/generated/google/apis/iam_v1/representations.rb index 274415169..0e2da9223 100644 --- a/generated/google/apis/iam_v1/representations.rb +++ b/generated/google/apis/iam_v1/representations.rb @@ -88,42 +88,6 @@ module Google include Google::Apis::Core::JsonObjectSupport end - class Rule - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class Condition - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogConfig - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class CounterOptions - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class DataAccessOptions - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class CloudAuditOptions - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class SetIamPolicyRequest class Representation < Google::Apis::Core::JsonRepresentation; end @@ -142,6 +106,42 @@ module Google include Google::Apis::Core::JsonObjectSupport end + class QueryGrantableRolesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class QueryGrantableRolesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Role + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AuditData + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PolicyDelta + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class BindingDelta + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class ListServiceAccountsResponse # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -192,7 +192,9 @@ module Google class Representation < Google::Apis::Core::JsonRepresentation property :name, as: 'name' property :private_key_type, as: 'privateKeyType' + property :key_algorithm, as: 'keyAlgorithm' property :private_key_data, :base64 => true, as: 'privateKeyData' + property :public_key_data, :base64 => true, as: 'publicKeyData' property :valid_after_time, as: 'validAfterTime' property :valid_before_time, as: 'validBeforeTime' end @@ -202,6 +204,7 @@ module Google # @private class Representation < Google::Apis::Core::JsonRepresentation property :private_key_type, as: 'privateKeyType' + property :key_algorithm, as: 'keyAlgorithm' end end @@ -226,8 +229,6 @@ module Google property :version, as: 'version' collection :bindings, as: 'bindings', class: Google::Apis::IamV1::Binding, decorator: Google::Apis::IamV1::Binding::Representation - collection :rules, as: 'rules', class: Google::Apis::IamV1::Rule, decorator: Google::Apis::IamV1::Rule::Representation - property :etag, :base64 => true, as: 'etag' end end @@ -240,65 +241,6 @@ module Google end end - class Rule - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :description, as: 'description' - collection :permissions, as: 'permissions' - property :action, as: 'action' - collection :in, as: 'in' - collection :not_in, as: 'notIn' - collection :conditions, as: 'conditions', class: Google::Apis::IamV1::Condition, decorator: Google::Apis::IamV1::Condition::Representation - - collection :log_config, as: 'logConfig', class: Google::Apis::IamV1::LogConfig, decorator: Google::Apis::IamV1::LogConfig::Representation - - end - end - - class Condition - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :iam, as: 'iam' - property :sys, as: 'sys' - property :svc, as: 'svc' - property :op, as: 'op' - property :value, as: 'value' - collection :values, as: 'values' - end - end - - class LogConfig - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :counter, as: 'counter', class: Google::Apis::IamV1::CounterOptions, decorator: Google::Apis::IamV1::CounterOptions::Representation - - property :data_access, as: 'dataAccess', class: Google::Apis::IamV1::DataAccessOptions, decorator: Google::Apis::IamV1::DataAccessOptions::Representation - - property :cloud_audit, as: 'cloudAudit', class: Google::Apis::IamV1::CloudAuditOptions, decorator: Google::Apis::IamV1::CloudAuditOptions::Representation - - end - end - - class CounterOptions - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :metric, as: 'metric' - property :field, as: 'field' - end - end - - class DataAccessOptions - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - - class CloudAuditOptions - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end - end - class SetIamPolicyRequest # @private class Representation < Google::Apis::Core::JsonRepresentation @@ -320,6 +262,55 @@ module Google collection :permissions, as: 'permissions' end end + + class QueryGrantableRolesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :full_resource_name, as: 'fullResourceName' + end + end + + class QueryGrantableRolesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :roles, as: 'roles', class: Google::Apis::IamV1::Role, decorator: Google::Apis::IamV1::Role::Representation + + end + end + + class Role + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :title, as: 'title' + property :description, as: 'description' + end + end + + class AuditData + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :policy_delta, as: 'policyDelta', class: Google::Apis::IamV1::PolicyDelta, decorator: Google::Apis::IamV1::PolicyDelta::Representation + + end + end + + class PolicyDelta + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :binding_deltas, as: 'bindingDeltas', class: Google::Apis::IamV1::BindingDelta, decorator: Google::Apis::IamV1::BindingDelta::Representation + + end + end + + class BindingDelta + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :action, as: 'action' + property :role, as: 'role' + property :member, as: 'member' + end + end end end end diff --git a/generated/google/apis/iam_v1/service.rb b/generated/google/apis/iam_v1/service.rb index cc293a618..e41535298 100644 --- a/generated/google/apis/iam_v1/service.rb +++ b/generated/google/apis/iam_v1/service.rb @@ -20,7 +20,7 @@ require 'google/apis/errors' module Google module Apis module IamV1 - # Google Identity and Access Management API + # Google Identity and Access Management (IAM) API # # Manages identity and access control for Google Cloud Platform resources, # including the creation of service accounts, which you can use to authenticate @@ -48,17 +48,17 @@ module Google super('https://iam.googleapis.com/', '') end - # Lists service accounts for a project. + # Lists ServiceAccounts for a project. # @param [String] name # Required. The resource name of the project associated with the service - # accounts, such as "projects/123" + # accounts, such as `projects/my-project-123`. # @param [Fixnum] page_size # Optional limit on the number of service accounts to include in the response. - # Further accounts can subsequently be obtained by including the [ - # ListServiceAccountsResponse.next_page_token] in a subsequent request. + # Further accounts can subsequently be obtained by including the + # ListServiceAccountsResponse.next_page_token in a subsequent request. # @param [String] page_token - # Optional pagination token returned in an earlier [ListServiceAccountsResponse. - # next_page_token]. + # Optional pagination token returned in an earlier ListServiceAccountsResponse. + # next_page_token. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -88,12 +88,12 @@ module Google execute_or_queue_command(command, &block) end - # Gets a ServiceAccount + # Gets a ServiceAccount. # @param [String] name - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". Using '-' as a wildcard for the project, will - # infer the project from the account. The account value can be the email address - # or the unique_id of the service account. + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project + # will infer the project from the account. The `account` value can be the `email` + # address or the `unique_id` of the service account. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -121,10 +121,10 @@ module Google execute_or_queue_command(command, &block) end - # Creates a service account and returns it. + # Creates a ServiceAccount and returns it. # @param [String] name # Required. The resource name of the project associated with the service - # accounts, such as "projects/123" + # accounts, such as `projects/my-project-123`. # @param [Google::Apis::IamV1::CreateServiceAccountRequest] create_service_account_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -155,15 +155,15 @@ module Google execute_or_queue_command(command, &block) end - # Updates a service account. Currently, only the following fields are updatable: - # 'display_name' . The 'etag' is mandatory. + # Updates a ServiceAccount. Currently, only the following fields are updatable: ` + # display_name` . The `etag` is mandatory. # @param [String] name - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". In requests using '-' as a wildcard for the - # project, will infer the project from the account and the account value can be - # the email address or the unique_id of the service account. In responses the - # resource name will always be in the format "projects/`project`/serviceAccounts/ - # `email`". + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Requests using `-` as a wildcard for the + # project will infer the project from the `account` and the `account` value can + # be the `email` address or the `unique_id` of the service account. In responses + # the resource name will always be in the format `projects/`project`/ + # serviceAccounts/`email``. # @param [Google::Apis::IamV1::ServiceAccount] service_account_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -194,12 +194,12 @@ module Google execute_or_queue_command(command, &block) end - # Deletes a service acount. + # Deletes a ServiceAccount. # @param [String] name - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". Using '-' as a wildcard for the project, will - # infer the project from the account. The account value can be the email address - # or the unique_id of the service account. + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project + # will infer the project from the account. The `account` value can be the `email` + # address or the `unique_id` of the service account. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -227,12 +227,12 @@ module Google execute_or_queue_command(command, &block) end - # Signs a blob using a service account. + # Signs a blob using a service account's system-managed private key. # @param [String] name - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". Using '-' as a wildcard for the project, will - # infer the project from the account. The account value can be the email address - # or the unique_id of the service account. + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project + # will infer the project from the account. The `account` value can be the `email` + # address or the `unique_id` of the service account. # @param [Google::Apis::IamV1::SignBlobRequest] sign_blob_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -263,12 +263,11 @@ module Google execute_or_queue_command(command, &block) end - # Returns the IAM access control policy for specified IAM resource. + # Returns the IAM access control policy for a ServiceAccount. # @param [String] resource # REQUIRED: The resource for which the policy is being requested. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `getIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -296,12 +295,11 @@ module Google execute_or_queue_command(command, &block) end - # Sets the IAM access control policy for the specified IAM resource. + # Sets the IAM access control policy for a ServiceAccount. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `setIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::IamV1::SetIamPolicyRequest] set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -332,13 +330,12 @@ module Google execute_or_queue_command(command, &block) end - # Tests the specified permissions against the IAM access control policy for the - # specified IAM resource. + # Tests the specified permissions against the IAM access control policy for a + # ServiceAccount. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. ` - # resource` is usually specified as a path, such as `projects/*project*/zones/* - # zone*/disks/*disk*`. The format for the path specified in this value is - # resource specific and is specified in the `testIamPermissions` documentation. + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. # @param [Google::Apis::IamV1::TestIamPermissionsRequest] test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -369,15 +366,16 @@ module Google execute_or_queue_command(command, &block) end - # Lists service account keys + # Lists ServiceAccountKeys. # @param [String] name - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". Using '-' as a wildcard for the project, will - # infer the project from the account. The account value can be the email address - # or the unique_id of the service account. + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project, + # will infer the project from the account. The `account` value can be the `email` + # address or the `unique_id` of the service account. # @param [Array, String] key_types - # The type of keys the user wants to list. If empty, all key types are included - # in the response. Duplicate key types are not allowed. + # Filters the types of keys the user wants to include in the list response. + # Duplicate key types are not allowed. If no key type is provided, all keys are + # returned. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -408,10 +406,13 @@ module Google # Gets the ServiceAccountKey by key id. # @param [String] name - # The resource name of the service account key in the format "projects/`project`/ - # serviceAccounts/`account`/keys/`key`". Using '-' as a wildcard for the project - # will infer the project from the account. The account value can be the email - # address or the unique_id of the service account. + # The resource name of the service account key in the following format: ` + # projects/`project`/serviceAccounts/`account`/keys/`key``. Using `-` as a + # wildcard for the project will infer the project from the account. The `account` + # value can be the `email` address or the `unique_id` of the service account. + # @param [String] public_key_type + # The output format of the public key requested. X509_PEM is the default output + # format. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -429,22 +430,23 @@ module Google # @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_project_service_account_key(name, fields: nil, quota_user: nil, options: nil, &block) + def get_project_service_account_key(name, public_key_type: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+name}', options) command.response_representation = Google::Apis::IamV1::ServiceAccountKey::Representation command.response_class = Google::Apis::IamV1::ServiceAccountKey command.params['name'] = name unless name.nil? + command.query['publicKeyType'] = public_key_type unless public_key_type.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end - # Creates a service account key and returns it. + # Creates a ServiceAccountKey and returns it. # @param [String] name - # The resource name of the service account in the format "projects/`project`/ - # serviceAccounts/`account`". Using '-' as a wildcard for the project, will - # infer the project from the account. The account value can be the email address - # or the unique_id of the service account. + # The resource name of the service account in the following format: `projects/` + # project`/serviceAccounts/`account``. Using `-` as a wildcard for the project + # will infer the project from the account. The `account` value can be the `email` + # address or the `unique_id` of the service account. # @param [Google::Apis::IamV1::CreateServiceAccountKeyRequest] create_service_account_key_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -475,12 +477,12 @@ module Google execute_or_queue_command(command, &block) end - # Deletes a service account key. + # Deletes a ServiceAccountKey. # @param [String] name - # The resource name of the service account key in the format "projects/`project`/ - # serviceAccounts/`account`/keys/`key`". Using '-' as a wildcard for the project - # will infer the project from the account. The account value can be the email - # address or the unique_id of the service account. + # The resource name of the service account key in the following format: ` + # projects/`project`/serviceAccounts/`account`/keys/`key``. Using `-` as a + # wildcard for the project will infer the project from the account. The `account` + # value can be the `email` address or the `unique_id` of the service account. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -507,6 +509,38 @@ module Google command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end + + # Queries roles that can be granted on a particular resource. A role is + # grantable if it can be used as the role in a binding for a policy for that + # resource. + # @param [Google::Apis::IamV1::QueryGrantableRolesRequest] query_grantable_roles_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::IamV1::QueryGrantableRolesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::IamV1::QueryGrantableRolesResponse] + # + # @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 query_grantable_roles(query_grantable_roles_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/roles:queryGrantableRoles', options) + command.request_representation = Google::Apis::IamV1::QueryGrantableRolesRequest::Representation + command.request_object = query_grantable_roles_request_object + command.response_representation = Google::Apis::IamV1::QueryGrantableRolesResponse::Representation + command.response_class = Google::Apis::IamV1::QueryGrantableRolesResponse + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end protected diff --git a/generated/google/apis/identitytoolkit_v3.rb b/generated/google/apis/identitytoolkit_v3.rb index 2d94344b9..2f7101c33 100644 --- a/generated/google/apis/identitytoolkit_v3.rb +++ b/generated/google/apis/identitytoolkit_v3.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/identity-toolkit/v3/ module IdentitytoolkitV3 VERSION = 'V3' - REVISION = '20160902' + REVISION = '20160927' end end end diff --git a/generated/google/apis/identitytoolkit_v3/classes.rb b/generated/google/apis/identitytoolkit_v3/classes.rb index aa158cbb6..1b62f407f 100644 --- a/generated/google/apis/identitytoolkit_v3/classes.rb +++ b/generated/google/apis/identitytoolkit_v3/classes.rb @@ -306,9 +306,11 @@ module Google # @return [String] attr_accessor :continue_uri - # The query parameter that client can customize by themselves in auth url. + # The query parameter that client can customize by themselves in auth url. The + # following parameters are reserved for server so that they cannot be customized + # by clients: client_id, response_type, scope, redirect_uri, state. # Corresponds to the JSON property `customParameter` - # @return [Array] + # @return [Hash] attr_accessor :custom_parameter # The hosted domain to restrict sign-in to accounts at that domain for Google @@ -376,31 +378,6 @@ module Google @provider_id = args[:provider_id] if args.key?(:provider_id) @session_id = args[:session_id] if args.key?(:session_id) end - - # - class CustomParameter - include Google::Apis::Core::Hashable - - # The key of the query parameter. - # Corresponds to the JSON property `key` - # @return [String] - attr_accessor :key - - # The value of the query parameter. - # Corresponds to the JSON property `value` - # @return [String] - attr_accessor :value - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @key = args[:key] if args.key?(:key) - @value = args[:value] if args.key?(:value) - end - end end # Request to delete account. diff --git a/generated/google/apis/identitytoolkit_v3/representations.rb b/generated/google/apis/identitytoolkit_v3/representations.rb index 38ba7567a..c4745654f 100644 --- a/generated/google/apis/identitytoolkit_v3/representations.rb +++ b/generated/google/apis/identitytoolkit_v3/representations.rb @@ -66,12 +66,6 @@ module Google class CreateAuthUriRequest class Representation < Google::Apis::Core::JsonRepresentation; end - - class CustomParameter - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end include Google::Apis::Core::JsonObjectSupport end @@ -322,8 +316,7 @@ module Google property :client_id, as: 'clientId' property :context, as: 'context' property :continue_uri, as: 'continueUri' - collection :custom_parameter, as: 'customParameter', class: Google::Apis::IdentitytoolkitV3::CreateAuthUriRequest::CustomParameter, decorator: Google::Apis::IdentitytoolkitV3::CreateAuthUriRequest::CustomParameter::Representation - + hash :custom_parameter, as: 'customParameter' property :hosted_domain, as: 'hostedDomain' property :identifier, as: 'identifier' property :oauth_consumer_key, as: 'oauthConsumerKey' @@ -333,14 +326,6 @@ module Google property :provider_id, as: 'providerId' property :session_id, as: 'sessionId' end - - class CustomParameter - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :key, as: 'key' - property :value, as: 'value' - end - end end class DeleteAccountRequest diff --git a/generated/google/apis/language_v1beta1.rb b/generated/google/apis/language_v1beta1.rb index 06e643185..0a433efcd 100644 --- a/generated/google/apis/language_v1beta1.rb +++ b/generated/google/apis/language_v1beta1.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/natural-language/ module LanguageV1beta1 VERSION = 'V1beta1' - REVISION = '20160912' + REVISION = '20160922' # 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/language_v1beta1/classes.rb b/generated/google/apis/language_v1beta1/classes.rb index f5387d7b7..4d021c50b 100644 --- a/generated/google/apis/language_v1beta1/classes.rb +++ b/generated/google/apis/language_v1beta1/classes.rb @@ -290,8 +290,8 @@ module Google end end - # The request message for the advanced text annotation API, which performs all - # the above plus syntactic analysis. + # The request message for the text annotation API, which can perform multiple + # analysis types (sentiment, entities, and syntax) in one call. class AnnotateTextRequest include Google::Apis::Core::Hashable @@ -416,6 +416,7 @@ module Google # The language of the text, which will be the same as the language specified # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. # Corresponds to the JSON property `language` # @return [String] attr_accessor :language @@ -577,6 +578,7 @@ module Google # The language of the text, which will be the same as the language specified # in the request or, if not specified, the automatically-detected language. + # See Document.language field for more details. # Corresponds to the JSON property `language` # @return [String] attr_accessor :language diff --git a/generated/google/apis/language_v1beta1/service.rb b/generated/google/apis/language_v1beta1/service.rb index 53e276ac3..c217a0e41 100644 --- a/generated/google/apis/language_v1beta1/service.rb +++ b/generated/google/apis/language_v1beta1/service.rb @@ -78,10 +78,8 @@ module Google execute_or_queue_command(command, &block) end - # Advanced API that analyzes the document and provides a full set of text - # annotations, including semantic, syntactic, and sentiment information. This - # API is intended for users who are familiar with machine learning and need - # in-depth text features to build upon. + # A convenience method that provides all the features that analyzeSentiment, + # analyzeEntities, and analyzeSyntax provide in one call. # @param [Google::Apis::LanguageV1beta1::AnnotateTextRequest] annotate_text_request_object # @param [String] quota_user # Available to use for quota purposes for server-side applications. Can be any diff --git a/generated/google/apis/logging_v2beta1.rb b/generated/google/apis/logging_v2beta1.rb index bb57f99fd..5f88eb025 100644 --- a/generated/google/apis/logging_v2beta1.rb +++ b/generated/google/apis/logging_v2beta1.rb @@ -18,14 +18,14 @@ require 'google/apis/logging_v2beta1/representations.rb' module Google module Apis - # Google Cloud Logging API + # Stackdriver Logging API # - # Writes log entries and manages your logs, log sinks, and logs-based metrics. + # Writes log entries and manages your Stackdriver Logging configuration. # # @see https://cloud.google.com/logging/docs/ module LoggingV2beta1 VERSION = 'V2beta1' - REVISION = '20160322' + REVISION = '20160926' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' @@ -33,14 +33,14 @@ module Google # View your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only' - # Administrate log data for your projects - AUTH_LOGGING_ADMIN = 'https://www.googleapis.com/auth/logging.admin' - # View log data for your projects AUTH_LOGGING_READ = 'https://www.googleapis.com/auth/logging.read' # Submit log data for your projects AUTH_LOGGING_WRITE = 'https://www.googleapis.com/auth/logging.write' + + # Administrate log data for your projects + AUTH_LOGGING_ADMIN = 'https://www.googleapis.com/auth/logging.admin' end end end diff --git a/generated/google/apis/logging_v2beta1/classes.rb b/generated/google/apis/logging_v2beta1/classes.rb index f7ece3eb0..8d9e1687e 100644 --- a/generated/google/apis/logging_v2beta1/classes.rb +++ b/generated/google/apis/logging_v2beta1/classes.rb @@ -22,70 +22,21 @@ module Google module Apis module LoggingV2beta1 - # A generic empty message that you can re-use to avoid defining duplicated empty - # messages in your APIs. A typical example is to use it as the request or the - # response type of an API method. For instance: service Foo ` rpc Bar(google. - # protobuf.Empty) returns (google.protobuf.Empty); ` The JSON representation for - # `Empty` is empty JSON object ````. - class Empty + # Result returned from `ListLogEntries`. + class ListLogEntriesResponse include Google::Apis::Core::Hashable - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # The parameters to WriteLogEntries. - class WriteLogEntriesRequest - include Google::Apis::Core::Hashable - - # Optional. A default log resource name for those log entries in `entries` that - # do not specify their own `logName`. Example: `"projects/my-project/logs/syslog" - # `. See LogEntry. - # Corresponds to the JSON property `logName` - # @return [String] - attr_accessor :log_name - - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The `type` field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the `labels` field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for `"gce_instance"` has labels `"instance_id"` - # and `"zone"`: ` "type": "gce_instance", "labels": ` "instance_id": "my- - # instance", "zone": "us-central1-a" `` - # Corresponds to the JSON property `resource` - # @return [Google::Apis::LoggingV2beta1::MonitoredResource] - attr_accessor :resource - - # Optional. User-defined `key:value` items that are added to the `labels` field - # of each log entry in `entries`, except when a log entry specifies its own `key: - # value` item with the same key. Example: `` "size": "large", "color":"red" `` - # Corresponds to the JSON property `labels` - # @return [Hash] - attr_accessor :labels - - # Required. The log entries to write. The log entries must have values for all - # required fields. + # A list of log entries. # Corresponds to the JSON property `entries` # @return [Array] attr_accessor :entries - # Optional. Whether valid entries should be written even if some other entries - # fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any entry is not - # written, the response status will be the error associated with one of the - # failed entries and include error details in the form of - # WriteLogEntriesPartialErrors. - # Corresponds to the JSON property `partialSuccess` - # @return [Boolean] - attr_accessor :partial_success - alias_method :partial_success?, :partial_success + # If there might be more results than appear in this response, then + # `nextPageToken` is included. To get the next set of results, call this + # method again using the value of `nextPageToken` as `pageToken`. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token def initialize(**args) update!(**args) @@ -93,40 +44,26 @@ module Google # Update properties of this object def update!(**args) - @log_name = args[:log_name] if args.key?(:log_name) - @resource = args[:resource] if args.key?(:resource) - @labels = args[:labels] if args.key?(:labels) @entries = args[:entries] if args.key?(:entries) - @partial_success = args[:partial_success] if args.key?(:partial_success) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) end end - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The `type` field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the `labels` field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for `"gce_instance"` has labels `"instance_id"` - # and `"zone"`: ` "type": "gce_instance", "labels": ` "instance_id": "my- - # instance", "zone": "us-central1-a" `` - class MonitoredResource + # Result returned from `ListSinks`. + class ListSinksResponse include Google::Apis::Core::Hashable - # Required. The monitored resource type. This field must match the `type` field - # of a MonitoredResourceDescriptor object. For example, the type of a Cloud SQL - # database is `"cloudsql_database"`. - # Corresponds to the JSON property `type` + # If there might be more results than appear in this response, then + # `nextPageToken` is included. To get the next set of results, call the same + # method again using the value of `nextPageToken` as `pageToken`. + # Corresponds to the JSON property `nextPageToken` # @return [String] - attr_accessor :type + attr_accessor :next_page_token - # Required. Values for all of the labels listed in the associated monitored - # resource descriptor. For example, Cloud SQL databases use the labels `" - # database_id"` and `"zone"`. - # Corresponds to the JSON property `labels` - # @return [Hash] - attr_accessor :labels + # A list of sinks. + # Corresponds to the JSON property `sinks` + # @return [Array] + attr_accessor :sinks def initialize(**args) update!(**args) @@ -134,8 +71,162 @@ module Google # Update properties of this object def update!(**args) - @type = args[:type] if args.key?(:type) - @labels = args[:labels] if args.key?(:labels) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @sinks = args[:sinks] if args.key?(:sinks) + end + end + + # Specifies a location in a source code file. + class SourceLocation + include Google::Apis::Core::Hashable + + # Source file name. Depending on the runtime environment, this might be a + # simple name or a fully-qualified name. + # Corresponds to the JSON property `file` + # @return [String] + attr_accessor :file + + # Human-readable name of the function or method being invoked, with optional + # context such as the class or package name. This information is used in + # contexts such as the logs viewer, where a file and line number are less + # meaningful. The format can vary by language. For example: + # `qual.if.ied.Class.method` (Java), `dir/package.func` (Go), `function` + # (Python). + # Corresponds to the JSON property `functionName` + # @return [String] + attr_accessor :function_name + + # Line within the source file. + # Corresponds to the JSON property `line` + # @return [String] + attr_accessor :line + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @file = args[:file] if args.key?(:file) + @function_name = args[:function_name] if args.key?(:function_name) + @line = args[:line] if args.key?(:line) + end + end + + # Describes a sink used to export log entries outside Stackdriver Logging. + class LogSink + include Google::Apis::Core::Hashable + + # Output only. The iam identity to which the destination needs to grant write + # access. This may be a service account or a group. + # Examples (Do not assume these specific values): + # "serviceAccount:cloud-logs@system.gserviceaccount.com" + # "group:cloud-logs@google.com" + # For GCS destinations, the role "roles/owner" is required on the bucket + # For Cloud Pubsub destinations, the role "roles/pubsub.publisher" is + # required on the topic + # For BigQuery, the role "roles/editor" is required on the dataset + # Corresponds to the JSON property `writerIdentity` + # @return [String] + attr_accessor :writer_identity + + # Optional. An [advanced logs filter](/logging/docs/view/advanced_filters). + # Only log entries matching the filter are exported. The filter + # must be consistent with the log entry format specified by the + # `outputVersionFormat` parameter, regardless of the format of the + # log entry that was originally written to Stackdriver Logging. + # Example filter (V2 format): + # logName=projects/my-projectid/logs/syslog AND severity>=ERROR + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + # Required. The export destination. See + # [Exporting Logs With Sinks](/logging/docs/api/tasks/exporting-logs). + # Examples: + # "storage.googleapis.com/my-gcs-bucket" + # "bigquery.googleapis.com/projects/my-project-id/datasets/my-dataset" + # "pubsub.googleapis.com/projects/my-project/topics/my-topic" + # Corresponds to the JSON property `destination` + # @return [String] + attr_accessor :destination + + # Optional. The log entry version to use for this sink's exported log + # entries. This version does not have to correspond to the version of the + # log entry that was written to Stackdriver Logging. If omitted, the + # v2 format is used. + # Corresponds to the JSON property `outputVersionFormat` + # @return [String] + attr_accessor :output_version_format + + # Required. The client-assigned sink identifier, unique within the + # project. Example: `"my-syslog-errors-to-pubsub"`. Sink identifiers are + # limited to 1000 characters and can include only the following characters: + # `A-Z`, `a-z`, `0-9`, and the special characters `_-.`. The maximum length + # of the name is 100 characters. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @writer_identity = args[:writer_identity] if args.key?(:writer_identity) + @filter = args[:filter] if args.key?(:filter) + @destination = args[:destination] if args.key?(:destination) + @output_version_format = args[:output_version_format] if args.key?(:output_version_format) + @name = args[:name] if args.key?(:name) + end + end + + # Describes a logs-based metric. The value of the metric is the + # number of log entries that match a logs filter. + class LogMetric + include Google::Apis::Core::Hashable + + # Optional. A description of this metric, which is used in documentation. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Required. An [advanced logs filter](/logging/docs/view/advanced_filters). + # Example: `"resource.type=gae_app AND severity>=ERROR"`. + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + # Required. The client-assigned metric identifier. Example: + # `"severe_errors"`. Metric identifiers are limited to 100 + # characters and can include only the following characters: `A-Z`, + # `a-z`, `0-9`, and the special characters `_-.,+!*',()%/`. The + # forward-slash character (`/`) denotes a hierarchy of name pieces, + # and it cannot be the first character of the name. The '%' character + # is used to URL encode unsafe and reserved characters and must be + # followed by two hexadecimal digits according to RFC 1738. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Output only. The API version that created or updated this metric. + # The version also dictates the syntax of the filter expression. When a value + # for this field is missing, the default value of V2 should be assumed. + # Corresponds to the JSON property `version` + # @return [String] + attr_accessor :version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @filter = args[:filter] if args.key?(:filter) + @name = args[:name] if args.key?(:name) + @version = args[:version] if args.key?(:version) end end @@ -143,82 +234,90 @@ module Google class LogEntry include Google::Apis::Core::Hashable - # Required. The resource name of the log to which this log entry belongs. The - # format of the name is `"projects/ - # /logs/"`. Examples: `"projects/my-projectid/logs/syslog"`, `"projects/ - # 1234567890/logs/library.googleapis.com%2Fbook_log"`. The log ID part of - # resource name must be less than 512 characters long and can only include the - # following characters: upper and lower case alphanumeric characters: [A-Za-z0-9] - # ; and punctuation characters: forward-slash, underscore, hyphen, and period. - # Forward-slash (`/`) characters in the log ID must be URL-encoded. - # Corresponds to the JSON property `logName` - # @return [String] - attr_accessor :log_name - - # An object representing a resource that can be used for monitoring, logging, - # billing, or other purposes. Examples include virtual machine instances, - # databases, and storage devices such as disks. The `type` field identifies a - # MonitoredResourceDescriptor object that describes the resource's schema. - # Information in the `labels` field identifies the actual resource and its - # attributes according to the schema. For example, a particular Compute Engine - # VM instance could be represented by the following object, because the - # MonitoredResourceDescriptor for `"gce_instance"` has labels `"instance_id"` - # and `"zone"`: ` "type": "gce_instance", "labels": ` "instance_id": "my- - # instance", "zone": "us-central1-a" `` - # Corresponds to the JSON property `resource` - # @return [Google::Apis::LoggingV2beta1::MonitoredResource] - attr_accessor :resource - - # The log entry payload, represented as a protocol buffer. You can only use ` - # protoPayload` values that belong to a set of approved types. - # Corresponds to the JSON property `protoPayload` - # @return [Hash] - attr_accessor :proto_payload - # The log entry payload, represented as a Unicode string (UTF-8). # Corresponds to the JSON property `textPayload` # @return [String] attr_accessor :text_payload - # The log entry payload, represented as a structure that is expressed as a JSON - # object. - # Corresponds to the JSON property `jsonPayload` - # @return [Hash] - attr_accessor :json_payload - - # Optional. The time the event described by the log entry occurred. If omitted, - # Cloud Logging will use the time the log entry is written. - # Corresponds to the JSON property `timestamp` - # @return [String] - attr_accessor :timestamp - - # Optional. The severity of the log entry. The default value is `LogSeverity. - # DEFAULT`. - # Corresponds to the JSON property `severity` - # @return [String] - attr_accessor :severity - - # Optional. A unique ID for the log entry. If you provide this field, the - # logging service considers other log entries in the same log with the same ID - # as duplicates which can be removed. If omitted, Cloud Logging will generate a - # unique ID for this log entry. - # Corresponds to the JSON property `insertId` - # @return [String] - attr_accessor :insert_id - - # A common proto for logging HTTP requests. + # A common proto for logging HTTP requests. Only contains semantics + # defined by the HTTP specification. Product-specific logging + # information MUST be defined in a separate message. # Corresponds to the JSON property `httpRequest` # @return [Google::Apis::LoggingV2beta1::HttpRequest] attr_accessor :http_request + # The log entry payload, represented as a structure that + # is expressed as a JSON object. + # Corresponds to the JSON property `jsonPayload` + # @return [Hash] + attr_accessor :json_payload + # Optional. A set of user-defined (key, value) data that provides additional # information about the log entry. # Corresponds to the JSON property `labels` # @return [Hash] attr_accessor :labels - # Additional information about a potentially long-running operation with which a - # log entry is associated. + # Required. The resource name of the log to which this log entry + # belongs. The format of the name is + # `"projects//logs/"`. Examples: + # `"projects/my-projectid/logs/syslog"`, + # `"projects/my-projectid/logs/library.googleapis.com%2Fbook_log"`. + # The log ID part of resource name must be less than 512 characters + # long and can only include the following characters: upper and + # lower case alphanumeric characters: [A-Za-z0-9]; and punctuation + # characters: forward-slash, underscore, hyphen, and period. + # Forward-slash (`/`) characters in the log ID must be URL-encoded. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + # Optional. The severity of the log entry. The default value is + # `LogSeverity.DEFAULT`. + # Corresponds to the JSON property `severity` + # @return [String] + attr_accessor :severity + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The `type` field identifies a + # MonitoredResourceDescriptor object that describes the resource's + # schema. Information in the `labels` field identifies the actual resource and + # its attributes according to the schema. For example, a particular Compute + # Engine VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for `"gce_instance"` has labels + # `"instance_id"` and `"zone"`: + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + # Corresponds to the JSON property `resource` + # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + attr_accessor :resource + + # The log entry payload, represented as a protocol buffer. Some + # Google Cloud Platform services use this field for their log + # entry payloads. + # Corresponds to the JSON property `protoPayload` + # @return [Hash] + attr_accessor :proto_payload + + # Optional. The time the event described by the log entry occurred. If + # omitted, Stackdriver Logging will use the time the log entry is received. + # Corresponds to the JSON property `timestamp` + # @return [String] + attr_accessor :timestamp + + # Optional. A unique ID for the log entry. If you provide this + # field, the logging service considers other log entries in the + # same project with the same ID as duplicates which can be removed. If + # omitted, Stackdriver Logging will generate a unique ID for this + # log entry. + # Corresponds to the JSON property `insertId` + # @return [String] + attr_accessor :insert_id + + # Additional information about a potentially long-running operation with which + # a log entry is associated. # Corresponds to the JSON property `operation` # @return [Google::Apis::LoggingV2beta1::LogEntryOperation] attr_accessor :operation @@ -229,818 +328,20 @@ module Google # Update properties of this object def update!(**args) + @text_payload = args[:text_payload] if args.key?(:text_payload) + @http_request = args[:http_request] if args.key?(:http_request) + @json_payload = args[:json_payload] if args.key?(:json_payload) + @labels = args[:labels] if args.key?(:labels) @log_name = args[:log_name] if args.key?(:log_name) + @severity = args[:severity] if args.key?(:severity) @resource = args[:resource] if args.key?(:resource) @proto_payload = args[:proto_payload] if args.key?(:proto_payload) - @text_payload = args[:text_payload] if args.key?(:text_payload) - @json_payload = args[:json_payload] if args.key?(:json_payload) @timestamp = args[:timestamp] if args.key?(:timestamp) - @severity = args[:severity] if args.key?(:severity) @insert_id = args[:insert_id] if args.key?(:insert_id) - @http_request = args[:http_request] if args.key?(:http_request) - @labels = args[:labels] if args.key?(:labels) @operation = args[:operation] if args.key?(:operation) end end - # A common proto for logging HTTP requests. - class HttpRequest - include Google::Apis::Core::Hashable - - # The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`. - # Corresponds to the JSON property `requestMethod` - # @return [String] - attr_accessor :request_method - - # The scheme (http, https), the host name, the path and the query portion of the - # URL that was requested. Example: `"http://example.com/some/info?color=red"`. - # Corresponds to the JSON property `requestUrl` - # @return [String] - attr_accessor :request_url - - # The size of the HTTP request message in bytes, including the request headers - # and the request body. - # Corresponds to the JSON property `requestSize` - # @return [String] - attr_accessor :request_size - - # The response code indicating the status of response. Examples: 200, 404. - # Corresponds to the JSON property `status` - # @return [Fixnum] - attr_accessor :status - - # The size of the HTTP response message sent back to the client, in bytes, - # including the response headers and the response body. - # Corresponds to the JSON property `responseSize` - # @return [String] - attr_accessor :response_size - - # The user agent sent by the client. Example: `"Mozilla/4.0 (compatible; MSIE 6. - # 0; Windows 98; Q312461; .NET CLR 1.0.3705)"`. - # Corresponds to the JSON property `userAgent` - # @return [String] - attr_accessor :user_agent - - # The IP address (IPv4 or IPv6) of the client that issued the HTTP request. - # Examples: `"192.168.1.1"`, `"FE80::0202:B3FF:FE1E:8329"`. - # Corresponds to the JSON property `remoteIp` - # @return [String] - attr_accessor :remote_ip - - # The referer URL of the request, as defined in [HTTP/1.1 Header Field - # Definitions](http://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html). - # Corresponds to the JSON property `referer` - # @return [String] - attr_accessor :referer - - # Whether or not a cache lookup was attempted. - # Corresponds to the JSON property `cacheLookup` - # @return [Boolean] - attr_accessor :cache_lookup - alias_method :cache_lookup?, :cache_lookup - - # Whether or not an entity was served from cache (with or without validation). - # Corresponds to the JSON property `cacheHit` - # @return [Boolean] - attr_accessor :cache_hit - alias_method :cache_hit?, :cache_hit - - # Whether or not the response was validated with the origin server before being - # served from cache. This field is only meaningful if `cache_hit` is True. - # Corresponds to the JSON property `cacheValidatedWithOriginServer` - # @return [Boolean] - attr_accessor :cache_validated_with_origin_server - alias_method :cache_validated_with_origin_server?, :cache_validated_with_origin_server - - # The number of HTTP response bytes inserted into cache. Set only when a cache - # fill was attempted. - # Corresponds to the JSON property `cacheFillBytes` - # @return [String] - attr_accessor :cache_fill_bytes - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @request_method = args[:request_method] if args.key?(:request_method) - @request_url = args[:request_url] if args.key?(:request_url) - @request_size = args[:request_size] if args.key?(:request_size) - @status = args[:status] if args.key?(:status) - @response_size = args[:response_size] if args.key?(:response_size) - @user_agent = args[:user_agent] if args.key?(:user_agent) - @remote_ip = args[:remote_ip] if args.key?(:remote_ip) - @referer = args[:referer] if args.key?(:referer) - @cache_lookup = args[:cache_lookup] if args.key?(:cache_lookup) - @cache_hit = args[:cache_hit] if args.key?(:cache_hit) - @cache_validated_with_origin_server = args[:cache_validated_with_origin_server] if args.key?(:cache_validated_with_origin_server) - @cache_fill_bytes = args[:cache_fill_bytes] if args.key?(:cache_fill_bytes) - end - end - - # Additional information about a potentially long-running operation with which a - # log entry is associated. - class LogEntryOperation - include Google::Apis::Core::Hashable - - # Required. An arbitrary operation identifier. Log entries with the same - # identifier are assumed to be part of the same operation. - # Corresponds to the JSON property `id` - # @return [String] - attr_accessor :id - - # Required. An arbitrary producer identifier. The combination of `id` and ` - # producer` must be globally unique. Examples for `producer`: `"MyDivision. - # MyBigCompany.com"`, "github.com/MyProject/MyApplication"`. - # Corresponds to the JSON property `producer` - # @return [String] - attr_accessor :producer - - # Optional. Set this to True if this is the first log entry in the operation. - # Corresponds to the JSON property `first` - # @return [Boolean] - attr_accessor :first - alias_method :first?, :first - - # Optional. Set this to True if this is the last log entry in the operation. - # Corresponds to the JSON property `last` - # @return [Boolean] - attr_accessor :last - alias_method :last?, :last - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @id = args[:id] if args.key?(:id) - @producer = args[:producer] if args.key?(:producer) - @first = args[:first] if args.key?(:first) - @last = args[:last] if args.key?(:last) - end - end - - # Result returned from WriteLogEntries. empty - class WriteLogEntriesResponse - include Google::Apis::Core::Hashable - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - end - end - - # The parameters to `ListLogEntries`. - class ListLogEntriesRequest - include Google::Apis::Core::Hashable - - # Required. One or more project IDs or project numbers from which to retrieve - # log entries. Examples of a project ID: `"my-project-1A"`, `"1234567890"`. - # Corresponds to the JSON property `projectIds` - # @return [Array] - attr_accessor :project_ids - - # Optional. An [advanced logs filter](/logging/docs/view/advanced_filters). The - # filter is compared against all log entries in the projects specified by ` - # projectIds`. Only entries that match the filter are retrieved. An empty filter - # matches all log entries. - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - - # Optional. How the results should be sorted. Presently, the only permitted - # values are `"timestamp asc"` (default) and `"timestamp desc"`. The first - # option returns entries in order of increasing values of `LogEntry.timestamp` ( - # oldest first), and the second option returns entries in order of decreasing - # timestamps (newest first). Entries with equal timestamps are returned in order - # of `LogEntry.insertId`. - # Corresponds to the JSON property `orderBy` - # @return [String] - attr_accessor :order_by - - # Optional. The maximum number of results to return from this request. You must - # check for presence of `nextPageToken` to determine if additional results are - # available, which you can retrieve by passing the `nextPageToken` value as the ` - # pageToken` parameter in the next request. - # Corresponds to the JSON property `pageSize` - # @return [Fixnum] - attr_accessor :page_size - - # Optional. If the `pageToken` parameter is supplied, then the next page of - # results is retrieved. The `pageToken` parameter must be set to the value of - # the `nextPageToken` from the previous response. The values of `projectIds`, ` - # filter`, and `orderBy` must be the same as in the previous request. - # Corresponds to the JSON property `pageToken` - # @return [String] - attr_accessor :page_token - - # Optional. If true, read access to all projects is not required and results - # will be returned for the subset of projects for which read access is permitted - # (empty subset is permitted). - # Corresponds to the JSON property `partialSuccess` - # @return [Boolean] - attr_accessor :partial_success - alias_method :partial_success?, :partial_success - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @project_ids = args[:project_ids] if args.key?(:project_ids) - @filter = args[:filter] if args.key?(:filter) - @order_by = args[:order_by] if args.key?(:order_by) - @page_size = args[:page_size] if args.key?(:page_size) - @page_token = args[:page_token] if args.key?(:page_token) - @partial_success = args[:partial_success] if args.key?(:partial_success) - end - end - - # Result returned from `ListLogEntries`. - class ListLogEntriesResponse - include Google::Apis::Core::Hashable - - # A list of log entries. - # Corresponds to the JSON property `entries` - # @return [Array] - attr_accessor :entries - - # If there are more results than were returned, then `nextPageToken` is included - # in the response. To get the next set of results, call this method again using - # the value of `nextPageToken` as `pageToken`. - # Corresponds to the JSON property `nextPageToken` - # @return [String] - attr_accessor :next_page_token - - # If partial_success is true, contains the project ids that had errors and the - # associated errors. - # Corresponds to the JSON property `projectIdErrors` - # @return [Hash] - attr_accessor :project_id_errors - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @entries = args[:entries] if args.key?(:entries) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - @project_id_errors = args[:project_id_errors] if args.key?(:project_id_errors) - 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` which 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 purpose. - 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 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 - - # A list of messages that carry the error details. There will be a common set of - # message types for APIs to use. - # Corresponds to the JSON property `details` - # @return [Array>] - attr_accessor :details - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @code = args[:code] if args.key?(:code) - @message = args[:message] if args.key?(:message) - @details = args[:details] if args.key?(:details) - end - end - - # Result returned from ListMonitoredResourceDescriptors. - class ListMonitoredResourceDescriptorsResponse - include Google::Apis::Core::Hashable - - # A list of resource descriptors. - # Corresponds to the JSON property `resourceDescriptors` - # @return [Array] - attr_accessor :resource_descriptors - - # If there are more results than were returned, then `nextPageToken` is included - # in the response. To get the next set of results, call this method again using - # the value of `nextPageToken` as `pageToken`. - # 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) - @resource_descriptors = args[:resource_descriptors] if args.key?(:resource_descriptors) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # An object that describes the schema of a MonitoredResource object using a type - # name and a set of labels. For example, the monitored resource descriptor for - # Google Compute Engine VM instances has a type of `"gce_instance"` and - # specifies the use of the labels `"instance_id"` and `"zone"` to identify - # particular VM instances. Different APIs can support different monitored - # resource types. APIs generally provide a `list` method that returns the - # monitored resource descriptors used by the API. - class MonitoredResourceDescriptor - include Google::Apis::Core::Hashable - - # Optional. The resource name of the monitored resource descriptor: `"projects/` - # project_id`/monitoredResourceDescriptors/`type`"` where `type` is the value of - # the `type` field in this object and `project_id` is a project ID that provides - # API-specific context for accessing the type. APIs that do not use project - # information can use the resource name format `"monitoredResourceDescriptors/` - # type`"`. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # Required. The monitored resource type. For example, the type `" - # cloudsql_database"` represents databases in Google Cloud SQL. - # Corresponds to the JSON property `type` - # @return [String] - attr_accessor :type - - # Optional. A concise name for the monitored resource type that might be - # displayed in user interfaces. For example, `"Google Cloud SQL Database"`. - # Corresponds to the JSON property `displayName` - # @return [String] - attr_accessor :display_name - - # Optional. A detailed description of the monitored resource type that might be - # used in documentation. - # Corresponds to the JSON property `description` - # @return [String] - attr_accessor :description - - # Required. A set of labels used to describe instances of this monitored - # resource type. For example, an individual Google Cloud SQL database is - # identified by values for the labels `"database_id"` and `"zone"`. - # Corresponds to the JSON property `labels` - # @return [Array] - attr_accessor :labels - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @name = args[:name] if args.key?(:name) - @type = args[:type] if args.key?(:type) - @display_name = args[:display_name] if args.key?(:display_name) - @description = args[:description] if args.key?(:description) - @labels = args[:labels] if args.key?(:labels) - end - end - - # A description of a label. - class LabelDescriptor - include Google::Apis::Core::Hashable - - # The label key. - # Corresponds to the JSON property `key` - # @return [String] - attr_accessor :key - - # The type of data that can be assigned to the label. - # Corresponds to the JSON property `valueType` - # @return [String] - attr_accessor :value_type - - # A human-readable description for the label. - # Corresponds to the JSON property `description` - # @return [String] - attr_accessor :description - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @key = args[:key] if args.key?(:key) - @value_type = args[:value_type] if args.key?(:value_type) - @description = args[:description] if args.key?(:description) - end - end - - # Result returned from `ListSinks`. - class ListSinksResponse - include Google::Apis::Core::Hashable - - # A list of sinks. - # Corresponds to the JSON property `sinks` - # @return [Array] - attr_accessor :sinks - - # If there are more results than were returned, then `nextPageToken` is included - # in the response. To get the next set of results, call this method again using - # the value of `nextPageToken` as `pageToken`. - # 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) - @sinks = args[:sinks] if args.key?(:sinks) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # Describes a sink used to export log entries outside Cloud Logging. - class LogSink - include Google::Apis::Core::Hashable - - # Required. The client-assigned sink identifier. Example: `"my-severe-errors-to- - # pubsub"`. Sink identifiers are limited to 1000 characters and can include only - # the following characters: `A-Z`, `a-z`, `0-9`, and the special characters `_-.` - # . - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # The export destination. See [Exporting Logs With Sinks](/logging/docs/api/ - # tasks/exporting-logs). Examples: `"storage.googleapis.com/a-bucket"`, `" - # bigquery.googleapis.com/projects/a-project-id/datasets/a-dataset"`. - # Corresponds to the JSON property `destination` - # @return [String] - attr_accessor :destination - - # An [advanced logs filter](/logging/docs/view/advanced_filters). Only log - # entries matching that filter are exported. The filter must be consistent with - # the log entry format specified by the `outputVersionFormat` parameter, - # regardless of the format of the log entry that was originally written to Cloud - # Logging. Example (V2 format): `"logName=projects/my-projectid/logs/syslog AND - # severity>=ERROR"`. - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - - # The log entry version to use for this sink's exported log entries. This - # version does not have to correspond to the version of the log entry when it - # was written to Cloud Logging. - # Corresponds to the JSON property `outputVersionFormat` - # @return [String] - attr_accessor :output_version_format - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @name = args[:name] if args.key?(:name) - @destination = args[:destination] if args.key?(:destination) - @filter = args[:filter] if args.key?(:filter) - @output_version_format = args[:output_version_format] if args.key?(:output_version_format) - end - end - - # Result returned from ListLogMetrics. - class ListLogMetricsResponse - include Google::Apis::Core::Hashable - - # A list of logs-based metrics. - # Corresponds to the JSON property `metrics` - # @return [Array] - attr_accessor :metrics - - # If there are more results than were returned, then `nextPageToken` is included - # in the response. To get the next set of results, call this method again using - # the value of `nextPageToken` as `pageToken`. - # 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) - @metrics = args[:metrics] if args.key?(:metrics) - @next_page_token = args[:next_page_token] if args.key?(:next_page_token) - end - end - - # Describes a logs-based metric. The value of the metric is the number of log - # entries that match a logs filter. - class LogMetric - include Google::Apis::Core::Hashable - - # Required. The client-assigned metric identifier. Example: `"severe_errors"`. - # Metric identifiers are limited to 1000 characters and can include only the - # following characters: `A-Z`, `a-z`, `0-9`, and the special characters `_-.,+!*' - # ,()%/\`. The forward-slash character (`/`) denotes a hierarchy of name pieces, - # and it cannot be the first character of the name. - # Corresponds to the JSON property `name` - # @return [String] - attr_accessor :name - - # A description of this metric, which is used in documentation. - # Corresponds to the JSON property `description` - # @return [String] - attr_accessor :description - - # An [advanced logs filter](/logging/docs/view/advanced_filters). Example: `" - # logName:syslog AND severity>=ERROR"`. - # Corresponds to the JSON property `filter` - # @return [String] - attr_accessor :filter - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @name = args[:name] if args.key?(:name) - @description = args[:description] if args.key?(:description) - @filter = args[:filter] if args.key?(:filter) - end - end - - # Complete log information about a single HTTP request to an App Engine - # application. - class RequestLog - include Google::Apis::Core::Hashable - - # Application that handled this request. - # Corresponds to the JSON property `appId` - # @return [String] - attr_accessor :app_id - - # Module of the application that handled this request. - # Corresponds to the JSON property `moduleId` - # @return [String] - attr_accessor :module_id - - # Version of the application that handled this request. - # Corresponds to the JSON property `versionId` - # @return [String] - attr_accessor :version_id - - # Globally unique identifier for a request, which is based on the request start - # time. Request IDs for requests which started later will compare greater as - # strings than those for requests which started earlier. - # Corresponds to the JSON property `requestId` - # @return [String] - attr_accessor :request_id - - # Origin IP address. - # Corresponds to the JSON property `ip` - # @return [String] - attr_accessor :ip - - # Time when the request started. - # Corresponds to the JSON property `startTime` - # @return [String] - attr_accessor :start_time - - # Time when the request finished. - # Corresponds to the JSON property `endTime` - # @return [String] - attr_accessor :end_time - - # Latency of the request. - # Corresponds to the JSON property `latency` - # @return [String] - attr_accessor :latency - - # Number of CPU megacycles used to process request. - # Corresponds to the JSON property `megaCycles` - # @return [String] - attr_accessor :mega_cycles - - # Request method. Example: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`, `"DELETE"`. - # Corresponds to the JSON property `method` - # @return [String] - attr_accessor :method_prop - - # Contains the path and query portion of the URL that was requested. For example, - # if the URL was "http://example.com/app?name=val", the resource would be "/app? - # name=val". The fragment identifier, which is identified by the `#` character, - # is not included. - # Corresponds to the JSON property `resource` - # @return [String] - attr_accessor :resource - - # HTTP version of request. Example: `"HTTP/1.1"`. - # Corresponds to the JSON property `httpVersion` - # @return [String] - attr_accessor :http_version - - # HTTP response status code. Example: 200, 404. - # Corresponds to the JSON property `status` - # @return [Fixnum] - attr_accessor :status - - # Size in bytes sent back to client by request. - # Corresponds to the JSON property `responseSize` - # @return [String] - attr_accessor :response_size - - # Referrer URL of request. - # Corresponds to the JSON property `referrer` - # @return [String] - attr_accessor :referrer - - # User agent that made the request. - # Corresponds to the JSON property `userAgent` - # @return [String] - attr_accessor :user_agent - - # The logged-in user who made the request. Most likely, this is the part of the - # user's email before the `@` sign. The field value is the same for different - # requests from the same user, but different users can have similar names. This - # information is also available to the application via the App Engine Users API. - # This field will be populated starting with App Engine 1.9.21. - # Corresponds to the JSON property `nickname` - # @return [String] - attr_accessor :nickname - - # File or class that handled the request. - # Corresponds to the JSON property `urlMapEntry` - # @return [String] - attr_accessor :url_map_entry - - # Internet host and port number of the resource being requested. - # Corresponds to the JSON property `host` - # @return [String] - attr_accessor :host - - # An indication of the relative cost of serving this request. - # Corresponds to the JSON property `cost` - # @return [Float] - attr_accessor :cost - - # Queue name of the request, in the case of an offline request. - # Corresponds to the JSON property `taskQueueName` - # @return [String] - attr_accessor :task_queue_name - - # Task name of the request, in the case of an offline request. - # Corresponds to the JSON property `taskName` - # @return [String] - attr_accessor :task_name - - # Whether this was a loading request for the instance. - # Corresponds to the JSON property `wasLoadingRequest` - # @return [Boolean] - attr_accessor :was_loading_request - alias_method :was_loading_request?, :was_loading_request - - # Time this request spent in the pending request queue. - # Corresponds to the JSON property `pendingTime` - # @return [String] - attr_accessor :pending_time - - # If the instance processing this request belongs to a manually scaled module, - # then this is the 0-based index of the instance. Otherwise, this value is -1. - # Corresponds to the JSON property `instanceIndex` - # @return [Fixnum] - attr_accessor :instance_index - - # Whether this request is finished or active. - # Corresponds to the JSON property `finished` - # @return [Boolean] - attr_accessor :finished - alias_method :finished?, :finished - - # Whether this is the first RequestLog entry for this request. If an active - # request has several RequestLog entries written to Cloud Logging, this field - # will be set for one of them. - # Corresponds to the JSON property `first` - # @return [Boolean] - attr_accessor :first - alias_method :first?, :first - - # An identifier for the instance that handled the request. - # Corresponds to the JSON property `instanceId` - # @return [String] - attr_accessor :instance_id - - # A list of log lines emitted by the application while serving this request. - # Corresponds to the JSON property `line` - # @return [Array] - attr_accessor :line - - # App Engine release version. - # Corresponds to the JSON property `appEngineRelease` - # @return [String] - attr_accessor :app_engine_release - - # Cloud Trace identifier for this request. - # Corresponds to the JSON property `traceId` - # @return [String] - attr_accessor :trace_id - - # Source code for the application that handled this request. There can be more - # than one source reference per deployed application if source code is - # distributed among multiple repositories. - # Corresponds to the JSON property `sourceReference` - # @return [Array] - attr_accessor :source_reference - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @app_id = args[:app_id] if args.key?(:app_id) - @module_id = args[:module_id] if args.key?(:module_id) - @version_id = args[:version_id] if args.key?(:version_id) - @request_id = args[:request_id] if args.key?(:request_id) - @ip = args[:ip] if args.key?(:ip) - @start_time = args[:start_time] if args.key?(:start_time) - @end_time = args[:end_time] if args.key?(:end_time) - @latency = args[:latency] if args.key?(:latency) - @mega_cycles = args[:mega_cycles] if args.key?(:mega_cycles) - @method_prop = args[:method_prop] if args.key?(:method_prop) - @resource = args[:resource] if args.key?(:resource) - @http_version = args[:http_version] if args.key?(:http_version) - @status = args[:status] if args.key?(:status) - @response_size = args[:response_size] if args.key?(:response_size) - @referrer = args[:referrer] if args.key?(:referrer) - @user_agent = args[:user_agent] if args.key?(:user_agent) - @nickname = args[:nickname] if args.key?(:nickname) - @url_map_entry = args[:url_map_entry] if args.key?(:url_map_entry) - @host = args[:host] if args.key?(:host) - @cost = args[:cost] if args.key?(:cost) - @task_queue_name = args[:task_queue_name] if args.key?(:task_queue_name) - @task_name = args[:task_name] if args.key?(:task_name) - @was_loading_request = args[:was_loading_request] if args.key?(:was_loading_request) - @pending_time = args[:pending_time] if args.key?(:pending_time) - @instance_index = args[:instance_index] if args.key?(:instance_index) - @finished = args[:finished] if args.key?(:finished) - @first = args[:first] if args.key?(:first) - @instance_id = args[:instance_id] if args.key?(:instance_id) - @line = args[:line] if args.key?(:line) - @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) - @trace_id = args[:trace_id] if args.key?(:trace_id) - @source_reference = args[:source_reference] if args.key?(:source_reference) - end - end - # Application log line emitted while processing a request. class LogLine include Google::Apis::Core::Hashable @@ -1055,16 +356,16 @@ module Google # @return [String] attr_accessor :severity - # App-provided log message. - # Corresponds to the JSON property `logMessage` - # @return [String] - attr_accessor :log_message - # Specifies a location in a source code file. # Corresponds to the JSON property `sourceLocation` # @return [Google::Apis::LoggingV2beta1::SourceLocation] attr_accessor :source_location + # App-provided log message. + # Corresponds to the JSON property `logMessage` + # @return [String] + attr_accessor :log_message + def initialize(**args) update!(**args) end @@ -1073,44 +374,8 @@ module Google def update!(**args) @time = args[:time] if args.key?(:time) @severity = args[:severity] if args.key?(:severity) - @log_message = args[:log_message] if args.key?(:log_message) @source_location = args[:source_location] if args.key?(:source_location) - end - end - - # Specifies a location in a source code file. - class SourceLocation - include Google::Apis::Core::Hashable - - # Source file name. Depending on the runtime environment, this might be a simple - # name or a fully-qualified name. - # Corresponds to the JSON property `file` - # @return [String] - attr_accessor :file - - # Line within the source file. - # Corresponds to the JSON property `line` - # @return [String] - attr_accessor :line - - # Human-readable name of the function or method being invoked, with optional - # context such as the class or package name. This information is used in - # contexts such as the logs viewer, where a file and line number are less - # meaningful. The format can vary by language. For example: `qual.if.ied.Class. - # method` (Java), `dir/package.func` (Go), `function` (Python). - # Corresponds to the JSON property `functionName` - # @return [String] - attr_accessor :function_name - - def initialize(**args) - update!(**args) - end - - # Update properties of this object - def update!(**args) - @file = args[:file] if args.key?(:file) - @line = args[:line] if args.key?(:line) - @function_name = args[:function_name] if args.key?(:function_name) + @log_message = args[:log_message] if args.key?(:log_message) end end @@ -1119,14 +384,14 @@ module Google class SourceReference include Google::Apis::Core::Hashable - # Optional. A URI string identifying the repository. Example: "https://github. - # com/GoogleCloudPlatform/kubernetes.git" + # Optional. A URI string identifying the repository. + # Example: "https://github.com/GoogleCloudPlatform/kubernetes.git" # Corresponds to the JSON property `repository` # @return [String] attr_accessor :repository - # The canonical and persistent identifier of the deployed revision. Example (git) - # : "0035781c50ec7aa23385dc841529ce8a4b70db1b" + # The canonical and persistent identifier of the deployed revision. + # Example (git): "0035781c50ec7aa23385dc841529ce8a4b70db1b" # Corresponds to the JSON property `revisionId` # @return [String] attr_accessor :revision_id @@ -1141,6 +406,751 @@ module Google @revision_id = args[:revision_id] if args.key?(:revision_id) end end + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The `type` field identifies a + # MonitoredResourceDescriptor object that describes the resource's + # schema. Information in the `labels` field identifies the actual resource and + # its attributes according to the schema. For example, a particular Compute + # Engine VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for `"gce_instance"` has labels + # `"instance_id"` and `"zone"`: + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + class MonitoredResource + include Google::Apis::Core::Hashable + + # Required. Values for all of the labels listed in the associated monitored + # resource descriptor. For example, Cloud SQL databases use the labels + # `"database_id"` and `"zone"`. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Required. The monitored resource type. This field must match + # the `type` field of a MonitoredResourceDescriptor object. For + # example, the type of a Cloud SQL database is `"cloudsql_database"`. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @type = args[:type] if args.key?(:type) + end + end + + # The parameters to WriteLogEntries. + class WriteLogEntriesRequest + include Google::Apis::Core::Hashable + + # Optional. Default labels that are added to the `labels` field of all log + # entries in `entries`. If a log entry already has a label with the same key + # as a label in this parameter, then the log entry's label is not changed. + # See LogEntry. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # Required. The log entries to write. Values supplied for the fields + # `log_name`, `resource`, and `labels` in this `entries.write` request are + # added to those log entries that do not provide their own values for the + # fields. + # To improve throughput and to avoid exceeding the + # [quota limit](/logging/quota-policy) for calls to `entries.write`, + # you should write multiple log entries at once rather than + # calling this method for each individual log entry. + # Corresponds to the JSON property `entries` + # @return [Array] + attr_accessor :entries + + # Optional. A default log resource name that is assigned to all log entries + # in `entries` that do not specify a value for `log_name`. Example: + # `"projects/my-project/logs/syslog"`. See + # LogEntry. + # Corresponds to the JSON property `logName` + # @return [String] + attr_accessor :log_name + + # Optional. Whether valid entries should be written even if some other + # entries fail due to INVALID_ARGUMENT or PERMISSION_DENIED errors. If any + # entry is not written, the response status will be the error associated + # with one of the failed entries and include error details in the form of + # WriteLogEntriesPartialErrors. + # Corresponds to the JSON property `partialSuccess` + # @return [Boolean] + attr_accessor :partial_success + alias_method :partial_success?, :partial_success + + # An object representing a resource that can be used for monitoring, logging, + # billing, or other purposes. Examples include virtual machine instances, + # databases, and storage devices such as disks. The `type` field identifies a + # MonitoredResourceDescriptor object that describes the resource's + # schema. Information in the `labels` field identifies the actual resource and + # its attributes according to the schema. For example, a particular Compute + # Engine VM instance could be represented by the following object, because the + # MonitoredResourceDescriptor for `"gce_instance"` has labels + # `"instance_id"` and `"zone"`: + # ` "type": "gce_instance", + # "labels": ` "instance_id": "12345678901234", + # "zone": "us-central1-a" `` + # Corresponds to the JSON property `resource` + # @return [Google::Apis::LoggingV2beta1::MonitoredResource] + attr_accessor :resource + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @entries = args[:entries] if args.key?(:entries) + @log_name = args[:log_name] if args.key?(:log_name) + @partial_success = args[:partial_success] if args.key?(:partial_success) + @resource = args[:resource] if args.key?(:resource) + end + end + + # A description of a label. + class LabelDescriptor + include Google::Apis::Core::Hashable + + # A human-readable description for the label. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # The type of data that can be assigned to the label. + # Corresponds to the JSON property `valueType` + # @return [String] + attr_accessor :value_type + + # The label key. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @description = args[:description] if args.key?(:description) + @value_type = args[:value_type] if args.key?(:value_type) + @key = args[:key] if args.key?(:key) + end + end + + # Result returned from ListLogMetrics. + class ListLogMetricsResponse + include Google::Apis::Core::Hashable + + # A list of logs-based metrics. + # Corresponds to the JSON property `metrics` + # @return [Array] + attr_accessor :metrics + + # If there might be more results than appear in this response, then + # `nextPageToken` is included. To get the next set of results, call this + # method again using the value of `nextPageToken` as `pageToken`. + # 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) + @metrics = args[:metrics] if args.key?(:metrics) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # An object that describes the schema of a MonitoredResource object using a + # type name and a set of labels. For example, the monitored resource + # descriptor for Google Compute Engine VM instances has a type of + # `"gce_instance"` and specifies the use of the labels `"instance_id"` and + # `"zone"` to identify particular VM instances. + # Different APIs can support different monitored resource types. APIs generally + # provide a `list` method that returns the monitored resource descriptors used + # by the API. + class MonitoredResourceDescriptor + include Google::Apis::Core::Hashable + + # Optional. A concise name for the monitored resource type that might be + # displayed in user interfaces. It should be a Title Cased Noun Phrase, + # without any article or other determiners. For example, + # `"Google Cloud SQL Database"`. + # Corresponds to the JSON property `displayName` + # @return [String] + attr_accessor :display_name + + # Optional. A detailed description of the monitored resource type that might + # be used in documentation. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # Required. A set of labels used to describe instances of this monitored + # resource type. For example, an individual Google Cloud SQL database is + # identified by values for the labels `"database_id"` and `"zone"`. + # Corresponds to the JSON property `labels` + # @return [Array] + attr_accessor :labels + + # Required. The monitored resource type. For example, the type + # `"cloudsql_database"` represents databases in Google Cloud SQL. + # The maximum length of this value is 256 characters. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Optional. The resource name of the monitored resource descriptor: + # `"projects/`project_id`/monitoredResourceDescriptors/`type`"` where + # `type` is the value of the `type` field in this object and + # `project_id` is a project ID that provides API-specific context for + # accessing the type. APIs that do not use project information can use the + # resource name format `"monitoredResourceDescriptors/`type`"`. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @display_name = args[:display_name] if args.key?(:display_name) + @description = args[:description] if args.key?(:description) + @labels = args[:labels] if args.key?(:labels) + @type = args[:type] if args.key?(:type) + @name = args[:name] if args.key?(:name) + end + end + + # Result returned from ListMonitoredResourceDescriptors. + class ListMonitoredResourceDescriptorsResponse + include Google::Apis::Core::Hashable + + # If there might be more results than appear in this response, then + # `nextPageToken` is included. To get the next set of results, call this + # method again using the value of `nextPageToken` as `pageToken`. + # Corresponds to the JSON property `nextPageToken` + # @return [String] + attr_accessor :next_page_token + + # A list of resource descriptors. + # Corresponds to the JSON property `resourceDescriptors` + # @return [Array] + attr_accessor :resource_descriptors + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + @resource_descriptors = args[:resource_descriptors] if args.key?(:resource_descriptors) + end + end + + # Additional information about a potentially long-running operation with which + # a log entry is associated. + class LogEntryOperation + include Google::Apis::Core::Hashable + + # Optional. An arbitrary producer identifier. The combination of + # `id` and `producer` must be globally unique. Examples for `producer`: + # `"MyDivision.MyBigCompany.com"`, `"github.com/MyProject/MyApplication"`. + # Corresponds to the JSON property `producer` + # @return [String] + attr_accessor :producer + + # Optional. Set this to True if this is the last log entry in the operation. + # Corresponds to the JSON property `last` + # @return [Boolean] + attr_accessor :last + alias_method :last?, :last + + # Optional. Set this to True if this is the first log entry in the operation. + # Corresponds to the JSON property `first` + # @return [Boolean] + attr_accessor :first + alias_method :first?, :first + + # Optional. An arbitrary operation identifier. Log entries with the + # same identifier are assumed to be part of the same operation. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @producer = args[:producer] if args.key?(:producer) + @last = args[:last] if args.key?(:last) + @first = args[:first] if args.key?(:first) + @id = args[:id] if args.key?(:id) + end + end + + # A generic empty message that you can re-use to avoid defining duplicated + # empty messages in your APIs. A typical example is to use it as the request + # or the response type of an API method. For instance: + # service Foo ` + # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); + # ` + # The JSON representation for `Empty` is empty JSON object ````. + class Empty + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # A common proto for logging HTTP requests. Only contains semantics + # defined by the HTTP specification. Product-specific logging + # information MUST be defined in a separate message. + class HttpRequest + include Google::Apis::Core::Hashable + + # Whether or not a cache lookup was attempted. + # Corresponds to the JSON property `cacheLookup` + # @return [Boolean] + attr_accessor :cache_lookup + alias_method :cache_lookup?, :cache_lookup + + # The size of the HTTP response message sent back to the client, in bytes, + # including the response headers and the response body. + # Corresponds to the JSON property `responseSize` + # @return [String] + attr_accessor :response_size + + # The response code indicating the status of response. + # Examples: 200, 404. + # Corresponds to the JSON property `status` + # @return [Fixnum] + attr_accessor :status + + # Whether or not the response was validated with the origin server before + # being served from cache. This field is only meaningful if `cache_hit` is + # True. + # Corresponds to the JSON property `cacheValidatedWithOriginServer` + # @return [Boolean] + attr_accessor :cache_validated_with_origin_server + alias_method :cache_validated_with_origin_server?, :cache_validated_with_origin_server + + # The referer URL of the request, as defined in + # [HTTP/1.1 Header Field Definitions](http://www.w3.org/Protocols/rfc2616/ + # rfc2616-sec14.html). + # Corresponds to the JSON property `referer` + # @return [String] + attr_accessor :referer + + # Whether or not an entity was served from cache + # (with or without validation). + # Corresponds to the JSON property `cacheHit` + # @return [Boolean] + attr_accessor :cache_hit + alias_method :cache_hit?, :cache_hit + + # The scheme (http, https), the host name, the path and the query + # portion of the URL that was requested. + # Example: `"http://example.com/some/info?color=red"`. + # Corresponds to the JSON property `requestUrl` + # @return [String] + attr_accessor :request_url + + # The request processing latency on the server, from the time the request was + # received until the response was sent. + # Corresponds to the JSON property `latency` + # @return [String] + attr_accessor :latency + + # The number of HTTP response bytes inserted into cache. Set only when a + # cache fill was attempted. + # Corresponds to the JSON property `cacheFillBytes` + # @return [String] + attr_accessor :cache_fill_bytes + + # The request method. Examples: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`. + # Corresponds to the JSON property `requestMethod` + # @return [String] + attr_accessor :request_method + + # The IP address (IPv4 or IPv6) of the client that issued the HTTP + # request. Examples: `"192.168.1.1"`, `"FE80::0202:B3FF:FE1E:8329"`. + # Corresponds to the JSON property `remoteIp` + # @return [String] + attr_accessor :remote_ip + + # The IP address (IPv4 or IPv6) of the origin server that the request was + # sent to. + # Corresponds to the JSON property `serverIp` + # @return [String] + attr_accessor :server_ip + + # The user agent sent by the client. Example: + # `"Mozilla/4.0 (compatible; MSIE 6.0; Windows 98; Q312461; .NET CLR 1.0.3705)"`. + # Corresponds to the JSON property `userAgent` + # @return [String] + attr_accessor :user_agent + + # The size of the HTTP request message in bytes, including the request + # headers and the request body. + # Corresponds to the JSON property `requestSize` + # @return [String] + attr_accessor :request_size + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @cache_lookup = args[:cache_lookup] if args.key?(:cache_lookup) + @response_size = args[:response_size] if args.key?(:response_size) + @status = args[:status] if args.key?(:status) + @cache_validated_with_origin_server = args[:cache_validated_with_origin_server] if args.key?(:cache_validated_with_origin_server) + @referer = args[:referer] if args.key?(:referer) + @cache_hit = args[:cache_hit] if args.key?(:cache_hit) + @request_url = args[:request_url] if args.key?(:request_url) + @latency = args[:latency] if args.key?(:latency) + @cache_fill_bytes = args[:cache_fill_bytes] if args.key?(:cache_fill_bytes) + @request_method = args[:request_method] if args.key?(:request_method) + @remote_ip = args[:remote_ip] if args.key?(:remote_ip) + @server_ip = args[:server_ip] if args.key?(:server_ip) + @user_agent = args[:user_agent] if args.key?(:user_agent) + @request_size = args[:request_size] if args.key?(:request_size) + end + end + + # Complete log information about a single HTTP request to an App Engine + # application. + class RequestLog + include Google::Apis::Core::Hashable + + # Size in bytes sent back to client by request. + # Corresponds to the JSON property `responseSize` + # @return [String] + attr_accessor :response_size + + # Globally unique identifier for a request, which is based on the request + # start time. Request IDs for requests which started later will compare + # greater as strings than those for requests which started earlier. + # Corresponds to the JSON property `requestId` + # @return [String] + attr_accessor :request_id + + # Whether this is the first RequestLog entry for this request. If an active + # request has several RequestLog entries written to Cloud Logging, this field + # will be set for one of them. + # Corresponds to the JSON property `first` + # @return [Boolean] + attr_accessor :first + alias_method :first?, :first + + # Request method. Example: `"GET"`, `"HEAD"`, `"PUT"`, `"POST"`, `"DELETE"`. + # Corresponds to the JSON property `method` + # @return [String] + attr_accessor :method_prop + + # Version of the application that handled this request. + # Corresponds to the JSON property `versionId` + # @return [String] + attr_accessor :version_id + + # HTTP response status code. Example: 200, 404. + # Corresponds to the JSON property `status` + # @return [Fixnum] + attr_accessor :status + + # Whether this was a loading request for the instance. + # Corresponds to the JSON property `wasLoadingRequest` + # @return [Boolean] + attr_accessor :was_loading_request + alias_method :was_loading_request?, :was_loading_request + + # Origin IP address. + # Corresponds to the JSON property `ip` + # @return [String] + attr_accessor :ip + + # The logged-in user who made the request. + # Most likely, this is the part of the user's email before the `@` sign. The + # field value is the same for different requests from the same user, but + # different users can have similar names. This information is also + # available to the application via the App Engine Users API. + # This field will be populated starting with App Engine 1.9.21. + # Corresponds to the JSON property `nickname` + # @return [String] + attr_accessor :nickname + + # Queue name of the request, in the case of an offline request. + # Corresponds to the JSON property `taskQueueName` + # @return [String] + attr_accessor :task_queue_name + + # Time this request spent in the pending request queue. + # Corresponds to the JSON property `pendingTime` + # @return [String] + attr_accessor :pending_time + + # If the instance processing this request belongs to a manually scaled + # module, then this is the 0-based index of the instance. Otherwise, this + # value is -1. + # Corresponds to the JSON property `instanceIndex` + # @return [Fixnum] + attr_accessor :instance_index + + # Source code for the application that handled this request. There can be + # more than one source reference per deployed application if source code is + # distributed among multiple repositories. + # Corresponds to the JSON property `sourceReference` + # @return [Array] + attr_accessor :source_reference + + # Module of the application that handled this request. + # Corresponds to the JSON property `moduleId` + # @return [String] + attr_accessor :module_id + + # Internet host and port number of the resource being requested. + # Corresponds to the JSON property `host` + # @return [String] + attr_accessor :host + + # Latency of the request. + # Corresponds to the JSON property `latency` + # @return [String] + attr_accessor :latency + + # File or class that handled the request. + # Corresponds to the JSON property `urlMapEntry` + # @return [String] + attr_accessor :url_map_entry + + # Time when the request finished. + # Corresponds to the JSON property `endTime` + # @return [String] + attr_accessor :end_time + + # A list of log lines emitted by the application while serving this request. + # Corresponds to the JSON property `line` + # @return [Array] + attr_accessor :line + + # Number of CPU megacycles used to process request. + # Corresponds to the JSON property `megaCycles` + # @return [String] + attr_accessor :mega_cycles + + # Application that handled this request. + # Corresponds to the JSON property `appId` + # @return [String] + attr_accessor :app_id + + # Cloud Trace identifier for this request. + # Corresponds to the JSON property `traceId` + # @return [String] + attr_accessor :trace_id + + # Task name of the request, in the case of an offline request. + # Corresponds to the JSON property `taskName` + # @return [String] + attr_accessor :task_name + + # An indication of the relative cost of serving this request. + # Corresponds to the JSON property `cost` + # @return [Float] + attr_accessor :cost + + # An identifier for the instance that handled the request. + # Corresponds to the JSON property `instanceId` + # @return [String] + attr_accessor :instance_id + + # Time when the request started. + # Corresponds to the JSON property `startTime` + # @return [String] + attr_accessor :start_time + + # App Engine release version. + # Corresponds to the JSON property `appEngineRelease` + # @return [String] + attr_accessor :app_engine_release + + # Contains the path and query portion of the URL that was requested. For + # example, if the URL was "http://example.com/app?name=val", the resource + # would be "/app?name=val". The fragment identifier, which is identified by + # the `#` character, is not included. + # Corresponds to the JSON property `resource` + # @return [String] + attr_accessor :resource + + # HTTP version of request. Example: `"HTTP/1.1"`. + # Corresponds to the JSON property `httpVersion` + # @return [String] + attr_accessor :http_version + + # Referrer URL of request. + # Corresponds to the JSON property `referrer` + # @return [String] + attr_accessor :referrer + + # User agent that made the request. + # Corresponds to the JSON property `userAgent` + # @return [String] + attr_accessor :user_agent + + # Whether this request is finished or active. + # Corresponds to the JSON property `finished` + # @return [Boolean] + attr_accessor :finished + alias_method :finished?, :finished + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @response_size = args[:response_size] if args.key?(:response_size) + @request_id = args[:request_id] if args.key?(:request_id) + @first = args[:first] if args.key?(:first) + @method_prop = args[:method_prop] if args.key?(:method_prop) + @version_id = args[:version_id] if args.key?(:version_id) + @status = args[:status] if args.key?(:status) + @was_loading_request = args[:was_loading_request] if args.key?(:was_loading_request) + @ip = args[:ip] if args.key?(:ip) + @nickname = args[:nickname] if args.key?(:nickname) + @task_queue_name = args[:task_queue_name] if args.key?(:task_queue_name) + @pending_time = args[:pending_time] if args.key?(:pending_time) + @instance_index = args[:instance_index] if args.key?(:instance_index) + @source_reference = args[:source_reference] if args.key?(:source_reference) + @module_id = args[:module_id] if args.key?(:module_id) + @host = args[:host] if args.key?(:host) + @latency = args[:latency] if args.key?(:latency) + @url_map_entry = args[:url_map_entry] if args.key?(:url_map_entry) + @end_time = args[:end_time] if args.key?(:end_time) + @line = args[:line] if args.key?(:line) + @mega_cycles = args[:mega_cycles] if args.key?(:mega_cycles) + @app_id = args[:app_id] if args.key?(:app_id) + @trace_id = args[:trace_id] if args.key?(:trace_id) + @task_name = args[:task_name] if args.key?(:task_name) + @cost = args[:cost] if args.key?(:cost) + @instance_id = args[:instance_id] if args.key?(:instance_id) + @start_time = args[:start_time] if args.key?(:start_time) + @app_engine_release = args[:app_engine_release] if args.key?(:app_engine_release) + @resource = args[:resource] if args.key?(:resource) + @http_version = args[:http_version] if args.key?(:http_version) + @referrer = args[:referrer] if args.key?(:referrer) + @user_agent = args[:user_agent] if args.key?(:user_agent) + @finished = args[:finished] if args.key?(:finished) + end + end + + # Result returned from WriteLogEntries. + # empty + class WriteLogEntriesResponse + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # The parameters to `ListLogEntries`. + class ListLogEntriesRequest + include Google::Apis::Core::Hashable + + # Optional. A filter that chooses which log entries to return. See [Advanced + # Logs Filters](/logging/docs/view/advanced_filters). Only log entries that + # match the filter are returned. An empty filter matches all log entries. + # Corresponds to the JSON property `filter` + # @return [String] + attr_accessor :filter + + # Deprecated. One or more project identifiers or project numbers from which + # to retrieve log entries. Examples: `"my-project-1A"`, `"1234567890"`. If + # present, these project identifiers are converted to resource format and + # added to the list of resources in `resourceNames`. Callers should use + # `resourceNames` rather than this parameter. + # Corresponds to the JSON property `projectIds` + # @return [Array] + attr_accessor :project_ids + + # Optional. One or more cloud resources from which to retrieve log entries. + # Example: `"projects/my-project-1A"`, `"projects/1234567890"`. Projects + # listed in `projectIds` are added to this list. + # Corresponds to the JSON property `resourceNames` + # @return [Array] + attr_accessor :resource_names + + # Optional. The maximum number of results to return from this request. + # Non-positive values are ignored. The presence of `nextPageToken` in the + # response indicates that more results might be available. + # Corresponds to the JSON property `pageSize` + # @return [Fixnum] + attr_accessor :page_size + + # Optional. How the results should be sorted. Presently, the only permitted + # values are `"timestamp asc"` (default) and `"timestamp desc"`. The first + # option returns entries in order of increasing values of + # `LogEntry.timestamp` (oldest first), and the second option returns entries + # in order of decreasing timestamps (newest first). Entries with equal + # timestamps are returned in order of `LogEntry.insertId`. + # Corresponds to the JSON property `orderBy` + # @return [String] + attr_accessor :order_by + + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. `pageToken` must be the value of + # `nextPageToken` from the previous response. The values of other method + # parameters should be identical to those in the previous call. + # Corresponds to the JSON property `pageToken` + # @return [String] + attr_accessor :page_token + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @filter = args[:filter] if args.key?(:filter) + @project_ids = args[:project_ids] if args.key?(:project_ids) + @resource_names = args[:resource_names] if args.key?(:resource_names) + @page_size = args[:page_size] if args.key?(:page_size) + @order_by = args[:order_by] if args.key?(:order_by) + @page_token = args[:page_token] if args.key?(:page_token) + end + end end end end diff --git a/generated/google/apis/logging_v2beta1/representations.rb b/generated/google/apis/logging_v2beta1/representations.rb index 12f9e0c73..1fa59aa57 100644 --- a/generated/google/apis/logging_v2beta1/representations.rb +++ b/generated/google/apis/logging_v2beta1/representations.rb @@ -22,223 +22,124 @@ module Google module Apis module LoggingV2beta1 - class Empty - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class WriteLogEntriesRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class MonitoredResource - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogEntry - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class HttpRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogEntryOperation - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class WriteLogEntriesResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class ListLogEntriesRequest - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class ListLogEntriesResponse 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 ListMonitoredResourceDescriptorsResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class MonitoredResourceDescriptor - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LabelDescriptor - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class ListSinksResponse class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class LogSink - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class ListLogMetricsResponse - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogMetric - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class RequestLog - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - - class LogLine - class Representation < Google::Apis::Core::JsonRepresentation; end - - include Google::Apis::Core::JsonObjectSupport - end - class SourceLocation class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end + class LogSink + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogMetric + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogEntry + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LogLine + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + class SourceReference class Representation < Google::Apis::Core::JsonRepresentation; end include Google::Apis::Core::JsonObjectSupport end - class Empty - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end + class MonitoredResource + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class WriteLogEntriesRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :log_name, as: 'logName' - property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation + class Representation < Google::Apis::Core::JsonRepresentation; end - hash :labels, as: 'labels' - collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation - - property :partial_success, as: 'partialSuccess' - end + include Google::Apis::Core::JsonObjectSupport end - class MonitoredResource - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :type, as: 'type' - hash :labels, as: 'labels' - end + class LabelDescriptor + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end - class LogEntry - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :log_name, as: 'logName' - property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation + class ListLogMetricsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end - hash :proto_payload, as: 'protoPayload' - property :text_payload, as: 'textPayload' - hash :json_payload, as: 'jsonPayload' - property :timestamp, as: 'timestamp' - property :severity, as: 'severity' - property :insert_id, as: 'insertId' - property :http_request, as: 'httpRequest', class: Google::Apis::LoggingV2beta1::HttpRequest, decorator: Google::Apis::LoggingV2beta1::HttpRequest::Representation - - hash :labels, as: 'labels' - property :operation, as: 'operation', class: Google::Apis::LoggingV2beta1::LogEntryOperation, decorator: Google::Apis::LoggingV2beta1::LogEntryOperation::Representation - - end + include Google::Apis::Core::JsonObjectSupport end - class HttpRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :request_method, as: 'requestMethod' - property :request_url, as: 'requestUrl' - property :request_size, as: 'requestSize' - property :status, as: 'status' - property :response_size, as: 'responseSize' - property :user_agent, as: 'userAgent' - property :remote_ip, as: 'remoteIp' - property :referer, as: 'referer' - property :cache_lookup, as: 'cacheLookup' - property :cache_hit, as: 'cacheHit' - property :cache_validated_with_origin_server, as: 'cacheValidatedWithOriginServer' - property :cache_fill_bytes, as: 'cacheFillBytes' - end + class MonitoredResourceDescriptor + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListMonitoredResourceDescriptorsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class LogEntryOperation - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :id, as: 'id' - property :producer, as: 'producer' - property :first, as: 'first' - property :last, as: 'last' - end + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Empty + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class HttpRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class RequestLog + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class WriteLogEntriesResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - end + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class ListLogEntriesRequest - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :project_ids, as: 'projectIds' - property :filter, as: 'filter' - property :order_by, as: 'orderBy' - property :page_size, as: 'pageSize' - property :page_token, as: 'pageToken' - property :partial_success, as: 'partialSuccess' - end + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport end class ListLogEntriesResponse @@ -247,37 +148,104 @@ module Google collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation property :next_page_token, as: 'nextPageToken' - hash :project_id_errors, as: 'projectIdErrors', class: Google::Apis::LoggingV2beta1::Status, decorator: Google::Apis::LoggingV2beta1::Status::Representation - end end - class Status + class ListSinksResponse # @private class Representation < Google::Apis::Core::JsonRepresentation - property :code, as: 'code' - property :message, as: 'message' - collection :details, as: 'details' - end - end - - class ListMonitoredResourceDescriptorsResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :resource_descriptors, as: 'resourceDescriptors', class: Google::Apis::LoggingV2beta1::MonitoredResourceDescriptor, decorator: Google::Apis::LoggingV2beta1::MonitoredResourceDescriptor::Representation - property :next_page_token, as: 'nextPageToken' + collection :sinks, as: 'sinks', class: Google::Apis::LoggingV2beta1::LogSink, decorator: Google::Apis::LoggingV2beta1::LogSink::Representation + end end - class MonitoredResourceDescriptor + class SourceLocation # @private class Representation < Google::Apis::Core::JsonRepresentation + property :file, as: 'file' + property :function_name, as: 'functionName' + property :line, as: 'line' + end + end + + class LogSink + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :writer_identity, as: 'writerIdentity' + property :filter, as: 'filter' + property :destination, as: 'destination' + property :output_version_format, as: 'outputVersionFormat' property :name, as: 'name' - property :type, as: 'type' - property :display_name, as: 'displayName' + end + end + + class LogMetric + # @private + class Representation < Google::Apis::Core::JsonRepresentation property :description, as: 'description' - collection :labels, as: 'labels', class: Google::Apis::LoggingV2beta1::LabelDescriptor, decorator: Google::Apis::LoggingV2beta1::LabelDescriptor::Representation + property :filter, as: 'filter' + property :name, as: 'name' + property :version, as: 'version' + end + end + + class LogEntry + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :text_payload, as: 'textPayload' + property :http_request, as: 'httpRequest', class: Google::Apis::LoggingV2beta1::HttpRequest, decorator: Google::Apis::LoggingV2beta1::HttpRequest::Representation + + hash :json_payload, as: 'jsonPayload' + hash :labels, as: 'labels' + property :log_name, as: 'logName' + property :severity, as: 'severity' + property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation + + hash :proto_payload, as: 'protoPayload' + property :timestamp, as: 'timestamp' + property :insert_id, as: 'insertId' + property :operation, as: 'operation', class: Google::Apis::LoggingV2beta1::LogEntryOperation, decorator: Google::Apis::LoggingV2beta1::LogEntryOperation::Representation + + end + end + + class LogLine + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :time, as: 'time' + property :severity, as: 'severity' + property :source_location, as: 'sourceLocation', class: Google::Apis::LoggingV2beta1::SourceLocation, decorator: Google::Apis::LoggingV2beta1::SourceLocation::Representation + + property :log_message, as: 'logMessage' + end + end + + class SourceReference + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :repository, as: 'repository' + property :revision_id, as: 'revisionId' + end + end + + class MonitoredResource + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :type, as: 'type' + end + end + + class WriteLogEntriesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + collection :entries, as: 'entries', class: Google::Apis::LoggingV2beta1::LogEntry, decorator: Google::Apis::LoggingV2beta1::LogEntry::Representation + + property :log_name, as: 'logName' + property :partial_success, as: 'partialSuccess' + property :resource, as: 'resource', class: Google::Apis::LoggingV2beta1::MonitoredResource, decorator: Google::Apis::LoggingV2beta1::MonitoredResource::Representation end end @@ -285,28 +253,9 @@ module Google class LabelDescriptor # @private class Representation < Google::Apis::Core::JsonRepresentation - property :key, as: 'key' - property :value_type, as: 'valueType' property :description, as: 'description' - end - end - - class ListSinksResponse - # @private - class Representation < Google::Apis::Core::JsonRepresentation - collection :sinks, as: 'sinks', class: Google::Apis::LoggingV2beta1::LogSink, decorator: Google::Apis::LoggingV2beta1::LogSink::Representation - - property :next_page_token, as: 'nextPageToken' - end - end - - class LogSink - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :name, as: 'name' - property :destination, as: 'destination' - property :filter, as: 'filter' - property :output_version_format, as: 'outputVersionFormat' + property :value_type, as: 'valueType' + property :key, as: 'key' end end @@ -319,80 +268,118 @@ module Google end end - class LogMetric + class MonitoredResourceDescriptor # @private class Representation < Google::Apis::Core::JsonRepresentation - property :name, as: 'name' + property :display_name, as: 'displayName' property :description, as: 'description' - property :filter, as: 'filter' + collection :labels, as: 'labels', class: Google::Apis::LoggingV2beta1::LabelDescriptor, decorator: Google::Apis::LoggingV2beta1::LabelDescriptor::Representation + + property :type, as: 'type' + property :name, as: 'name' + end + end + + class ListMonitoredResourceDescriptorsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :next_page_token, as: 'nextPageToken' + collection :resource_descriptors, as: 'resourceDescriptors', class: Google::Apis::LoggingV2beta1::MonitoredResourceDescriptor, decorator: Google::Apis::LoggingV2beta1::MonitoredResourceDescriptor::Representation + + end + end + + class LogEntryOperation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :producer, as: 'producer' + property :last, as: 'last' + property :first, as: 'first' + property :id, as: 'id' + end + end + + class Empty + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class HttpRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :cache_lookup, as: 'cacheLookup' + property :response_size, as: 'responseSize' + property :status, as: 'status' + property :cache_validated_with_origin_server, as: 'cacheValidatedWithOriginServer' + property :referer, as: 'referer' + property :cache_hit, as: 'cacheHit' + property :request_url, as: 'requestUrl' + property :latency, as: 'latency' + property :cache_fill_bytes, as: 'cacheFillBytes' + property :request_method, as: 'requestMethod' + property :remote_ip, as: 'remoteIp' + property :server_ip, as: 'serverIp' + property :user_agent, as: 'userAgent' + property :request_size, as: 'requestSize' end end class RequestLog # @private class Representation < Google::Apis::Core::JsonRepresentation - property :app_id, as: 'appId' - property :module_id, as: 'moduleId' - property :version_id, as: 'versionId' - property :request_id, as: 'requestId' - property :ip, as: 'ip' - property :start_time, as: 'startTime' - property :end_time, as: 'endTime' - property :latency, as: 'latency' - property :mega_cycles, as: 'megaCycles' - property :method_prop, as: 'method' - property :resource, as: 'resource' - property :http_version, as: 'httpVersion' - property :status, as: 'status' property :response_size, as: 'responseSize' - property :referrer, as: 'referrer' - property :user_agent, as: 'userAgent' - property :nickname, as: 'nickname' - property :url_map_entry, as: 'urlMapEntry' - property :host, as: 'host' - property :cost, as: 'cost' - property :task_queue_name, as: 'taskQueueName' - property :task_name, as: 'taskName' + property :request_id, as: 'requestId' + property :first, as: 'first' + property :method_prop, as: 'method' + property :version_id, as: 'versionId' + property :status, as: 'status' property :was_loading_request, as: 'wasLoadingRequest' + property :ip, as: 'ip' + property :nickname, as: 'nickname' + property :task_queue_name, as: 'taskQueueName' property :pending_time, as: 'pendingTime' property :instance_index, as: 'instanceIndex' - property :finished, as: 'finished' - property :first, as: 'first' - property :instance_id, as: 'instanceId' - collection :line, as: 'line', class: Google::Apis::LoggingV2beta1::LogLine, decorator: Google::Apis::LoggingV2beta1::LogLine::Representation - - property :app_engine_release, as: 'appEngineRelease' - property :trace_id, as: 'traceId' collection :source_reference, as: 'sourceReference', class: Google::Apis::LoggingV2beta1::SourceReference, decorator: Google::Apis::LoggingV2beta1::SourceReference::Representation + property :module_id, as: 'moduleId' + property :host, as: 'host' + property :latency, as: 'latency' + property :url_map_entry, as: 'urlMapEntry' + property :end_time, as: 'endTime' + collection :line, as: 'line', class: Google::Apis::LoggingV2beta1::LogLine, decorator: Google::Apis::LoggingV2beta1::LogLine::Representation + + property :mega_cycles, as: 'megaCycles' + property :app_id, as: 'appId' + property :trace_id, as: 'traceId' + property :task_name, as: 'taskName' + property :cost, as: 'cost' + property :instance_id, as: 'instanceId' + property :start_time, as: 'startTime' + property :app_engine_release, as: 'appEngineRelease' + property :resource, as: 'resource' + property :http_version, as: 'httpVersion' + property :referrer, as: 'referrer' + property :user_agent, as: 'userAgent' + property :finished, as: 'finished' end end - class LogLine + class WriteLogEntriesResponse # @private class Representation < Google::Apis::Core::JsonRepresentation - property :time, as: 'time' - property :severity, as: 'severity' - property :log_message, as: 'logMessage' - property :source_location, as: 'sourceLocation', class: Google::Apis::LoggingV2beta1::SourceLocation, decorator: Google::Apis::LoggingV2beta1::SourceLocation::Representation - end end - class SourceLocation + class ListLogEntriesRequest # @private class Representation < Google::Apis::Core::JsonRepresentation - property :file, as: 'file' - property :line, as: 'line' - property :function_name, as: 'functionName' - end - end - - class SourceReference - # @private - class Representation < Google::Apis::Core::JsonRepresentation - property :repository, as: 'repository' - property :revision_id, as: 'revisionId' + property :filter, as: 'filter' + collection :project_ids, as: 'projectIds' + collection :resource_names, as: 'resourceNames' + property :page_size, as: 'pageSize' + property :order_by, as: 'orderBy' + property :page_token, as: 'pageToken' end end end diff --git a/generated/google/apis/logging_v2beta1/service.rb b/generated/google/apis/logging_v2beta1/service.rb index 5457e31bc..5b3c0b5fc 100644 --- a/generated/google/apis/logging_v2beta1/service.rb +++ b/generated/google/apis/logging_v2beta1/service.rb @@ -20,9 +20,9 @@ require 'google/apis/errors' module Google module Apis module LoggingV2beta1 - # Google Cloud Logging API + # Stackdriver Logging API # - # Writes log entries and manages your logs, log sinks, and logs-based metrics. + # Writes log entries and manages your Stackdriver Logging configuration. # # @example # require 'google/apis/logging_v2beta1' @@ -46,232 +46,127 @@ module Google super('https://logging.googleapis.com/', '') end - # Deletes a log and all its log entries. The log will reappear if it receives - # new entries. - # @param [String] log_name - # Required. The resource name of the log to delete. Example: `"projects/my- - # project/logs/syslog"`. - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # Creates or updates a logs-based metric. + # @param [String] metric_name + # The resource name of the metric to update. + # Example: `"projects/my-project-id/metrics/my-metric-id"`. + # The updated metric must be provided in the request and have the + # same identifier that is specified in `metricName`. + # If the metric does not exist, it is created. + # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_object # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [Google::Apis::LoggingV2beta1::Empty] + # @return [Google::Apis::LoggingV2beta1::LogMetric] # # @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_log(log_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:delete, 'v2beta1/{+logName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation - command.response_class = Google::Apis::LoggingV2beta1::Empty - command.params['logName'] = log_name unless log_name.nil? - command.query['fields'] = fields unless fields.nil? + def update_project_metric(metric_name, log_metric_object = nil, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:put, 'v2beta1/{+metricName}', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.request_object = log_metric_object + command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogMetric + command.params['metricName'] = metric_name unless metric_name.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? execute_or_queue_command(command, &block) end - # Lists sinks. - # @param [String] project_name - # Required. The resource name of the project containing the sinks. Example: `" - # projects/my-logging-project"`. - # @param [String] page_token - # Optional. If the `pageToken` parameter is supplied, then the next page of - # results is retrieved. The `pageToken` parameter must be set to the value of - # the `nextPageToken` from the previous response. The value of `projectName` - # must be the same as in the previous request. - # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. You must - # check for presence of `nextPageToken` to determine if additional results are - # available, which you can retrieve by passing the `nextPageToken` value as the ` - # pageToken` parameter in the next request. - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # Gets a logs-based metric. + # @param [String] metric_name + # The resource name of the desired metric. + # Example: `"projects/my-project-id/metrics/my-metric-id"`. # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::ListSinksResponse] parsed result object + # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [Google::Apis::LoggingV2beta1::ListSinksResponse] + # @return [Google::Apis::LoggingV2beta1::LogMetric] # # @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_project_sinks(project_name, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+projectName}/sinks', options) - command.response_representation = Google::Apis::LoggingV2beta1::ListSinksResponse::Representation - command.response_class = Google::Apis::LoggingV2beta1::ListSinksResponse - command.params['projectName'] = project_name unless project_name.nil? - command.query['pageToken'] = page_token unless page_token.nil? - command.query['pageSize'] = page_size unless page_size.nil? - command.query['fields'] = fields unless fields.nil? + def get_project_metric(metric_name, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+metricName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogMetric + command.params['metricName'] = metric_name unless metric_name.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? execute_or_queue_command(command, &block) end - # Gets a sink. - # @param [String] sink_name - # The resource name of the sink to return. Example: `"projects/my-project-id/ - # sinks/my-sink-id"`. - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # Creates a logs-based metric. + # @param [String] parent + # The resource name of the project in which to create the metric. + # Example: `"projects/my-project-id"`. + # The new metric must be provided in the request. + # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_object # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # # @yield [result, err] Result & error if block supplied - # @yieldparam result [Google::Apis::LoggingV2beta1::LogSink] parsed result object + # @yieldparam result [Google::Apis::LoggingV2beta1::LogMetric] parsed result object # @yieldparam err [StandardError] error object if request failed # - # @return [Google::Apis::LoggingV2beta1::LogSink] + # @return [Google::Apis::LoggingV2beta1::LogMetric] # # @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_project_sink(sink_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+sinkName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogSink - command.params['sinkName'] = sink_name unless sink_name.nil? - command.query['fields'] = fields unless fields.nil? + def create_project_metric(parent, log_metric_object = nil, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+parent}/metrics', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.request_object = log_metric_object + command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogMetric + command.params['parent'] = parent unless parent.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Creates a sink. - # @param [String] project_name - # The resource name of the project in which to create the sink. Example: `" - # projects/my-project-id"`. The new sink must be provided in the request. - # @param [Google::Apis::LoggingV2beta1::LogSink] log_sink_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::LoggingV2beta1::LogSink] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogSink] - # - # @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_project_sink(project_name, log_sink_object = nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:post, 'v2beta1/{+projectName}/sinks', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.request_object = log_sink_object - command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogSink - command.params['projectName'] = project_name unless project_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 - - # Creates or updates a sink. - # @param [String] sink_name - # The resource name of the sink to update. Example: `"projects/my-project-id/ - # sinks/my-sink-id"`. The updated sink must be provided in the request and have - # the same name that is specified in `sinkName`. If the sink does not exist, it - # is created. - # @param [Google::Apis::LoggingV2beta1::LogSink] log_sink_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::LoggingV2beta1::LogSink] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogSink] - # - # @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 update_project_sink(sink_name, log_sink_object = nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:put, 'v2beta1/{+sinkName}', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.request_object = log_sink_object - command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogSink - command.params['sinkName'] = sink_name unless sink_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 - - # Deletes a sink. - # @param [String] sink_name - # The resource name of the sink to delete. Example: `"projects/my-project-id/ - # sinks/my-sink-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::LoggingV2beta1::Empty] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::Empty] - # - # @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_project_sink(sink_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:delete, 'v2beta1/{+sinkName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation - command.response_class = Google::Apis::LoggingV2beta1::Empty - command.params['sinkName'] = sink_name unless sink_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 # Lists logs-based metrics. - # @param [String] project_name - # Required. The resource name of the project containing the metrics. Example: `" - # projects/my-project-id"`. - # @param [String] page_token - # Optional. If the `pageToken` parameter is supplied, then the next page of - # results is retrieved. The `pageToken` parameter must be set to the value of - # the `nextPageToken` from the previous response. The value of `projectName` - # must be the same as in the previous request. + # @param [String] parent + # Required. The resource name containing the metrics. + # Example: `"projects/my-project-id"`. # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. You must - # check for presence of `nextPageToken` to determine if additional results are - # available, which you can retrieve by passing the `nextPageToken` value as the ` - # pageToken` parameter in the next request. - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # Optional. The maximum number of results to return from this request. + # Non-positive values are ignored. The presence of `nextPageToken` in the + # response indicates that more results might be available. + # @param [String] page_token + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. `pageToken` must be the value of + # `nextPageToken` from the previous response. The values of other method + # parameters should be identical to those in the previous call. # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -284,128 +179,27 @@ module Google # @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_project_metrics(project_name, page_token: nil, page_size: nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+projectName}/metrics', options) + def list_project_metrics(parent, page_size: nil, page_token: nil, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+parent}/metrics', options) command.response_representation = Google::Apis::LoggingV2beta1::ListLogMetricsResponse::Representation command.response_class = Google::Apis::LoggingV2beta1::ListLogMetricsResponse - command.params['projectName'] = project_name unless project_name.nil? - command.query['pageToken'] = page_token unless page_token.nil? + command.params['parent'] = parent unless parent.nil? command.query['pageSize'] = page_size unless page_size.nil? - command.query['fields'] = fields unless fields.nil? + command.query['pageToken'] = page_token unless page_token.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? - execute_or_queue_command(command, &block) - end - - # Gets a logs-based metric. - # @param [String] metric_name - # The resource name of the desired metric. Example: `"projects/my-project-id/ - # metrics/my-metric-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::LoggingV2beta1::LogMetric] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogMetric] - # - # @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_project_metric(metric_name, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:get, 'v2beta1/{+metricName}', options) - command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogMetric - command.params['metricName'] = metric_name unless metric_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 - - # Creates a logs-based metric. - # @param [String] project_name - # The resource name of the project in which to create the metric. Example: `" - # projects/my-project-id"`. The new metric must be provided in the request. - # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_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::LoggingV2beta1::LogMetric] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogMetric] - # - # @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_project_metric(project_name, log_metric_object = nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:post, 'v2beta1/{+projectName}/metrics', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.request_object = log_metric_object - command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogMetric - command.params['projectName'] = project_name unless project_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 - - # Creates or updates a logs-based metric. - # @param [String] metric_name - # The resource name of the metric to update. Example: `"projects/my-project-id/ - # metrics/my-metric-id"`. The updated metric must be provided in the request and - # have the same identifier that is specified in `metricName`. If the metric does - # not exist, it is created. - # @param [Google::Apis::LoggingV2beta1::LogMetric] log_metric_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::LoggingV2beta1::LogMetric] parsed result object - # @yieldparam err [StandardError] error object if request failed - # - # @return [Google::Apis::LoggingV2beta1::LogMetric] - # - # @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 update_project_metric(metric_name, log_metric_object = nil, fields: nil, quota_user: nil, options: nil, &block) - command = make_simple_command(:put, 'v2beta1/{+metricName}', options) - command.request_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.request_object = log_metric_object - command.response_representation = Google::Apis::LoggingV2beta1::LogMetric::Representation - command.response_class = Google::Apis::LoggingV2beta1::LogMetric - command.params['metricName'] = metric_name unless metric_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 # Deletes a logs-based metric. # @param [String] metric_name - # The resource name of the metric to delete. Example: `"projects/my-project-id/ - # metrics/my-metric-id"`. - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # The resource name of the metric to delete. + # Example: `"projects/my-project-id/metrics/my-metric-id"`. # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -418,24 +212,264 @@ module Google # @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_project_metric(metric_name, fields: nil, quota_user: nil, options: nil, &block) + def delete_project_metric(metric_name, quota_user: nil, fields: nil, options: nil, &block) command = make_simple_command(:delete, 'v2beta1/{+metricName}', options) command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation command.response_class = Google::Apis::LoggingV2beta1::Empty command.params['metricName'] = metric_name unless metric_name.nil? - command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? execute_or_queue_command(command, &block) end - # Writes log entries to Cloud Logging. All log entries in Cloud Logging are - # written by this method. - # @param [Google::Apis::LoggingV2beta1::WriteLogEntriesRequest] write_log_entries_request_object - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # Deletes a log and all its log entries. + # The log will reappear if it receives new entries. + # @param [String] log_name + # Required. The resource name of the log to delete. Example: + # `"projects/my-project/logs/syslog"`. # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @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_log(log_name, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+logName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['logName'] = log_name unless log_name.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Updates or creates a sink. + # @param [String] sink_name + # Required. The resource name of the sink to update, including the parent + # resource and the sink identifier. If the sink does not exist, this method + # creates the sink. Example: `"projects/my-project-id/sinks/my-sink-id"`. + # @param [Google::Apis::LoggingV2beta1::LogSink] log_sink_object + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogSink] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogSink] + # + # @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 update_project_sink(sink_name, log_sink_object = nil, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:put, 'v2beta1/{+sinkName}', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.request_object = log_sink_object + command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogSink + command.params['sinkName'] = sink_name unless sink_name.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Gets a sink. + # @param [String] sink_name + # Required. The resource name of the sink to return. + # Example: `"projects/my-project-id/sinks/my-sink-id"`. + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogSink] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogSink] + # + # @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_project_sink(sink_name, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+sinkName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogSink + command.params['sinkName'] = sink_name unless sink_name.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Creates a sink. + # @param [String] parent + # Required. The resource in which to create the sink. + # Example: `"projects/my-project-id"`. + # The new sink must be provided in the request. + # @param [Google::Apis::LoggingV2beta1::LogSink] log_sink_object + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::LogSink] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::LogSink] + # + # @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_project_sink(parent, log_sink_object = nil, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:post, 'v2beta1/{+parent}/sinks', options) + command.request_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.request_object = log_sink_object + command.response_representation = Google::Apis::LoggingV2beta1::LogSink::Representation + command.response_class = Google::Apis::LoggingV2beta1::LogSink + command.params['parent'] = parent unless parent.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Lists sinks. + # @param [String] parent + # Required. The cloud resource containing the sinks. + # Example: `"projects/my-logging-project"`. + # @param [Fixnum] page_size + # Optional. The maximum number of results to return from this request. + # Non-positive values are ignored. The presence of `nextPageToken` in the + # response indicates that more results might be available. + # @param [String] page_token + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. `pageToken` must be the value of + # `nextPageToken` from the previous response. The values of other method + # parameters should be identical to those in the previous call. + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::ListSinksResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::ListSinksResponse] + # + # @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_project_sinks(parent, page_size: nil, page_token: nil, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:get, 'v2beta1/{+parent}/sinks', options) + command.response_representation = Google::Apis::LoggingV2beta1::ListSinksResponse::Representation + command.response_class = Google::Apis::LoggingV2beta1::ListSinksResponse + command.params['parent'] = parent unless parent.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a sink. + # @param [String] sink_name + # Required. The resource name of the sink to delete, including the parent + # resource and the sink identifier. Example: + # `"projects/my-project-id/sinks/my-sink-id"`. It is an error if the sink + # does not exist. + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @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_project_sink(sink_name, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+sinkName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['sinkName'] = sink_name unless sink_name.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a log and all its log entries. + # The log will reappear if it receives new entries. + # @param [String] log_name + # Required. The resource name of the log to delete. Example: + # `"projects/my-project/logs/syslog"`. + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @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_organization_log(log_name, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+logName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['logName'] = log_name unless log_name.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Writes log entries to Stackdriver Logging. All log entries are + # written by this method. + # @param [Google::Apis::LoggingV2beta1::WriteLogEntriesRequest] write_log_entries_request_object + # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -448,25 +482,26 @@ module Google # @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 write_entry_log_entries(write_log_entries_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + def write_entry_log_entries(write_log_entries_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) command = make_simple_command(:post, 'v2beta1/entries:write', options) command.request_representation = Google::Apis::LoggingV2beta1::WriteLogEntriesRequest::Representation command.request_object = write_log_entries_request_object command.response_representation = Google::Apis::LoggingV2beta1::WriteLogEntriesResponse::Representation command.response_class = Google::Apis::LoggingV2beta1::WriteLogEntriesResponse - command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? execute_or_queue_command(command, &block) end - # Lists log entries. Use this method to retrieve log entries from Cloud Logging. - # For ways to export log entries, see [Exporting Logs](/logging/docs/export). + # Lists log entries. Use this method to retrieve log entries from Cloud + # Logging. For ways to export log entries, see + # [Exporting Logs](/logging/docs/export). # @param [Google::Apis::LoggingV2beta1::ListLogEntriesRequest] list_log_entries_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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -479,32 +514,32 @@ module Google # @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_entry_log_entries(list_log_entries_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + def list_entry_log_entries(list_log_entries_request_object = nil, quota_user: nil, fields: nil, options: nil, &block) command = make_simple_command(:post, 'v2beta1/entries:list', options) command.request_representation = Google::Apis::LoggingV2beta1::ListLogEntriesRequest::Representation command.request_object = list_log_entries_request_object command.response_representation = Google::Apis::LoggingV2beta1::ListLogEntriesResponse::Representation command.response_class = Google::Apis::LoggingV2beta1::ListLogEntriesResponse - command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? execute_or_queue_command(command, &block) end - # Lists monitored resource descriptors that are used by Cloud Logging. + # Lists the monitored resource descriptors used by Stackdriver Logging. # @param [Fixnum] page_size - # Optional. The maximum number of results to return from this request. You must - # check for presence of `nextPageToken` to determine if additional results are - # available, which you can retrieve by passing the `nextPageToken` value as the ` - # pageToken` parameter in the next request. + # Optional. The maximum number of results to return from this request. + # Non-positive values are ignored. The presence of `nextPageToken` in the + # response indicates that more results might be available. # @param [String] page_token - # Optional. If the `pageToken` parameter is supplied, then the next page of - # results is retrieved. The `pageToken` parameter must be set to the value of - # the `nextPageToken` from the previous response. - # @param [String] fields - # Selector specifying which fields to include in a partial response. + # Optional. If present, then retrieve the next batch of results from the + # preceding call to this method. `pageToken` must be the value of + # `nextPageToken` from the previous response. The values of other method + # parameters should be identical to those in the previous call. # @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 [String] fields + # Selector specifying which fields to include in a partial response. # @param [Google::Apis::RequestOptions] options # Request-specific options # @@ -517,14 +552,46 @@ module Google # @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_monitored_resource_descriptors(page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + def list_monitored_resource_descriptors(page_size: nil, page_token: nil, quota_user: nil, fields: nil, options: nil, &block) command = make_simple_command(:get, 'v2beta1/monitoredResourceDescriptors', options) command.response_representation = Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse::Representation command.response_class = Google::Apis::LoggingV2beta1::ListMonitoredResourceDescriptorsResponse command.query['pageSize'] = page_size unless page_size.nil? command.query['pageToken'] = page_token unless page_token.nil? - command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? + execute_or_queue_command(command, &block) + end + + # Deletes a log and all its log entries. + # The log will reappear if it receives new entries. + # @param [String] log_name + # Required. The resource name of the log to delete. Example: + # `"projects/my-project/logs/syslog"`. + # @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 [String] fields + # Selector specifying which fields to include in a partial response. + # @param [Google::Apis::RequestOptions] options + # Request-specific options + # + # @yield [result, err] Result & error if block supplied + # @yieldparam result [Google::Apis::LoggingV2beta1::Empty] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::LoggingV2beta1::Empty] + # + # @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_billing_account_log(log_name, quota_user: nil, fields: nil, options: nil, &block) + command = make_simple_command(:delete, 'v2beta1/{+logName}', options) + command.response_representation = Google::Apis::LoggingV2beta1::Empty::Representation + command.response_class = Google::Apis::LoggingV2beta1::Empty + command.params['logName'] = log_name unless log_name.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + command.query['fields'] = fields unless fields.nil? execute_or_queue_command(command, &block) end diff --git a/generated/google/apis/monitoring_v3.rb b/generated/google/apis/monitoring_v3.rb index f6597d0f2..32c8008bc 100644 --- a/generated/google/apis/monitoring_v3.rb +++ b/generated/google/apis/monitoring_v3.rb @@ -27,7 +27,7 @@ module Google # @see https://cloud.google.com/monitoring/api/ module MonitoringV3 VERSION = 'V3' - REVISION = '20160912' + REVISION = '20160927' # 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/monitoring_v3/classes.rb b/generated/google/apis/monitoring_v3/classes.rb index 5819681f8..99c56fcca 100644 --- a/generated/google/apis/monitoring_v3/classes.rb +++ b/generated/google/apis/monitoring_v3/classes.rb @@ -269,7 +269,8 @@ module Google # A collection of data points that describes the time-varying values of a metric. # A time series is identified by a combination of a fully-specified monitored - # resource and a fully-specified metric. + # resource and a fully-specified metric. This type is used for both listing and + # creating time series. class TimeSeries include Google::Apis::Core::Hashable @@ -279,17 +280,21 @@ module Google # @return [Google::Apis::MonitoringV3::Metric] attr_accessor :metric - # The data points of this time series. The order of the points is specified when - # you retrieve the time series. + # The data points of this time series. When listing time series, the order of + # the points is specified by the list method.When creating a time series, this + # field must contain exactly one point and the point's type must be the same as + # the value type of the associated metric. If the associated metric's descriptor + # must be auto-created, then the value type of the descriptor is determined by + # the point's type, which must be BOOL, INT64, DOUBLE, or DISTRIBUTION. # Corresponds to the JSON property `points` # @return [Array] attr_accessor :points - # The value type of the time series. This can be different than the value type - # of the metric object if this time series is an alignment or reduction of other - # time series. When writing data to a time series, this field is optional, and, - # when specified, must match the value type of the metric descriptor. If a - # metric descriptor is auto-created, its value type will match this field. + # The value type of the time series. When listing time series, this value type + # might be different from the value type of the associated metric if this time + # series is an alignment or reduction of other time series.When creating a time + # series, this field is optional. If present, it must be the same as the type of + # the data in the points field. # Corresponds to the JSON property `valueType` # @return [String] attr_accessor :value_type @@ -310,11 +315,13 @@ module Google # @return [Google::Apis::MonitoringV3::MonitoredResource] attr_accessor :resource - # The metric kind of the time series. This can be different than the metric kind - # of the metric object if this time series is an alignment or reduction of other - # time series. When writing data to a time series, this field is optional, and, - # when specified, must match the metric kind of the metric descriptor. If a - # metric descriptor is auto-created, its metric kind will match this field. + # The metric kind of the time series. When listing time series, this metric kind + # might be different from the metric kind of the associated metric if this time + # series is an alignment or reduction of other time series.When creating a time + # series, this field is optional. If present, it must be the same as the metric + # kind of the associated metric. If the associated metric's descriptor must be + # auto-created, then this field specifies the metric kind of the new descriptor + # and must be either GAUGE (the default) or CUMULATIVE. # Corresponds to the JSON property `metricKind` # @return [String] attr_accessor :metric_kind diff --git a/generated/google/apis/monitoring_v3/service.rb b/generated/google/apis/monitoring_v3/service.rb index 660e40088..b3bf1716b 100644 --- a/generated/google/apis/monitoring_v3/service.rb +++ b/generated/google/apis/monitoring_v3/service.rb @@ -49,7 +49,7 @@ module Google end # Stackdriver Monitoring Agent only: Creates a new time series. # @param [String] name # The project in which to create the time series. The format is "projects/ diff --git a/generated/google/apis/oauth2_v2.rb b/generated/google/apis/oauth2_v2.rb index ed434ccd0..050ced11d 100644 --- a/generated/google/apis/oauth2_v2.rb +++ b/generated/google/apis/oauth2_v2.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/accounts/docs/OAuth2 module Oauth2V2 VERSION = 'V2' - REVISION = '20160912' + REVISION = '20160915' # Know the list of people in your circles, your age range, and language AUTH_PLUS_LOGIN = 'https://www.googleapis.com/auth/plus.login' diff --git a/generated/google/apis/plus_domains_v1.rb b/generated/google/apis/plus_domains_v1.rb index aa816f131..d0326dab5 100644 --- a/generated/google/apis/plus_domains_v1.rb +++ b/generated/google/apis/plus_domains_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/+/domains/ module PlusDomainsV1 VERSION = 'V1' - REVISION = '20160917' + REVISION = '20161001' # View your circles and the people and pages in them AUTH_PLUS_CIRCLES_READ = 'https://www.googleapis.com/auth/plus.circles.read' diff --git a/generated/google/apis/plus_v1.rb b/generated/google/apis/plus_v1.rb index 9c734cfd2..6f0b2c530 100644 --- a/generated/google/apis/plus_v1.rb +++ b/generated/google/apis/plus_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/+/api/ module PlusV1 VERSION = 'V1' - REVISION = '20160917' + REVISION = '20161001' # Know the list of people in your circles, your age range, and language AUTH_PLUS_LOGIN = 'https://www.googleapis.com/auth/plus.login' diff --git a/generated/google/apis/replicapoolupdater_v1beta1.rb b/generated/google/apis/replicapoolupdater_v1beta1.rb index fa18d2f63..c7c471641 100644 --- a/generated/google/apis/replicapoolupdater_v1beta1.rb +++ b/generated/google/apis/replicapoolupdater_v1beta1.rb @@ -20,12 +20,14 @@ module Google module Apis # Google Compute Engine Instance Group Updater API # - # Updates groups of Compute Engine instances. + # [Deprecated. Please use compute.instanceGroupManagers.update method. + # replicapoolupdater API will be disabled after December 30th, 2016] Updates + # groups of Compute Engine instances. # # @see https://cloud.google.com/compute/docs/instance-groups/manager/#applying_rolling_updates_using_the_updater_service module ReplicapoolupdaterV1beta1 VERSION = 'V1beta1' - REVISION = '20160229' + REVISION = '20161003' # 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/replicapoolupdater_v1beta1/service.rb b/generated/google/apis/replicapoolupdater_v1beta1/service.rb index 367ee5ea2..005b44861 100644 --- a/generated/google/apis/replicapoolupdater_v1beta1/service.rb +++ b/generated/google/apis/replicapoolupdater_v1beta1/service.rb @@ -22,7 +22,9 @@ module Google module ReplicapoolupdaterV1beta1 # Google Compute Engine Instance Group Updater API # - # Updates groups of Compute Engine instances. + # [Deprecated. Please use compute.instanceGroupManagers.update method. + # replicapoolupdater API will be disabled after December 30th, 2016] Updates + # groups of Compute Engine instances. # # @example # require 'google/apis/replicapoolupdater_v1beta1' diff --git a/generated/google/apis/sheets_v4.rb b/generated/google/apis/sheets_v4.rb index 99d65e95b..44624c628 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 = '20160916' + REVISION = '20160929' # View the files in your Google Drive AUTH_DRIVE_READONLY = 'https://www.googleapis.com/auth/drive.readonly' diff --git a/generated/google/apis/speech_v1beta1.rb b/generated/google/apis/speech_v1beta1.rb index 6b5462577..ca2e484ad 100644 --- a/generated/google/apis/speech_v1beta1.rb +++ b/generated/google/apis/speech_v1beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/speech/ module SpeechV1beta1 VERSION = 'V1beta1' - REVISION = '20160912' + REVISION = '20160924' # View and manage your data across Google Cloud Platform services AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' diff --git a/generated/google/apis/speech_v1beta1/classes.rb b/generated/google/apis/speech_v1beta1/classes.rb index 6d336882c..592b32b67 100644 --- a/generated/google/apis/speech_v1beta1/classes.rb +++ b/generated/google/apis/speech_v1beta1/classes.rb @@ -322,14 +322,6 @@ module Google # @return [Fixnum] attr_accessor :sample_rate - # [Optional] The number of interleaved channels in the input audio data. - # Valid values for LINEAR16 and FLAC are `1`-`8`. - # Valid values for MULAW, AMR and AMR_WB are only `1`. - # If `0` or omitted, defaults to one channel (mono). - # Corresponds to the JSON property `audioChannels` - # @return [Fixnum] - attr_accessor :audio_channels - def initialize(**args) update!(**args) end @@ -342,7 +334,6 @@ module Google @encoding = args[:encoding] if args.key?(:encoding) @profanity_filter = args[:profanity_filter] if args.key?(:profanity_filter) @sample_rate = args[:sample_rate] if args.key?(:sample_rate) - @audio_channels = args[:audio_channels] if args.key?(:audio_channels) end end diff --git a/generated/google/apis/speech_v1beta1/representations.rb b/generated/google/apis/speech_v1beta1/representations.rb index 09fa1bce6..4f6b966b8 100644 --- a/generated/google/apis/speech_v1beta1/representations.rb +++ b/generated/google/apis/speech_v1beta1/representations.rb @@ -153,7 +153,6 @@ module Google property :encoding, as: 'encoding' property :profanity_filter, as: 'profanityFilter' property :sample_rate, as: 'sampleRate' - property :audio_channels, as: 'audioChannels' end end diff --git a/generated/google/apis/storage_v1.rb b/generated/google/apis/storage_v1.rb index b5ed6d10e..2d5846dde 100644 --- a/generated/google/apis/storage_v1.rb +++ b/generated/google/apis/storage_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/storage/docs/json_api/ module StorageV1 VERSION = 'V1' - REVISION = '20160908' + REVISION = '20160923' # 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/storage_v1/classes.rb b/generated/google/apis/storage_v1/classes.rb index c6b3bb251..f4f20b6df 100644 --- a/generated/google/apis/storage_v1/classes.rb +++ b/generated/google/apis/storage_v1/classes.rb @@ -1026,7 +1026,7 @@ module Google # @return [String] attr_accessor :etag - # The content generation of the object. + # The content generation of the object, if applied to an object. # Corresponds to the JSON property `generation` # @return [String] attr_accessor :generation @@ -1042,7 +1042,7 @@ module Google # @return [String] attr_accessor :kind - # The name of the object. + # The name of the object, if applied to an object. # Corresponds to the JSON property `object` # @return [String] attr_accessor :object @@ -1115,7 +1115,7 @@ module Google # The list of items. # Corresponds to the JSON property `items` - # @return [Array] + # @return [Array] attr_accessor :items # The kind of item this is. For lists of object access control entries, this is diff --git a/generated/google/apis/storage_v1/representations.rb b/generated/google/apis/storage_v1/representations.rb index fb1be0951..a1727e26f 100644 --- a/generated/google/apis/storage_v1/representations.rb +++ b/generated/google/apis/storage_v1/representations.rb @@ -464,7 +464,8 @@ module Google class ObjectAccessControls # @private class Representation < Google::Apis::Core::JsonRepresentation - collection :items, as: 'items' + collection :items, as: 'items', class: Google::Apis::StorageV1::ObjectAccessControl, decorator: Google::Apis::StorageV1::ObjectAccessControl::Representation + property :kind, as: 'kind' end end diff --git a/generated/google/apis/youtube_partner_v1.rb b/generated/google/apis/youtube_partner_v1.rb index a4cfecfc7..8cf807140 100644 --- a/generated/google/apis/youtube_partner_v1.rb +++ b/generated/google/apis/youtube_partner_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/youtube/partner/ module YoutubePartnerV1 VERSION = 'V1' - REVISION = '20160913' + REVISION = '20160927' # View and manage your assets and associated content on YouTube AUTH_YOUTUBEPARTNER = 'https://www.googleapis.com/auth/youtubepartner' From 8e1162e2d7d2a89960459f50a5ac7c29fd69ca12 Mon Sep 17 00:00:00 2001 From: Thomas Coffee Date: Mon, 3 Oct 2016 17:30:46 -0700 Subject: [PATCH 2/4] Add Cloud Dataflow API --- api_names_out.yaml | 603 +++ generated/google/apis/dataflow_v1b3.rb | 38 + .../google/apis/dataflow_v1b3/classes.rb | 4009 +++++++++++++++++ .../apis/dataflow_v1b3/representations.rb | 1718 +++++++ .../google/apis/dataflow_v1b3/service.rb | 515 +++ script/generate | 3 +- 6 files changed, 6885 insertions(+), 1 deletion(-) create mode 100644 generated/google/apis/dataflow_v1b3.rb create mode 100644 generated/google/apis/dataflow_v1b3/classes.rb create mode 100644 generated/google/apis/dataflow_v1b3/representations.rb create mode 100644 generated/google/apis/dataflow_v1b3/service.rb diff --git a/api_names_out.yaml b/api_names_out.yaml index 623e487fb..9020dc9b1 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -22957,6 +22957,609 @@ "/container:v1/ListNodePoolsResponse/nodePools/node_pool": node_pool "/container:v1/CreateNodePoolRequest": create_node_pool_request "/container:v1/CreateNodePoolRequest/nodePool": node_pool +"/dataflow:v1b3/fields": fields +"/dataflow:v1b3/key": key +"/dataflow:v1b3/quotaUser": quota_user +"/dataflow:v1b3/dataflow.projects.workerMessages": worker_project_messages +"/dataflow:v1b3/dataflow.projects.workerMessages/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.create": create_project_job +"/dataflow:v1b3/dataflow.projects.jobs.create/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.create/view": view +"/dataflow:v1b3/dataflow.projects.jobs.create/replaceJobId": replace_job_id +"/dataflow:v1b3/dataflow.projects.jobs.get": get_project_job +"/dataflow:v1b3/dataflow.projects.jobs.get/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.get/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.get/view": view +"/dataflow:v1b3/dataflow.projects.jobs.update": update_project_job +"/dataflow:v1b3/dataflow.projects.jobs.update/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.update/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.list": list_project_jobs +"/dataflow:v1b3/dataflow.projects.jobs.list/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.list/filter": filter +"/dataflow:v1b3/dataflow.projects.jobs.list/view": view +"/dataflow:v1b3/dataflow.projects.jobs.list/pageSize": page_size +"/dataflow:v1b3/dataflow.projects.jobs.list/pageToken": page_token +"/dataflow:v1b3/dataflow.projects.jobs.getMetrics": get_project_job_metrics +"/dataflow:v1b3/dataflow.projects.jobs.getMetrics/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.getMetrics/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.getMetrics/startTime": start_time +"/dataflow:v1b3/dataflow.projects.jobs.debug.getConfig": get_project_job_debug_config +"/dataflow:v1b3/dataflow.projects.jobs.debug.getConfig/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.debug.getConfig/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.debug.sendCapture": send_project_job_debug_capture +"/dataflow:v1b3/dataflow.projects.jobs.debug.sendCapture/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.debug.sendCapture/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.messages.list": list_project_job_messages +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/minimumImportance": minimum_importance +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/pageSize": page_size +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/pageToken": page_token +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/startTime": start_time +"/dataflow:v1b3/dataflow.projects.jobs.messages.list/endTime": end_time +"/dataflow:v1b3/dataflow.projects.jobs.workItems.reportStatus": report_project_job_work_item_status +"/dataflow:v1b3/dataflow.projects.jobs.workItems.reportStatus/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.workItems.reportStatus/jobId": job_id +"/dataflow:v1b3/dataflow.projects.jobs.workItems.lease": lease_work_item +"/dataflow:v1b3/dataflow.projects.jobs.workItems.lease/projectId": project_id +"/dataflow:v1b3/dataflow.projects.jobs.workItems.lease/jobId": job_id +"/dataflow:v1b3/dataflow.projects.templates.create": create_job_from_template +"/dataflow:v1b3/dataflow.projects.templates.create/projectId": project_id +"/dataflow:v1b3/GetDebugConfigRequest": get_debug_config_request +"/dataflow:v1b3/GetDebugConfigRequest/workerId": worker_id +"/dataflow:v1b3/GetDebugConfigRequest/componentId": component_id +"/dataflow:v1b3/GetDebugConfigResponse": get_debug_config_response +"/dataflow:v1b3/GetDebugConfigResponse/config": config +"/dataflow:v1b3/SendDebugCaptureRequest": send_debug_capture_request +"/dataflow:v1b3/SendDebugCaptureRequest/workerId": worker_id +"/dataflow:v1b3/SendDebugCaptureRequest/componentId": component_id +"/dataflow:v1b3/SendDebugCaptureRequest/data": data +"/dataflow:v1b3/SendDebugCaptureResponse": send_debug_capture_response +"/dataflow:v1b3/Job": job +"/dataflow:v1b3/Job/id": id +"/dataflow:v1b3/Job/projectId": project_id +"/dataflow:v1b3/Job/name": name +"/dataflow:v1b3/Job/type": type +"/dataflow:v1b3/Job/environment": environment +"/dataflow:v1b3/Job/steps": steps +"/dataflow:v1b3/Job/steps/step": step +"/dataflow:v1b3/Job/currentState": current_state +"/dataflow:v1b3/Job/currentStateTime": current_state_time +"/dataflow:v1b3/Job/requestedState": requested_state +"/dataflow:v1b3/Job/executionInfo": execution_info +"/dataflow:v1b3/Job/createTime": create_time +"/dataflow:v1b3/Job/replaceJobId": replace_job_id +"/dataflow:v1b3/Job/transformNameMapping": transform_name_mapping +"/dataflow:v1b3/Job/transformNameMapping/transform_name_mapping": transform_name_mapping +"/dataflow:v1b3/Job/clientRequestId": client_request_id +"/dataflow:v1b3/Job/replacedByJobId": replaced_by_job_id +"/dataflow:v1b3/Job/tempFiles": temp_files +"/dataflow:v1b3/Job/tempFiles/temp_file": temp_file +"/dataflow:v1b3/Job/labels": labels +"/dataflow:v1b3/Job/labels/label": label +"/dataflow:v1b3/Environment": environment +"/dataflow:v1b3/Environment/tempStoragePrefix": temp_storage_prefix +"/dataflow:v1b3/Environment/clusterManagerApiService": cluster_manager_api_service +"/dataflow:v1b3/Environment/experiments": experiments +"/dataflow:v1b3/Environment/experiments/experiment": experiment +"/dataflow:v1b3/Environment/workerPools": worker_pools +"/dataflow:v1b3/Environment/workerPools/worker_pool": worker_pool +"/dataflow:v1b3/Environment/userAgent": user_agent +"/dataflow:v1b3/Environment/userAgent/user_agent": user_agent +"/dataflow:v1b3/Environment/version": version +"/dataflow:v1b3/Environment/version/version": version +"/dataflow:v1b3/Environment/dataset": dataset +"/dataflow:v1b3/Environment/sdkPipelineOptions": sdk_pipeline_options +"/dataflow:v1b3/Environment/sdkPipelineOptions/sdk_pipeline_option": sdk_pipeline_option +"/dataflow:v1b3/Environment/internalExperiments": internal_experiments +"/dataflow:v1b3/Environment/internalExperiments/internal_experiment": internal_experiment +"/dataflow:v1b3/Environment/serviceAccountEmail": service_account_email +"/dataflow:v1b3/WorkerPool": worker_pool +"/dataflow:v1b3/WorkerPool/kind": kind +"/dataflow:v1b3/WorkerPool/numWorkers": num_workers +"/dataflow:v1b3/WorkerPool/packages": packages +"/dataflow:v1b3/WorkerPool/packages/package": package +"/dataflow:v1b3/WorkerPool/defaultPackageSet": default_package_set +"/dataflow:v1b3/WorkerPool/machineType": machine_type +"/dataflow:v1b3/WorkerPool/teardownPolicy": teardown_policy +"/dataflow:v1b3/WorkerPool/diskSizeGb": disk_size_gb +"/dataflow:v1b3/WorkerPool/diskType": disk_type +"/dataflow:v1b3/WorkerPool/diskSourceImage": disk_source_image +"/dataflow:v1b3/WorkerPool/zone": zone +"/dataflow:v1b3/WorkerPool/taskrunnerSettings": taskrunner_settings +"/dataflow:v1b3/WorkerPool/onHostMaintenance": on_host_maintenance +"/dataflow:v1b3/WorkerPool/dataDisks": data_disks +"/dataflow:v1b3/WorkerPool/dataDisks/data_disk": data_disk +"/dataflow:v1b3/WorkerPool/metadata": metadata +"/dataflow:v1b3/WorkerPool/metadata/metadatum": metadatum +"/dataflow:v1b3/WorkerPool/autoscalingSettings": autoscaling_settings +"/dataflow:v1b3/WorkerPool/poolArgs": pool_args +"/dataflow:v1b3/WorkerPool/poolArgs/pool_arg": pool_arg +"/dataflow:v1b3/WorkerPool/network": network +"/dataflow:v1b3/WorkerPool/subnetwork": subnetwork +"/dataflow:v1b3/WorkerPool/workerHarnessContainerImage": worker_harness_container_image +"/dataflow:v1b3/WorkerPool/numThreadsPerWorker": num_threads_per_worker +"/dataflow:v1b3/WorkerPool/ipConfiguration": ip_configuration +"/dataflow:v1b3/Package": package +"/dataflow:v1b3/Package/name": name +"/dataflow:v1b3/Package/location": location +"/dataflow:v1b3/TaskRunnerSettings": task_runner_settings +"/dataflow:v1b3/TaskRunnerSettings/taskUser": task_user +"/dataflow:v1b3/TaskRunnerSettings/taskGroup": task_group +"/dataflow:v1b3/TaskRunnerSettings/oauthScopes": oauth_scopes +"/dataflow:v1b3/TaskRunnerSettings/oauthScopes/oauth_scope": oauth_scope +"/dataflow:v1b3/TaskRunnerSettings/baseUrl": base_url +"/dataflow:v1b3/TaskRunnerSettings/dataflowApiVersion": dataflow_api_version +"/dataflow:v1b3/TaskRunnerSettings/parallelWorkerSettings": parallel_worker_settings +"/dataflow:v1b3/TaskRunnerSettings/baseTaskDir": base_task_dir +"/dataflow:v1b3/TaskRunnerSettings/continueOnException": continue_on_exception +"/dataflow:v1b3/TaskRunnerSettings/logToSerialconsole": log_to_serialconsole +"/dataflow:v1b3/TaskRunnerSettings/alsologtostderr": alsologtostderr +"/dataflow:v1b3/TaskRunnerSettings/logUploadLocation": log_upload_location +"/dataflow:v1b3/TaskRunnerSettings/logDir": log_dir +"/dataflow:v1b3/TaskRunnerSettings/tempStoragePrefix": temp_storage_prefix +"/dataflow:v1b3/TaskRunnerSettings/harnessCommand": harness_command +"/dataflow:v1b3/TaskRunnerSettings/workflowFileName": workflow_file_name +"/dataflow:v1b3/TaskRunnerSettings/commandlinesFileName": commandlines_file_name +"/dataflow:v1b3/TaskRunnerSettings/vmId": vm_id +"/dataflow:v1b3/TaskRunnerSettings/languageHint": language_hint +"/dataflow:v1b3/TaskRunnerSettings/streamingWorkerMainClass": streaming_worker_main_class +"/dataflow:v1b3/WorkerSettings": worker_settings +"/dataflow:v1b3/WorkerSettings/baseUrl": base_url +"/dataflow:v1b3/WorkerSettings/reportingEnabled": reporting_enabled +"/dataflow:v1b3/WorkerSettings/servicePath": service_path +"/dataflow:v1b3/WorkerSettings/shuffleServicePath": shuffle_service_path +"/dataflow:v1b3/WorkerSettings/workerId": worker_id +"/dataflow:v1b3/WorkerSettings/tempStoragePrefix": temp_storage_prefix +"/dataflow:v1b3/Disk": disk +"/dataflow:v1b3/Disk/sizeGb": size_gb +"/dataflow:v1b3/Disk/diskType": disk_type +"/dataflow:v1b3/Disk/mountPoint": mount_point +"/dataflow:v1b3/AutoscalingSettings": autoscaling_settings +"/dataflow:v1b3/AutoscalingSettings/algorithm": algorithm +"/dataflow:v1b3/AutoscalingSettings/maxNumWorkers": max_num_workers +"/dataflow:v1b3/Step": step +"/dataflow:v1b3/Step/kind": kind +"/dataflow:v1b3/Step/name": name +"/dataflow:v1b3/Step/properties": properties +"/dataflow:v1b3/Step/properties/property": property +"/dataflow:v1b3/JobExecutionInfo": job_execution_info +"/dataflow:v1b3/JobExecutionInfo/stages": stages +"/dataflow:v1b3/JobExecutionInfo/stages/stage": stage +"/dataflow:v1b3/JobExecutionStageInfo": job_execution_stage_info +"/dataflow:v1b3/JobExecutionStageInfo/stepName": step_name +"/dataflow:v1b3/JobExecutionStageInfo/stepName/step_name": step_name +"/dataflow:v1b3/ListJobsResponse": list_jobs_response +"/dataflow:v1b3/ListJobsResponse/jobs": jobs +"/dataflow:v1b3/ListJobsResponse/jobs/job": job +"/dataflow:v1b3/ListJobsResponse/nextPageToken": next_page_token +"/dataflow:v1b3/ListJobMessagesResponse": list_job_messages_response +"/dataflow:v1b3/ListJobMessagesResponse/jobMessages": job_messages +"/dataflow:v1b3/ListJobMessagesResponse/jobMessages/job_message": job_message +"/dataflow:v1b3/ListJobMessagesResponse/nextPageToken": next_page_token +"/dataflow:v1b3/JobMessage": job_message +"/dataflow:v1b3/JobMessage/id": id +"/dataflow:v1b3/JobMessage/time": time +"/dataflow:v1b3/JobMessage/messageText": message_text +"/dataflow:v1b3/JobMessage/messageImportance": message_importance +"/dataflow:v1b3/JobMetrics": job_metrics +"/dataflow:v1b3/JobMetrics/metricTime": metric_time +"/dataflow:v1b3/JobMetrics/metrics": metrics +"/dataflow:v1b3/JobMetrics/metrics/metric": metric +"/dataflow:v1b3/MetricUpdate": metric_update +"/dataflow:v1b3/MetricUpdate/name": name +"/dataflow:v1b3/MetricUpdate/kind": kind +"/dataflow:v1b3/MetricUpdate/cumulative": cumulative +"/dataflow:v1b3/MetricUpdate/scalar": scalar +"/dataflow:v1b3/MetricUpdate/meanSum": mean_sum +"/dataflow:v1b3/MetricUpdate/meanCount": mean_count +"/dataflow:v1b3/MetricUpdate/set": set +"/dataflow:v1b3/MetricUpdate/internal": internal +"/dataflow:v1b3/MetricUpdate/updateTime": update_time +"/dataflow:v1b3/MetricStructuredName": metric_structured_name +"/dataflow:v1b3/MetricStructuredName/origin": origin +"/dataflow:v1b3/MetricStructuredName/name": name +"/dataflow:v1b3/MetricStructuredName/context": context +"/dataflow:v1b3/MetricStructuredName/context/context": context +"/dataflow:v1b3/CreateJobFromTemplateRequest": create_job_from_template_request +"/dataflow:v1b3/CreateJobFromTemplateRequest/gcsPath": gcs_path +"/dataflow:v1b3/CreateJobFromTemplateRequest/parameters": parameters +"/dataflow:v1b3/CreateJobFromTemplateRequest/parameters/parameter": parameter +"/dataflow:v1b3/ReportWorkItemStatusRequest": report_work_item_status_request +"/dataflow:v1b3/ReportWorkItemStatusRequest/workerId": worker_id +"/dataflow:v1b3/ReportWorkItemStatusRequest/workItemStatuses": work_item_statuses +"/dataflow:v1b3/ReportWorkItemStatusRequest/workItemStatuses/work_item_status": work_item_status +"/dataflow:v1b3/ReportWorkItemStatusRequest/currentWorkerTime": current_worker_time +"/dataflow:v1b3/WorkItemStatus": work_item_status +"/dataflow:v1b3/WorkItemStatus/workItemId": work_item_id +"/dataflow:v1b3/WorkItemStatus/reportIndex": report_index +"/dataflow:v1b3/WorkItemStatus/requestedLeaseDuration": requested_lease_duration +"/dataflow:v1b3/WorkItemStatus/completed": completed +"/dataflow:v1b3/WorkItemStatus/errors": errors +"/dataflow:v1b3/WorkItemStatus/errors/error": error +"/dataflow:v1b3/WorkItemStatus/counterUpdates": counter_updates +"/dataflow:v1b3/WorkItemStatus/counterUpdates/counter_update": counter_update +"/dataflow:v1b3/WorkItemStatus/metricUpdates": metric_updates +"/dataflow:v1b3/WorkItemStatus/metricUpdates/metric_update": metric_update +"/dataflow:v1b3/WorkItemStatus/reportedProgress": reported_progress +"/dataflow:v1b3/WorkItemStatus/stopPosition": stop_position +"/dataflow:v1b3/WorkItemStatus/dynamicSourceSplit": dynamic_source_split +"/dataflow:v1b3/WorkItemStatus/sourceOperationResponse": source_operation_response +"/dataflow:v1b3/WorkItemStatus/sourceFork": source_fork +"/dataflow:v1b3/WorkItemStatus/progress": progress +"/dataflow:v1b3/Status": status +"/dataflow:v1b3/Status/code": code +"/dataflow:v1b3/Status/message": message +"/dataflow:v1b3/Status/details": details +"/dataflow:v1b3/Status/details/detail": detail +"/dataflow:v1b3/Status/details/detail/detail": detail +"/dataflow:v1b3/CounterUpdate": counter_update +"/dataflow:v1b3/CounterUpdate/nameAndKind": name_and_kind +"/dataflow:v1b3/CounterUpdate/shortId": short_id +"/dataflow:v1b3/CounterUpdate/structuredNameAndMetadata": structured_name_and_metadata +"/dataflow:v1b3/CounterUpdate/cumulative": cumulative +"/dataflow:v1b3/CounterUpdate/integer": integer +"/dataflow:v1b3/CounterUpdate/floatingPoint": floating_point +"/dataflow:v1b3/CounterUpdate/boolean": boolean +"/dataflow:v1b3/CounterUpdate/integerMean": integer_mean +"/dataflow:v1b3/CounterUpdate/floatingPointMean": floating_point_mean +"/dataflow:v1b3/CounterUpdate/integerList": integer_list +"/dataflow:v1b3/CounterUpdate/floatingPointList": floating_point_list +"/dataflow:v1b3/CounterUpdate/stringList": string_list +"/dataflow:v1b3/CounterUpdate/internal": internal +"/dataflow:v1b3/NameAndKind": name_and_kind +"/dataflow:v1b3/NameAndKind/name": name +"/dataflow:v1b3/NameAndKind/kind": kind +"/dataflow:v1b3/CounterStructuredNameAndMetadata": counter_structured_name_and_metadata +"/dataflow:v1b3/CounterStructuredNameAndMetadata/name": name +"/dataflow:v1b3/CounterStructuredNameAndMetadata/metadata": metadata +"/dataflow:v1b3/CounterStructuredName": counter_structured_name +"/dataflow:v1b3/CounterStructuredName/name": name +"/dataflow:v1b3/CounterStructuredName/standardOrigin": standard_origin +"/dataflow:v1b3/CounterStructuredName/otherOrigin": other_origin +"/dataflow:v1b3/CounterStructuredName/originalStepName": original_step_name +"/dataflow:v1b3/CounterStructuredName/componentStepName": component_step_name +"/dataflow:v1b3/CounterStructuredName/executionStepName": execution_step_name +"/dataflow:v1b3/CounterStructuredName/workerId": worker_id +"/dataflow:v1b3/CounterStructuredName/portion": portion +"/dataflow:v1b3/CounterMetadata": counter_metadata +"/dataflow:v1b3/CounterMetadata/kind": kind +"/dataflow:v1b3/CounterMetadata/description": description +"/dataflow:v1b3/CounterMetadata/standardUnits": standard_units +"/dataflow:v1b3/CounterMetadata/otherUnits": other_units +"/dataflow:v1b3/SplitInt64": split_int64 +"/dataflow:v1b3/SplitInt64/lowBits": low_bits +"/dataflow:v1b3/SplitInt64/highBits": high_bits +"/dataflow:v1b3/IntegerMean": integer_mean +"/dataflow:v1b3/IntegerMean/sum": sum +"/dataflow:v1b3/IntegerMean/count": count +"/dataflow:v1b3/FloatingPointMean": floating_point_mean +"/dataflow:v1b3/FloatingPointMean/sum": sum +"/dataflow:v1b3/FloatingPointMean/count": count +"/dataflow:v1b3/IntegerList": integer_list +"/dataflow:v1b3/IntegerList/elements": elements +"/dataflow:v1b3/IntegerList/elements/element": element +"/dataflow:v1b3/FloatingPointList": floating_point_list +"/dataflow:v1b3/FloatingPointList/elements": elements +"/dataflow:v1b3/FloatingPointList/elements/element": element +"/dataflow:v1b3/StringList": string_list +"/dataflow:v1b3/StringList/elements": elements +"/dataflow:v1b3/StringList/elements/element": element +"/dataflow:v1b3/ApproximateReportedProgress": approximate_reported_progress +"/dataflow:v1b3/ApproximateReportedProgress/position": position +"/dataflow:v1b3/ApproximateReportedProgress/fractionConsumed": fraction_consumed +"/dataflow:v1b3/ApproximateReportedProgress/remainingParallelism": remaining_parallelism +"/dataflow:v1b3/ApproximateReportedProgress/consumedParallelism": consumed_parallelism +"/dataflow:v1b3/Position": position +"/dataflow:v1b3/Position/end": end +"/dataflow:v1b3/Position/key": key +"/dataflow:v1b3/Position/byteOffset": byte_offset +"/dataflow:v1b3/Position/recordIndex": record_index +"/dataflow:v1b3/Position/shufflePosition": shuffle_position +"/dataflow:v1b3/Position/concatPosition": concat_position +"/dataflow:v1b3/ConcatPosition": concat_position +"/dataflow:v1b3/ConcatPosition/index": index +"/dataflow:v1b3/ConcatPosition/position": position +"/dataflow:v1b3/ReportedParallelism": reported_parallelism +"/dataflow:v1b3/ReportedParallelism/isInfinite": is_infinite +"/dataflow:v1b3/ReportedParallelism/value": value +"/dataflow:v1b3/DynamicSourceSplit": dynamic_source_split +"/dataflow:v1b3/DynamicSourceSplit/primary": primary +"/dataflow:v1b3/DynamicSourceSplit/residual": residual +"/dataflow:v1b3/DerivedSource": derived_source +"/dataflow:v1b3/DerivedSource/source": source +"/dataflow:v1b3/DerivedSource/derivationMode": derivation_mode +"/dataflow:v1b3/Source": source +"/dataflow:v1b3/Source/spec": spec +"/dataflow:v1b3/Source/spec/spec": spec +"/dataflow:v1b3/Source/codec": codec +"/dataflow:v1b3/Source/codec/codec": codec +"/dataflow:v1b3/Source/baseSpecs": base_specs +"/dataflow:v1b3/Source/baseSpecs/base_spec": base_spec +"/dataflow:v1b3/Source/baseSpecs/base_spec/base_spec": base_spec +"/dataflow:v1b3/Source/metadata": metadata +"/dataflow:v1b3/Source/doesNotNeedSplitting": does_not_need_splitting +"/dataflow:v1b3/SourceMetadata": source_metadata +"/dataflow:v1b3/SourceMetadata/producesSortedKeys": produces_sorted_keys +"/dataflow:v1b3/SourceMetadata/infinite": infinite +"/dataflow:v1b3/SourceMetadata/estimatedSizeBytes": estimated_size_bytes +"/dataflow:v1b3/SourceOperationResponse": source_operation_response +"/dataflow:v1b3/SourceOperationResponse/split": split +"/dataflow:v1b3/SourceOperationResponse/getMetadata": get_metadata +"/dataflow:v1b3/SourceSplitResponse": source_split_response +"/dataflow:v1b3/SourceSplitResponse/outcome": outcome +"/dataflow:v1b3/SourceSplitResponse/bundles": bundles +"/dataflow:v1b3/SourceSplitResponse/bundles/bundle": bundle +"/dataflow:v1b3/SourceSplitResponse/shards": shards +"/dataflow:v1b3/SourceSplitResponse/shards/shard": shard +"/dataflow:v1b3/SourceSplitShard": source_split_shard +"/dataflow:v1b3/SourceSplitShard/source": source +"/dataflow:v1b3/SourceSplitShard/derivationMode": derivation_mode +"/dataflow:v1b3/SourceGetMetadataResponse": source_get_metadata_response +"/dataflow:v1b3/SourceGetMetadataResponse/metadata": metadata +"/dataflow:v1b3/SourceFork": source_fork +"/dataflow:v1b3/SourceFork/primary": primary +"/dataflow:v1b3/SourceFork/residual": residual +"/dataflow:v1b3/SourceFork/primarySource": primary_source +"/dataflow:v1b3/SourceFork/residualSource": residual_source +"/dataflow:v1b3/ApproximateProgress": approximate_progress +"/dataflow:v1b3/ApproximateProgress/position": position +"/dataflow:v1b3/ApproximateProgress/percentComplete": percent_complete +"/dataflow:v1b3/ApproximateProgress/remainingTime": remaining_time +"/dataflow:v1b3/ReportWorkItemStatusResponse": report_work_item_status_response +"/dataflow:v1b3/ReportWorkItemStatusResponse/workItemServiceStates": work_item_service_states +"/dataflow:v1b3/ReportWorkItemStatusResponse/workItemServiceStates/work_item_service_state": work_item_service_state +"/dataflow:v1b3/WorkItemServiceState": work_item_service_state +"/dataflow:v1b3/WorkItemServiceState/splitRequest": split_request +"/dataflow:v1b3/WorkItemServiceState/leaseExpireTime": lease_expire_time +"/dataflow:v1b3/WorkItemServiceState/reportStatusInterval": report_status_interval +"/dataflow:v1b3/WorkItemServiceState/harnessData": harness_data +"/dataflow:v1b3/WorkItemServiceState/harnessData/harness_datum": harness_datum +"/dataflow:v1b3/WorkItemServiceState/nextReportIndex": next_report_index +"/dataflow:v1b3/WorkItemServiceState/metricShortId": metric_short_id +"/dataflow:v1b3/WorkItemServiceState/metricShortId/metric_short_id": metric_short_id +"/dataflow:v1b3/WorkItemServiceState/suggestedStopPosition": suggested_stop_position +"/dataflow:v1b3/WorkItemServiceState/suggestedStopPoint": suggested_stop_point +"/dataflow:v1b3/ApproximateSplitRequest": approximate_split_request +"/dataflow:v1b3/ApproximateSplitRequest/position": position +"/dataflow:v1b3/ApproximateSplitRequest/fractionConsumed": fraction_consumed +"/dataflow:v1b3/MetricShortId": metric_short_id +"/dataflow:v1b3/MetricShortId/metricIndex": metric_index +"/dataflow:v1b3/MetricShortId/shortId": short_id +"/dataflow:v1b3/LeaseWorkItemRequest": lease_work_item_request +"/dataflow:v1b3/LeaseWorkItemRequest/workItemTypes": work_item_types +"/dataflow:v1b3/LeaseWorkItemRequest/workItemTypes/work_item_type": work_item_type +"/dataflow:v1b3/LeaseWorkItemRequest/workerCapabilities": worker_capabilities +"/dataflow:v1b3/LeaseWorkItemRequest/workerCapabilities/worker_capability": worker_capability +"/dataflow:v1b3/LeaseWorkItemRequest/requestedLeaseDuration": requested_lease_duration +"/dataflow:v1b3/LeaseWorkItemRequest/currentWorkerTime": current_worker_time +"/dataflow:v1b3/LeaseWorkItemRequest/workerId": worker_id +"/dataflow:v1b3/LeaseWorkItemResponse": lease_work_item_response +"/dataflow:v1b3/LeaseWorkItemResponse/workItems": work_items +"/dataflow:v1b3/LeaseWorkItemResponse/workItems/work_item": work_item +"/dataflow:v1b3/WorkItem": work_item +"/dataflow:v1b3/WorkItem/id": id +"/dataflow:v1b3/WorkItem/projectId": project_id +"/dataflow:v1b3/WorkItem/jobId": job_id +"/dataflow:v1b3/WorkItem/packages": packages +"/dataflow:v1b3/WorkItem/packages/package": package +"/dataflow:v1b3/WorkItem/mapTask": map_task +"/dataflow:v1b3/WorkItem/seqMapTask": seq_map_task +"/dataflow:v1b3/WorkItem/shellTask": shell_task +"/dataflow:v1b3/WorkItem/streamingSetupTask": streaming_setup_task +"/dataflow:v1b3/WorkItem/sourceOperationTask": source_operation_task +"/dataflow:v1b3/WorkItem/streamingComputationTask": streaming_computation_task +"/dataflow:v1b3/WorkItem/streamingConfigTask": streaming_config_task +"/dataflow:v1b3/WorkItem/reportStatusInterval": report_status_interval +"/dataflow:v1b3/WorkItem/leaseExpireTime": lease_expire_time +"/dataflow:v1b3/WorkItem/configuration": configuration +"/dataflow:v1b3/WorkItem/initialReportIndex": initial_report_index +"/dataflow:v1b3/MapTask": map_task +"/dataflow:v1b3/MapTask/instructions": instructions +"/dataflow:v1b3/MapTask/instructions/instruction": instruction +"/dataflow:v1b3/MapTask/systemName": system_name +"/dataflow:v1b3/MapTask/stageName": stage_name +"/dataflow:v1b3/ParallelInstruction": parallel_instruction +"/dataflow:v1b3/ParallelInstruction/systemName": system_name +"/dataflow:v1b3/ParallelInstruction/name": name +"/dataflow:v1b3/ParallelInstruction/originalName": original_name +"/dataflow:v1b3/ParallelInstruction/read": read +"/dataflow:v1b3/ParallelInstruction/write": write +"/dataflow:v1b3/ParallelInstruction/parDo": par_do +"/dataflow:v1b3/ParallelInstruction/partialGroupByKey": partial_group_by_key +"/dataflow:v1b3/ParallelInstruction/flatten": flatten +"/dataflow:v1b3/ParallelInstruction/outputs": outputs +"/dataflow:v1b3/ParallelInstruction/outputs/output": output +"/dataflow:v1b3/ReadInstruction": read_instruction +"/dataflow:v1b3/ReadInstruction/source": source +"/dataflow:v1b3/WriteInstruction": write_instruction +"/dataflow:v1b3/WriteInstruction/input": input +"/dataflow:v1b3/WriteInstruction/sink": sink +"/dataflow:v1b3/InstructionInput": instruction_input +"/dataflow:v1b3/InstructionInput/producerInstructionIndex": producer_instruction_index +"/dataflow:v1b3/InstructionInput/outputNum": output_num +"/dataflow:v1b3/Sink": sink +"/dataflow:v1b3/Sink/spec": spec +"/dataflow:v1b3/Sink/spec/spec": spec +"/dataflow:v1b3/Sink/codec": codec +"/dataflow:v1b3/Sink/codec/codec": codec +"/dataflow:v1b3/ParDoInstruction": par_do_instruction +"/dataflow:v1b3/ParDoInstruction/input": input +"/dataflow:v1b3/ParDoInstruction/sideInputs": side_inputs +"/dataflow:v1b3/ParDoInstruction/sideInputs/side_input": side_input +"/dataflow:v1b3/ParDoInstruction/userFn": user_fn +"/dataflow:v1b3/ParDoInstruction/userFn/user_fn": user_fn +"/dataflow:v1b3/ParDoInstruction/numOutputs": num_outputs +"/dataflow:v1b3/ParDoInstruction/multiOutputInfos": multi_output_infos +"/dataflow:v1b3/ParDoInstruction/multiOutputInfos/multi_output_info": multi_output_info +"/dataflow:v1b3/SideInputInfo": side_input_info +"/dataflow:v1b3/SideInputInfo/sources": sources +"/dataflow:v1b3/SideInputInfo/sources/source": source +"/dataflow:v1b3/SideInputInfo/kind": kind +"/dataflow:v1b3/SideInputInfo/kind/kind": kind +"/dataflow:v1b3/SideInputInfo/tag": tag +"/dataflow:v1b3/MultiOutputInfo": multi_output_info +"/dataflow:v1b3/MultiOutputInfo/tag": tag +"/dataflow:v1b3/PartialGroupByKeyInstruction": partial_group_by_key_instruction +"/dataflow:v1b3/PartialGroupByKeyInstruction/input": input +"/dataflow:v1b3/PartialGroupByKeyInstruction/inputElementCodec": input_element_codec +"/dataflow:v1b3/PartialGroupByKeyInstruction/inputElementCodec/input_element_codec": input_element_codec +"/dataflow:v1b3/PartialGroupByKeyInstruction/valueCombiningFn": value_combining_fn +"/dataflow:v1b3/PartialGroupByKeyInstruction/valueCombiningFn/value_combining_fn": value_combining_fn +"/dataflow:v1b3/PartialGroupByKeyInstruction/sideInputs": side_inputs +"/dataflow:v1b3/PartialGroupByKeyInstruction/sideInputs/side_input": side_input +"/dataflow:v1b3/PartialGroupByKeyInstruction/originalCombineValuesStepName": original_combine_values_step_name +"/dataflow:v1b3/PartialGroupByKeyInstruction/originalCombineValuesInputStoreName": original_combine_values_input_store_name +"/dataflow:v1b3/FlattenInstruction": flatten_instruction +"/dataflow:v1b3/FlattenInstruction/inputs": inputs +"/dataflow:v1b3/FlattenInstruction/inputs/input": input +"/dataflow:v1b3/InstructionOutput": instruction_output +"/dataflow:v1b3/InstructionOutput/name": name +"/dataflow:v1b3/InstructionOutput/systemName": system_name +"/dataflow:v1b3/InstructionOutput/originalName": original_name +"/dataflow:v1b3/InstructionOutput/codec": codec +"/dataflow:v1b3/InstructionOutput/codec/codec": codec +"/dataflow:v1b3/InstructionOutput/onlyCountKeyBytes": only_count_key_bytes +"/dataflow:v1b3/InstructionOutput/onlyCountValueBytes": only_count_value_bytes +"/dataflow:v1b3/SeqMapTask": seq_map_task +"/dataflow:v1b3/SeqMapTask/inputs": inputs +"/dataflow:v1b3/SeqMapTask/inputs/input": input +"/dataflow:v1b3/SeqMapTask/userFn": user_fn +"/dataflow:v1b3/SeqMapTask/userFn/user_fn": user_fn +"/dataflow:v1b3/SeqMapTask/outputInfos": output_infos +"/dataflow:v1b3/SeqMapTask/outputInfos/output_info": output_info +"/dataflow:v1b3/SeqMapTask/name": name +"/dataflow:v1b3/SeqMapTask/systemName": system_name +"/dataflow:v1b3/SeqMapTask/stageName": stage_name +"/dataflow:v1b3/SeqMapTaskOutputInfo": seq_map_task_output_info +"/dataflow:v1b3/SeqMapTaskOutputInfo/tag": tag +"/dataflow:v1b3/SeqMapTaskOutputInfo/sink": sink +"/dataflow:v1b3/ShellTask": shell_task +"/dataflow:v1b3/ShellTask/command": command +"/dataflow:v1b3/ShellTask/exitCode": exit_code +"/dataflow:v1b3/StreamingSetupTask": streaming_setup_task +"/dataflow:v1b3/StreamingSetupTask/receiveWorkPort": receive_work_port +"/dataflow:v1b3/StreamingSetupTask/workerHarnessPort": worker_harness_port +"/dataflow:v1b3/StreamingSetupTask/streamingComputationTopology": streaming_computation_topology +"/dataflow:v1b3/StreamingSetupTask/drain": drain +"/dataflow:v1b3/TopologyConfig": topology_config +"/dataflow:v1b3/TopologyConfig/computations": computations +"/dataflow:v1b3/TopologyConfig/computations/computation": computation +"/dataflow:v1b3/TopologyConfig/dataDiskAssignments": data_disk_assignments +"/dataflow:v1b3/TopologyConfig/dataDiskAssignments/data_disk_assignment": data_disk_assignment +"/dataflow:v1b3/TopologyConfig/userStageToComputationNameMap": user_stage_to_computation_name_map +"/dataflow:v1b3/TopologyConfig/userStageToComputationNameMap/user_stage_to_computation_name_map": user_stage_to_computation_name_map +"/dataflow:v1b3/TopologyConfig/forwardingKeyBits": forwarding_key_bits +"/dataflow:v1b3/TopologyConfig/persistentStateVersion": persistent_state_version +"/dataflow:v1b3/ComputationTopology": computation_topology +"/dataflow:v1b3/ComputationTopology/systemStageName": system_stage_name +"/dataflow:v1b3/ComputationTopology/computationId": computation_id +"/dataflow:v1b3/ComputationTopology/userStageName": user_stage_name +"/dataflow:v1b3/ComputationTopology/keyRanges": key_ranges +"/dataflow:v1b3/ComputationTopology/keyRanges/key_range": key_range +"/dataflow:v1b3/ComputationTopology/inputs": inputs +"/dataflow:v1b3/ComputationTopology/inputs/input": input +"/dataflow:v1b3/ComputationTopology/outputs": outputs +"/dataflow:v1b3/ComputationTopology/outputs/output": output +"/dataflow:v1b3/ComputationTopology/stateFamilies": state_families +"/dataflow:v1b3/ComputationTopology/stateFamilies/state_family": state_family +"/dataflow:v1b3/KeyRangeLocation": key_range_location +"/dataflow:v1b3/KeyRangeLocation/start": start +"/dataflow:v1b3/KeyRangeLocation/end": end +"/dataflow:v1b3/KeyRangeLocation/deliveryEndpoint": delivery_endpoint +"/dataflow:v1b3/KeyRangeLocation/persistentDirectory": persistent_directory +"/dataflow:v1b3/KeyRangeLocation/dataDisk": data_disk +"/dataflow:v1b3/StreamLocation": stream_location +"/dataflow:v1b3/StreamLocation/streamingStageLocation": streaming_stage_location +"/dataflow:v1b3/StreamLocation/pubsubLocation": pubsub_location +"/dataflow:v1b3/StreamLocation/sideInputLocation": side_input_location +"/dataflow:v1b3/StreamLocation/customSourceLocation": custom_source_location +"/dataflow:v1b3/StreamingStageLocation": streaming_stage_location +"/dataflow:v1b3/StreamingStageLocation/streamId": stream_id +"/dataflow:v1b3/PubsubLocation": pubsub_location +"/dataflow:v1b3/PubsubLocation/topic": topic +"/dataflow:v1b3/PubsubLocation/subscription": subscription +"/dataflow:v1b3/PubsubLocation/timestampLabel": timestamp_label +"/dataflow:v1b3/PubsubLocation/idLabel": id_label +"/dataflow:v1b3/PubsubLocation/dropLateData": drop_late_data +"/dataflow:v1b3/PubsubLocation/trackingSubscription": tracking_subscription +"/dataflow:v1b3/StreamingSideInputLocation": streaming_side_input_location +"/dataflow:v1b3/StreamingSideInputLocation/tag": tag +"/dataflow:v1b3/StreamingSideInputLocation/stateFamily": state_family +"/dataflow:v1b3/CustomSourceLocation": custom_source_location +"/dataflow:v1b3/CustomSourceLocation/stateful": stateful +"/dataflow:v1b3/StateFamilyConfig": state_family_config +"/dataflow:v1b3/StateFamilyConfig/stateFamily": state_family +"/dataflow:v1b3/StateFamilyConfig/isRead": is_read +"/dataflow:v1b3/DataDiskAssignment": data_disk_assignment +"/dataflow:v1b3/DataDiskAssignment/vmInstance": vm_instance +"/dataflow:v1b3/DataDiskAssignment/dataDisks": data_disks +"/dataflow:v1b3/DataDiskAssignment/dataDisks/data_disk": data_disk +"/dataflow:v1b3/SourceOperationRequest": source_operation_request +"/dataflow:v1b3/SourceOperationRequest/split": split +"/dataflow:v1b3/SourceOperationRequest/getMetadata": get_metadata +"/dataflow:v1b3/SourceSplitRequest": source_split_request +"/dataflow:v1b3/SourceSplitRequest/source": source +"/dataflow:v1b3/SourceSplitRequest/options": options +"/dataflow:v1b3/SourceSplitOptions": source_split_options +"/dataflow:v1b3/SourceSplitOptions/desiredBundleSizeBytes": desired_bundle_size_bytes +"/dataflow:v1b3/SourceSplitOptions/desiredShardSizeBytes": desired_shard_size_bytes +"/dataflow:v1b3/SourceGetMetadataRequest": source_get_metadata_request +"/dataflow:v1b3/SourceGetMetadataRequest/source": source +"/dataflow:v1b3/StreamingComputationTask": streaming_computation_task +"/dataflow:v1b3/StreamingComputationTask/taskType": task_type +"/dataflow:v1b3/StreamingComputationTask/dataDisks": data_disks +"/dataflow:v1b3/StreamingComputationTask/dataDisks/data_disk": data_disk +"/dataflow:v1b3/StreamingComputationTask/computationRanges": computation_ranges +"/dataflow:v1b3/StreamingComputationTask/computationRanges/computation_range": computation_range +"/dataflow:v1b3/MountedDataDisk": mounted_data_disk +"/dataflow:v1b3/MountedDataDisk/dataDisk": data_disk +"/dataflow:v1b3/StreamingComputationRanges": streaming_computation_ranges +"/dataflow:v1b3/StreamingComputationRanges/computationId": computation_id +"/dataflow:v1b3/StreamingComputationRanges/rangeAssignments": range_assignments +"/dataflow:v1b3/StreamingComputationRanges/rangeAssignments/range_assignment": range_assignment +"/dataflow:v1b3/KeyRangeDataDiskAssignment": key_range_data_disk_assignment +"/dataflow:v1b3/KeyRangeDataDiskAssignment/start": start +"/dataflow:v1b3/KeyRangeDataDiskAssignment/end": end +"/dataflow:v1b3/KeyRangeDataDiskAssignment/dataDisk": data_disk +"/dataflow:v1b3/StreamingConfigTask": streaming_config_task +"/dataflow:v1b3/StreamingConfigTask/streamingComputationConfigs": streaming_computation_configs +"/dataflow:v1b3/StreamingConfigTask/streamingComputationConfigs/streaming_computation_config": streaming_computation_config +"/dataflow:v1b3/StreamingConfigTask/userStepToStateFamilyNameMap": user_step_to_state_family_name_map +"/dataflow:v1b3/StreamingConfigTask/userStepToStateFamilyNameMap/user_step_to_state_family_name_map": user_step_to_state_family_name_map +"/dataflow:v1b3/StreamingComputationConfig": streaming_computation_config +"/dataflow:v1b3/StreamingComputationConfig/computationId": computation_id +"/dataflow:v1b3/StreamingComputationConfig/systemName": system_name +"/dataflow:v1b3/StreamingComputationConfig/stageName": stage_name +"/dataflow:v1b3/StreamingComputationConfig/instructions": instructions +"/dataflow:v1b3/StreamingComputationConfig/instructions/instruction": instruction +"/dataflow:v1b3/SendWorkerMessagesRequest": send_worker_messages_request +"/dataflow:v1b3/SendWorkerMessagesRequest/workerMessages": worker_messages +"/dataflow:v1b3/SendWorkerMessagesRequest/workerMessages/worker_message": worker_message +"/dataflow:v1b3/WorkerMessage": worker_message +"/dataflow:v1b3/WorkerMessage/labels": labels +"/dataflow:v1b3/WorkerMessage/labels/label": label +"/dataflow:v1b3/WorkerMessage/time": time +"/dataflow:v1b3/WorkerMessage/workerHealthReport": worker_health_report +"/dataflow:v1b3/WorkerMessage/workerMessageCode": worker_message_code +"/dataflow:v1b3/WorkerHealthReport": worker_health_report +"/dataflow:v1b3/WorkerHealthReport/vmIsHealthy": vm_is_healthy +"/dataflow:v1b3/WorkerHealthReport/vmStartupTime": vm_startup_time +"/dataflow:v1b3/WorkerHealthReport/reportInterval": report_interval +"/dataflow:v1b3/WorkerHealthReport/pods": pods +"/dataflow:v1b3/WorkerHealthReport/pods/pod": pod +"/dataflow:v1b3/WorkerHealthReport/pods/pod/pod": pod +"/dataflow:v1b3/WorkerMessageCode": worker_message_code +"/dataflow:v1b3/WorkerMessageCode/code": code +"/dataflow:v1b3/WorkerMessageCode/parameters": parameters +"/dataflow:v1b3/WorkerMessageCode/parameters/parameter": parameter +"/dataflow:v1b3/SendWorkerMessagesResponse": send_worker_messages_response +"/dataflow:v1b3/SendWorkerMessagesResponse/workerMessageResponses": worker_message_responses +"/dataflow:v1b3/SendWorkerMessagesResponse/workerMessageResponses/worker_message_response": worker_message_response +"/dataflow:v1b3/WorkerMessageResponse": worker_message_response +"/dataflow:v1b3/WorkerMessageResponse/workerHealthReportResponse": worker_health_report_response +"/dataflow:v1b3/WorkerHealthReportResponse": worker_health_report_response +"/dataflow:v1b3/WorkerHealthReportResponse/reportInterval": report_interval "/dataproc:v1/fields": fields "/dataproc:v1/key": key "/dataproc:v1/quotaUser": quota_user diff --git a/generated/google/apis/dataflow_v1b3.rb b/generated/google/apis/dataflow_v1b3.rb new file mode 100644 index 000000000..616232201 --- /dev/null +++ b/generated/google/apis/dataflow_v1b3.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/dataflow_v1b3/service.rb' +require 'google/apis/dataflow_v1b3/classes.rb' +require 'google/apis/dataflow_v1b3/representations.rb' + +module Google + module Apis + # Google Dataflow API + # + # Develops and executes data processing patterns like ETL, batch computation, + # and continuous computation. + # + # @see https://cloud.google.com/dataflow + module DataflowV1b3 + VERSION = 'V1b3' + REVISION = '20160923' + + # View and manage your data across Google Cloud Platform services + AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform' + + # View your email address + AUTH_USERINFO_EMAIL = 'https://www.googleapis.com/auth/userinfo.email' + end + end +end diff --git a/generated/google/apis/dataflow_v1b3/classes.rb b/generated/google/apis/dataflow_v1b3/classes.rb new file mode 100644 index 000000000..700826938 --- /dev/null +++ b/generated/google/apis/dataflow_v1b3/classes.rb @@ -0,0 +1,4009 @@ +# 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 DataflowV1b3 + + # Request to get updated debug configuration for component. + class GetDebugConfigRequest + include Google::Apis::Core::Hashable + + # The worker id, i.e., VM hostname. + # Corresponds to the JSON property `workerId` + # @return [String] + attr_accessor :worker_id + + # The internal component id for which debug configuration is requested. + # Corresponds to the JSON property `componentId` + # @return [String] + attr_accessor :component_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @worker_id = args[:worker_id] if args.key?(:worker_id) + @component_id = args[:component_id] if args.key?(:component_id) + end + end + + # Response to a get debug configuration request. + class GetDebugConfigResponse + include Google::Apis::Core::Hashable + + # The encoded debug configuration for the requested component. + # Corresponds to the JSON property `config` + # @return [String] + attr_accessor :config + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @config = args[:config] if args.key?(:config) + end + end + + # Request to send encoded debug information. + class SendDebugCaptureRequest + include Google::Apis::Core::Hashable + + # The worker id, i.e., VM hostname. + # Corresponds to the JSON property `workerId` + # @return [String] + attr_accessor :worker_id + + # The internal component id for which debug information is sent. + # Corresponds to the JSON property `componentId` + # @return [String] + attr_accessor :component_id + + # The encoded debug information. + # Corresponds to the JSON property `data` + # @return [String] + attr_accessor :data + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @worker_id = args[:worker_id] if args.key?(:worker_id) + @component_id = args[:component_id] if args.key?(:component_id) + @data = args[:data] if args.key?(:data) + end + end + + # Response to a send capture request. nothing + class SendDebugCaptureResponse + include Google::Apis::Core::Hashable + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + end + end + + # Defines a job to be run by the Dataflow service. + class Job + include Google::Apis::Core::Hashable + + # The unique ID of this job. This field is set by the Dataflow service when the + # Job is created, and is immutable for the life of the Job. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The project which owns the job. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # The user-specified Dataflow job name. Only one Job with a given name may exist + # in a project at any given time. If a caller attempts to create a Job with the + # same name as an already-existing Job, the attempt will return the existing Job. + # The name must match the regular expression [a-z]([-a-z0-9]`0,38`[a-z0-9])? + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The type of dataflow job. + # Corresponds to the JSON property `type` + # @return [String] + attr_accessor :type + + # Describes the environment in which a Dataflow Job runs. + # Corresponds to the JSON property `environment` + # @return [Google::Apis::DataflowV1b3::Environment] + attr_accessor :environment + + # The top-level steps that constitute the entire job. + # Corresponds to the JSON property `steps` + # @return [Array] + attr_accessor :steps + + # The current state of the job. Jobs are created in the JOB_STATE_STOPPED state + # unless otherwise specified. A job in the JOB_STATE_RUNNING state may + # asynchronously enter a terminal state. Once a job has reached a terminal state, + # no further state updates may be made. This field may be mutated by the + # Dataflow service; callers cannot mutate it. + # Corresponds to the JSON property `currentState` + # @return [String] + attr_accessor :current_state + + # The timestamp associated with the current state. + # Corresponds to the JSON property `currentStateTime` + # @return [String] + attr_accessor :current_state_time + + # The job's requested state. UpdateJob may be used to switch between the + # JOB_STATE_STOPPED and JOB_STATE_RUNNING states, by setting requested_state. + # UpdateJob may also be used to directly set a job's requested state to + # JOB_STATE_CANCELLED or JOB_STATE_DONE, irrevocably terminating the job if it + # has not already reached a terminal state. + # Corresponds to the JSON property `requestedState` + # @return [String] + attr_accessor :requested_state + + # Additional information about how a Dataflow job will be executed which isn’t + # contained in the submitted job. + # Corresponds to the JSON property `executionInfo` + # @return [Google::Apis::DataflowV1b3::JobExecutionInfo] + attr_accessor :execution_info + + # Timestamp when job was initially created. Immutable, set by the Dataflow + # service. + # Corresponds to the JSON property `createTime` + # @return [String] + attr_accessor :create_time + + # If this job is an update of an existing job, this field will be the ID of the + # job it replaced. When sending a CreateJobRequest, you can update a job by + # specifying it here. The job named here will be stopped, and its intermediate + # state transferred to this job. + # Corresponds to the JSON property `replaceJobId` + # @return [String] + attr_accessor :replace_job_id + + # Map of transform name prefixes of the job to be replaced to the corresponding + # name prefixes of the new job. + # Corresponds to the JSON property `transformNameMapping` + # @return [Hash] + attr_accessor :transform_name_mapping + + # Client's unique identifier of the job, re-used by SDK across retried attempts. + # If this field is set, the service will ensure its uniqueness. That is, the + # request to create a job will fail if the service has knowledge of a previously + # submitted job with the same client's id and job name. The caller may, for + # example, use this field to ensure idempotence of job creation across retried + # attempts to create a job. By default, the field is empty and, in that case, + # the service ignores it. + # Corresponds to the JSON property `clientRequestId` + # @return [String] + attr_accessor :client_request_id + + # If another job is an update of this job (and thus, this job is in + # JOB_STATE_UPDATED), this field will contain the ID of that job. + # Corresponds to the JSON property `replacedByJobId` + # @return [String] + attr_accessor :replaced_by_job_id + + # A set of files the system should be aware of that are used for temporary + # storage. These temporary files will be removed on job completion. No + # duplicates are allowed. No file patterns are supported. The supported files + # are: Google Cloud Storage: storage.googleapis.com/`bucket`/`object` bucket. + # storage.googleapis.com/`object` + # Corresponds to the JSON property `tempFiles` + # @return [Array] + attr_accessor :temp_files + + # User-defined labels for this job. The labels map can contain no more than 64 + # entries. Entries of the labels map are UTF8 strings that comply with the + # following restrictions: * Keys must conform to regexp: \p`Ll`\p`Lo``0,62` * + # Values must conform to regexp: [\p`Ll`\p`Lo`\p`N`_-]`0,63` * Both keys and + # values are additionally constrained to be <= 128 bytes in size. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @project_id = args[:project_id] if args.key?(:project_id) + @name = args[:name] if args.key?(:name) + @type = args[:type] if args.key?(:type) + @environment = args[:environment] if args.key?(:environment) + @steps = args[:steps] if args.key?(:steps) + @current_state = args[:current_state] if args.key?(:current_state) + @current_state_time = args[:current_state_time] if args.key?(:current_state_time) + @requested_state = args[:requested_state] if args.key?(:requested_state) + @execution_info = args[:execution_info] if args.key?(:execution_info) + @create_time = args[:create_time] if args.key?(:create_time) + @replace_job_id = args[:replace_job_id] if args.key?(:replace_job_id) + @transform_name_mapping = args[:transform_name_mapping] if args.key?(:transform_name_mapping) + @client_request_id = args[:client_request_id] if args.key?(:client_request_id) + @replaced_by_job_id = args[:replaced_by_job_id] if args.key?(:replaced_by_job_id) + @temp_files = args[:temp_files] if args.key?(:temp_files) + @labels = args[:labels] if args.key?(:labels) + end + end + + # Describes the environment in which a Dataflow Job runs. + class Environment + include Google::Apis::Core::Hashable + + # The prefix of the resources the system should use for temporary storage. The + # system will append the suffix "/temp-`JOBNAME` to this resource prefix, where ` + # JOBNAME` is the value of the job_name field. The resulting bucket and object + # prefix is used as the prefix of the resources used to store temporary data + # needed during the job execution. NOTE: This will override the value in + # taskrunner_settings. The supported resource type is: Google Cloud Storage: + # storage.googleapis.com/`bucket`/`object` bucket.storage.googleapis.com/`object` + # Corresponds to the JSON property `tempStoragePrefix` + # @return [String] + attr_accessor :temp_storage_prefix + + # The type of cluster manager API to use. If unknown or unspecified, the service + # will attempt to choose a reasonable default. This should be in the form of the + # API service name, e.g. "compute.googleapis.com". + # Corresponds to the JSON property `clusterManagerApiService` + # @return [String] + attr_accessor :cluster_manager_api_service + + # The list of experiments to enable. + # Corresponds to the JSON property `experiments` + # @return [Array] + attr_accessor :experiments + + # Worker pools. At least one "harness" worker pool must be specified in order + # for the job to have workers. + # Corresponds to the JSON property `workerPools` + # @return [Array] + attr_accessor :worker_pools + + # A description of the process that generated the request. + # Corresponds to the JSON property `userAgent` + # @return [Hash] + attr_accessor :user_agent + + # A structure describing which components and their versions of the service are + # required in order to run the job. + # Corresponds to the JSON property `version` + # @return [Hash] + attr_accessor :version + + # The dataset for the current project where various workflow related tables are + # stored. The supported resource type is: Google BigQuery: bigquery.googleapis. + # com/`dataset` + # Corresponds to the JSON property `dataset` + # @return [String] + attr_accessor :dataset + + # The Dataflow SDK pipeline options specified by the user. These options are + # passed through the service and are used to recreate the SDK pipeline options + # on the worker in a language agnostic and platform independent way. + # Corresponds to the JSON property `sdkPipelineOptions` + # @return [Hash] + attr_accessor :sdk_pipeline_options + + # Experimental settings. + # Corresponds to the JSON property `internalExperiments` + # @return [Hash] + attr_accessor :internal_experiments + + # Identity to run virtual machines as. Defaults to the default account. + # Corresponds to the JSON property `serviceAccountEmail` + # @return [String] + attr_accessor :service_account_email + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @temp_storage_prefix = args[:temp_storage_prefix] if args.key?(:temp_storage_prefix) + @cluster_manager_api_service = args[:cluster_manager_api_service] if args.key?(:cluster_manager_api_service) + @experiments = args[:experiments] if args.key?(:experiments) + @worker_pools = args[:worker_pools] if args.key?(:worker_pools) + @user_agent = args[:user_agent] if args.key?(:user_agent) + @version = args[:version] if args.key?(:version) + @dataset = args[:dataset] if args.key?(:dataset) + @sdk_pipeline_options = args[:sdk_pipeline_options] if args.key?(:sdk_pipeline_options) + @internal_experiments = args[:internal_experiments] if args.key?(:internal_experiments) + @service_account_email = args[:service_account_email] if args.key?(:service_account_email) + end + end + + # Describes one particular pool of Dataflow workers to be instantiated by the + # Dataflow service in order to perform the computations required by a job. Note + # that a workflow job may use multiple pools, in order to match the various + # computational requirements of the various stages of the job. + class WorkerPool + include Google::Apis::Core::Hashable + + # The kind of the worker pool; currently only 'harness' and 'shuffle' are + # supported. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Number of Google Compute Engine workers in this pool needed to execute the job. + # If zero or unspecified, the service will attempt to choose a reasonable + # default. + # Corresponds to the JSON property `numWorkers` + # @return [Fixnum] + attr_accessor :num_workers + + # Packages to be installed on workers. + # Corresponds to the JSON property `packages` + # @return [Array] + attr_accessor :packages + + # The default package set to install. This allows the service to select a + # default set of packages which are useful to worker harnesses written in a + # particular language. + # Corresponds to the JSON property `defaultPackageSet` + # @return [String] + attr_accessor :default_package_set + + # Machine type (e.g. "n1-standard-1"). If empty or unspecified, the service will + # attempt to choose a reasonable default. + # Corresponds to the JSON property `machineType` + # @return [String] + attr_accessor :machine_type + + # Sets the policy for determining when to turndown worker pool. Allowed values + # are: TEARDOWN_ALWAYS, TEARDOWN_ON_SUCCESS, and TEARDOWN_NEVER. TEARDOWN_ALWAYS + # means workers are always torn down regardless of whether the job succeeds. + # TEARDOWN_ON_SUCCESS means workers are torn down if the job succeeds. + # TEARDOWN_NEVER means the workers are never torn down. If the workers are not + # torn down by the service, they will continue to run and use Google Compute + # Engine VM resources in the user's project until they are explicitly terminated + # by the user. Because of this, Google recommends using the TEARDOWN_ALWAYS + # policy except for small, manually supervised test jobs. If unknown or + # unspecified, the service will attempt to choose a reasonable default. + # Corresponds to the JSON property `teardownPolicy` + # @return [String] + attr_accessor :teardown_policy + + # Size of root disk for VMs, in GB. If zero or unspecified, the service will + # attempt to choose a reasonable default. + # Corresponds to the JSON property `diskSizeGb` + # @return [Fixnum] + attr_accessor :disk_size_gb + + # Type of root disk for VMs. If empty or unspecified, the service will attempt + # to choose a reasonable default. + # Corresponds to the JSON property `diskType` + # @return [String] + attr_accessor :disk_type + + # Fully qualified source image for disks. + # Corresponds to the JSON property `diskSourceImage` + # @return [String] + attr_accessor :disk_source_image + + # Zone to run the worker pools in. If empty or unspecified, the service will + # attempt to choose a reasonable default. + # Corresponds to the JSON property `zone` + # @return [String] + attr_accessor :zone + + # Taskrunner configuration settings. + # Corresponds to the JSON property `taskrunnerSettings` + # @return [Google::Apis::DataflowV1b3::TaskRunnerSettings] + attr_accessor :taskrunner_settings + + # The action to take on host maintenance, as defined by the Google Compute + # Engine API. + # Corresponds to the JSON property `onHostMaintenance` + # @return [String] + attr_accessor :on_host_maintenance + + # Data disks that are used by a VM in this workflow. + # Corresponds to the JSON property `dataDisks` + # @return [Array] + attr_accessor :data_disks + + # Metadata to set on the Google Compute Engine VMs. + # Corresponds to the JSON property `metadata` + # @return [Hash] + attr_accessor :metadata + + # Settings for WorkerPool autoscaling. + # Corresponds to the JSON property `autoscalingSettings` + # @return [Google::Apis::DataflowV1b3::AutoscalingSettings] + attr_accessor :autoscaling_settings + + # Extra arguments for this worker pool. + # Corresponds to the JSON property `poolArgs` + # @return [Hash] + attr_accessor :pool_args + + # Network to which VMs will be assigned. If empty or unspecified, the service + # will use the network "default". + # Corresponds to the JSON property `network` + # @return [String] + attr_accessor :network + + # Subnetwork to which VMs will be assigned, if desired. Expected to be of the + # form "regions/REGION/subnetworks/SUBNETWORK". + # Corresponds to the JSON property `subnetwork` + # @return [String] + attr_accessor :subnetwork + + # Docker container image that executes Dataflow worker harness, residing in + # Google Container Registry. Required. + # Corresponds to the JSON property `workerHarnessContainerImage` + # @return [String] + attr_accessor :worker_harness_container_image + + # The number of threads per worker harness. If empty or unspecified, the service + # will choose a number of threads (according to the number of cores on the + # selected machine type for batch, or 1 by convention for streaming). + # Corresponds to the JSON property `numThreadsPerWorker` + # @return [Fixnum] + attr_accessor :num_threads_per_worker + + # Configuration for VM IPs. + # Corresponds to the JSON property `ipConfiguration` + # @return [String] + attr_accessor :ip_configuration + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @num_workers = args[:num_workers] if args.key?(:num_workers) + @packages = args[:packages] if args.key?(:packages) + @default_package_set = args[:default_package_set] if args.key?(:default_package_set) + @machine_type = args[:machine_type] if args.key?(:machine_type) + @teardown_policy = args[:teardown_policy] if args.key?(:teardown_policy) + @disk_size_gb = args[:disk_size_gb] if args.key?(:disk_size_gb) + @disk_type = args[:disk_type] if args.key?(:disk_type) + @disk_source_image = args[:disk_source_image] if args.key?(:disk_source_image) + @zone = args[:zone] if args.key?(:zone) + @taskrunner_settings = args[:taskrunner_settings] if args.key?(:taskrunner_settings) + @on_host_maintenance = args[:on_host_maintenance] if args.key?(:on_host_maintenance) + @data_disks = args[:data_disks] if args.key?(:data_disks) + @metadata = args[:metadata] if args.key?(:metadata) + @autoscaling_settings = args[:autoscaling_settings] if args.key?(:autoscaling_settings) + @pool_args = args[:pool_args] if args.key?(:pool_args) + @network = args[:network] if args.key?(:network) + @subnetwork = args[:subnetwork] if args.key?(:subnetwork) + @worker_harness_container_image = args[:worker_harness_container_image] if args.key?(:worker_harness_container_image) + @num_threads_per_worker = args[:num_threads_per_worker] if args.key?(:num_threads_per_worker) + @ip_configuration = args[:ip_configuration] if args.key?(:ip_configuration) + end + end + + # Packages that need to be installed in order for a worker to run the steps of + # the Dataflow job which will be assigned to its worker pool. This is the + # mechanism by which the SDK causes code to be loaded onto the workers. For + # example, the Dataflow Java SDK might use this to install jars containing the + # user's code and all of the various dependencies (libraries, data files, etc) + # required in order for that code to run. + class Package + include Google::Apis::Core::Hashable + + # The name of the package. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # The resource to read the package from. The supported resource type is: Google + # Cloud Storage: storage.googleapis.com/`bucket` bucket.storage.googleapis.com/ + # Corresponds to the JSON property `location` + # @return [String] + attr_accessor :location + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @location = args[:location] if args.key?(:location) + end + end + + # Taskrunner configuration settings. + class TaskRunnerSettings + include Google::Apis::Core::Hashable + + # The UNIX user ID on the worker VM to use for tasks launched by taskrunner; e.g. + # "root". + # Corresponds to the JSON property `taskUser` + # @return [String] + attr_accessor :task_user + + # The UNIX group ID on the worker VM to use for tasks launched by taskrunner; e. + # g. "wheel". + # Corresponds to the JSON property `taskGroup` + # @return [String] + attr_accessor :task_group + + # OAuth2 scopes to be requested by the taskrunner in order to access the + # dataflow API. + # Corresponds to the JSON property `oauthScopes` + # @return [Array] + attr_accessor :oauth_scopes + + # The base URL for the taskrunner to use when accessing Google Cloud APIs. When + # workers access Google Cloud APIs, they logically do so via relative URLs. If + # this field is specified, it supplies the base URL to use for resolving these + # relative URLs. The normative algorithm used is defined by RFC 1808, "Relative + # Uniform Resource Locators". If not specified, the default value is "http://www. + # googleapis.com/" + # Corresponds to the JSON property `baseUrl` + # @return [String] + attr_accessor :base_url + + # API version of endpoint, e.g. "v1b3" + # Corresponds to the JSON property `dataflowApiVersion` + # @return [String] + attr_accessor :dataflow_api_version + + # Provides data to pass through to the worker harness. + # Corresponds to the JSON property `parallelWorkerSettings` + # @return [Google::Apis::DataflowV1b3::WorkerSettings] + attr_accessor :parallel_worker_settings + + # Location on the worker for task-specific subdirectories. + # Corresponds to the JSON property `baseTaskDir` + # @return [String] + attr_accessor :base_task_dir + + # Do we continue taskrunner if an exception is hit? + # Corresponds to the JSON property `continueOnException` + # @return [Boolean] + attr_accessor :continue_on_exception + alias_method :continue_on_exception?, :continue_on_exception + + # Send taskrunner log into to Google Compute Engine VM serial console? + # Corresponds to the JSON property `logToSerialconsole` + # @return [Boolean] + attr_accessor :log_to_serialconsole + alias_method :log_to_serialconsole?, :log_to_serialconsole + + # Also send taskrunner log info to stderr? + # Corresponds to the JSON property `alsologtostderr` + # @return [Boolean] + attr_accessor :alsologtostderr + alias_method :alsologtostderr?, :alsologtostderr + + # Indicates where to put logs. If this is not specified, the logs will not be + # uploaded. The supported resource type is: Google Cloud Storage: storage. + # googleapis.com/`bucket`/`object` bucket.storage.googleapis.com/`object` + # Corresponds to the JSON property `logUploadLocation` + # @return [String] + attr_accessor :log_upload_location + + # Directory on the VM to store logs. + # Corresponds to the JSON property `logDir` + # @return [String] + attr_accessor :log_dir + + # The prefix of the resources the taskrunner should use for temporary storage. + # The supported resource type is: Google Cloud Storage: storage.googleapis.com/` + # bucket`/`object` bucket.storage.googleapis.com/`object` + # Corresponds to the JSON property `tempStoragePrefix` + # @return [String] + attr_accessor :temp_storage_prefix + + # Command to launch the worker harness. + # Corresponds to the JSON property `harnessCommand` + # @return [String] + attr_accessor :harness_command + + # Store the workflow in this file. + # Corresponds to the JSON property `workflowFileName` + # @return [String] + attr_accessor :workflow_file_name + + # Store preprocessing commands in this file. + # Corresponds to the JSON property `commandlinesFileName` + # @return [String] + attr_accessor :commandlines_file_name + + # ID string of VM. + # Corresponds to the JSON property `vmId` + # @return [String] + attr_accessor :vm_id + + # Suggested backend language. + # Corresponds to the JSON property `languageHint` + # @return [String] + attr_accessor :language_hint + + # Streaming worker main class name. + # Corresponds to the JSON property `streamingWorkerMainClass` + # @return [String] + attr_accessor :streaming_worker_main_class + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @task_user = args[:task_user] if args.key?(:task_user) + @task_group = args[:task_group] if args.key?(:task_group) + @oauth_scopes = args[:oauth_scopes] if args.key?(:oauth_scopes) + @base_url = args[:base_url] if args.key?(:base_url) + @dataflow_api_version = args[:dataflow_api_version] if args.key?(:dataflow_api_version) + @parallel_worker_settings = args[:parallel_worker_settings] if args.key?(:parallel_worker_settings) + @base_task_dir = args[:base_task_dir] if args.key?(:base_task_dir) + @continue_on_exception = args[:continue_on_exception] if args.key?(:continue_on_exception) + @log_to_serialconsole = args[:log_to_serialconsole] if args.key?(:log_to_serialconsole) + @alsologtostderr = args[:alsologtostderr] if args.key?(:alsologtostderr) + @log_upload_location = args[:log_upload_location] if args.key?(:log_upload_location) + @log_dir = args[:log_dir] if args.key?(:log_dir) + @temp_storage_prefix = args[:temp_storage_prefix] if args.key?(:temp_storage_prefix) + @harness_command = args[:harness_command] if args.key?(:harness_command) + @workflow_file_name = args[:workflow_file_name] if args.key?(:workflow_file_name) + @commandlines_file_name = args[:commandlines_file_name] if args.key?(:commandlines_file_name) + @vm_id = args[:vm_id] if args.key?(:vm_id) + @language_hint = args[:language_hint] if args.key?(:language_hint) + @streaming_worker_main_class = args[:streaming_worker_main_class] if args.key?(:streaming_worker_main_class) + end + end + + # Provides data to pass through to the worker harness. + class WorkerSettings + include Google::Apis::Core::Hashable + + # The base URL for accessing Google Cloud APIs. When workers access Google Cloud + # APIs, they logically do so via relative URLs. If this field is specified, it + # supplies the base URL to use for resolving these relative URLs. The normative + # algorithm used is defined by RFC 1808, "Relative Uniform Resource Locators". + # If not specified, the default value is "http://www.googleapis.com/" + # Corresponds to the JSON property `baseUrl` + # @return [String] + attr_accessor :base_url + + # Send work progress updates to service. + # Corresponds to the JSON property `reportingEnabled` + # @return [Boolean] + attr_accessor :reporting_enabled + alias_method :reporting_enabled?, :reporting_enabled + + # The Dataflow service path relative to the root URL, for example, "dataflow/ + # v1b3/projects". + # Corresponds to the JSON property `servicePath` + # @return [String] + attr_accessor :service_path + + # The Shuffle service path relative to the root URL, for example, "shuffle/ + # v1beta1". + # Corresponds to the JSON property `shuffleServicePath` + # @return [String] + attr_accessor :shuffle_service_path + + # ID of the worker running this pipeline. + # Corresponds to the JSON property `workerId` + # @return [String] + attr_accessor :worker_id + + # The prefix of the resources the system should use for temporary storage. The + # supported resource type is: Google Cloud Storage: storage.googleapis.com/` + # bucket`/`object` bucket.storage.googleapis.com/`object` + # Corresponds to the JSON property `tempStoragePrefix` + # @return [String] + attr_accessor :temp_storage_prefix + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @base_url = args[:base_url] if args.key?(:base_url) + @reporting_enabled = args[:reporting_enabled] if args.key?(:reporting_enabled) + @service_path = args[:service_path] if args.key?(:service_path) + @shuffle_service_path = args[:shuffle_service_path] if args.key?(:shuffle_service_path) + @worker_id = args[:worker_id] if args.key?(:worker_id) + @temp_storage_prefix = args[:temp_storage_prefix] if args.key?(:temp_storage_prefix) + end + end + + # Describes the data disk used by a workflow job. + class Disk + include Google::Apis::Core::Hashable + + # Size of disk in GB. If zero or unspecified, the service will attempt to choose + # a reasonable default. + # Corresponds to the JSON property `sizeGb` + # @return [Fixnum] + attr_accessor :size_gb + + # Disk storage type, as defined by Google Compute Engine. This must be a disk + # type appropriate to the project and zone in which the workers will run. If + # unknown or unspecified, the service will attempt to choose a reasonable + # default. For example, the standard persistent disk type is a resource name + # typically ending in "pd-standard". If SSD persistent disks are available, the + # resource name typically ends with "pd-ssd". The actual valid values are + # defined the Google Compute Engine API, not by the Dataflow API; consult the + # Google Compute Engine documentation for more information about determining the + # set of available disk types for a particular project and zone. Google Compute + # Engine Disk types are local to a particular project in a particular zone, and + # so the resource name will typically look something like this: compute. + # googleapis.com/projects/ + # /zones//diskTypes/pd-standard + # Corresponds to the JSON property `diskType` + # @return [String] + attr_accessor :disk_type + + # Directory in a VM where disk is mounted. + # Corresponds to the JSON property `mountPoint` + # @return [String] + attr_accessor :mount_point + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @size_gb = args[:size_gb] if args.key?(:size_gb) + @disk_type = args[:disk_type] if args.key?(:disk_type) + @mount_point = args[:mount_point] if args.key?(:mount_point) + end + end + + # Settings for WorkerPool autoscaling. + class AutoscalingSettings + include Google::Apis::Core::Hashable + + # The algorithm to use for autoscaling. + # Corresponds to the JSON property `algorithm` + # @return [String] + attr_accessor :algorithm + + # The maximum number of workers to cap scaling at. + # Corresponds to the JSON property `maxNumWorkers` + # @return [Fixnum] + attr_accessor :max_num_workers + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @algorithm = args[:algorithm] if args.key?(:algorithm) + @max_num_workers = args[:max_num_workers] if args.key?(:max_num_workers) + end + end + + # Defines a particular step within a Dataflow job. A job consists of multiple + # steps, each of which performs some specific operation as part of the overall + # job. Data is typically passed from one step to another as part of the job. + # Here's an example of a sequence of steps which together implement a Map-Reduce + # job: * Read a collection of data from some source, parsing the collection's + # elements. * Validate the elements. * Apply a user-defined function to map each + # element to some value and extract an element-specific key value. * Group + # elements with the same key into a single element with that key, transforming a + # multiply-keyed collection into a uniquely-keyed collection. * Write the + # elements out to some data sink. (Note that the Dataflow service may be used to + # run many different types of jobs, not just Map-Reduce). + class Step + include Google::Apis::Core::Hashable + + # The kind of step in the dataflow Job. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Name identifying the step. This must be unique for each step with respect to + # all other steps in the dataflow Job. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Named properties associated with the step. Each kind of predefined step has + # its own required set of properties. + # Corresponds to the JSON property `properties` + # @return [Hash] + attr_accessor :properties + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @name = args[:name] if args.key?(:name) + @properties = args[:properties] if args.key?(:properties) + end + end + + # Additional information about how a Dataflow job will be executed which isn’t + # contained in the submitted job. + class JobExecutionInfo + include Google::Apis::Core::Hashable + + # A mapping from each stage to the information about that stage. + # Corresponds to the JSON property `stages` + # @return [Hash] + attr_accessor :stages + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @stages = args[:stages] if args.key?(:stages) + end + end + + # Contains information about how a particular google.dataflow.v1beta3.Step will + # be executed. + class JobExecutionStageInfo + include Google::Apis::Core::Hashable + + # The steps associated with the execution stage. Note that stages may have + # several steps, and that a given step might be run by more than one stage. + # Corresponds to the JSON property `stepName` + # @return [Array] + attr_accessor :step_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @step_name = args[:step_name] if args.key?(:step_name) + end + end + + # Response to a request to list Dataflow jobs. This may be a partial response, + # depending on the page size in the ListJobsRequest. + class ListJobsResponse + include Google::Apis::Core::Hashable + + # A subset of the requested job information. + # Corresponds to the JSON property `jobs` + # @return [Array] + attr_accessor :jobs + + # Set if there may be more results than fit in this response. + # 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) + @jobs = args[:jobs] if args.key?(:jobs) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # Response to a request to list job messages. + class ListJobMessagesResponse + include Google::Apis::Core::Hashable + + # Messages in ascending timestamp order. + # Corresponds to the JSON property `jobMessages` + # @return [Array] + attr_accessor :job_messages + + # The token to obtain the next page of results if there are more. + # 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) + @job_messages = args[:job_messages] if args.key?(:job_messages) + @next_page_token = args[:next_page_token] if args.key?(:next_page_token) + end + end + + # A particular message pertaining to a Dataflow job. + class JobMessage + include Google::Apis::Core::Hashable + + # Identifies the message. This is automatically generated by the service; the + # caller should treat it as an opaque string. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # The timestamp of the message. + # Corresponds to the JSON property `time` + # @return [String] + attr_accessor :time + + # The text of the message. + # Corresponds to the JSON property `messageText` + # @return [String] + attr_accessor :message_text + + # Importance level of the message. + # Corresponds to the JSON property `messageImportance` + # @return [String] + attr_accessor :message_importance + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @time = args[:time] if args.key?(:time) + @message_text = args[:message_text] if args.key?(:message_text) + @message_importance = args[:message_importance] if args.key?(:message_importance) + end + end + + # JobMetrics contains a collection of metrics descibing the detailed progress of + # a Dataflow job. Metrics correspond to user-defined and system-defined metrics + # in the job. This resource captures only the most recent values of each metric; + # time-series data can be queried for them (under the same metric names) from + # Cloud Monitoring. + class JobMetrics + include Google::Apis::Core::Hashable + + # Timestamp as of which metric values are current. + # Corresponds to the JSON property `metricTime` + # @return [String] + attr_accessor :metric_time + + # All metrics for this job. + # Corresponds to the JSON property `metrics` + # @return [Array] + attr_accessor :metrics + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @metric_time = args[:metric_time] if args.key?(:metric_time) + @metrics = args[:metrics] if args.key?(:metrics) + end + end + + # Describes the state of a metric. + class MetricUpdate + include Google::Apis::Core::Hashable + + # Identifies a metric, by describing the source which generated the metric. + # Corresponds to the JSON property `name` + # @return [Google::Apis::DataflowV1b3::MetricStructuredName] + attr_accessor :name + + # Metric aggregation kind. The possible metric aggregation kinds are "Sum", "Max" + # , "Min", "Mean", "Set", "And", and "Or". The specified aggregation kind is + # case-insensitive. If omitted, this is not an aggregated value but instead a + # single metric sample value. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # True if this metric is reported as the total cumulative aggregate value + # accumulated since the worker started working on this WorkItem. By default this + # is false, indicating that this metric is reported as a delta that is not + # associated with any WorkItem. + # Corresponds to the JSON property `cumulative` + # @return [Boolean] + attr_accessor :cumulative + alias_method :cumulative?, :cumulative + + # Worker-computed aggregate value for aggregation kinds "Sum", "Max", "Min", " + # And", and "Or". The possible value types are Long, Double, and Boolean. + # Corresponds to the JSON property `scalar` + # @return [Object] + attr_accessor :scalar + + # Worker-computed aggregate value for the "Mean" aggregation kind. This holds + # the sum of the aggregated values and is used in combination with mean_count + # below to obtain the actual mean aggregate value. The only possible value types + # are Long and Double. + # Corresponds to the JSON property `meanSum` + # @return [Object] + attr_accessor :mean_sum + + # Worker-computed aggregate value for the "Mean" aggregation kind. This holds + # the count of the aggregated values and is used in combination with mean_sum + # above to obtain the actual mean aggregate value. The only possible value type + # is Long. + # Corresponds to the JSON property `meanCount` + # @return [Object] + attr_accessor :mean_count + + # Worker-computed aggregate value for the "Set" aggregation kind. The only + # possible value type is a list of Values whose type can be Long, Double, or + # String, according to the metric's type. All Values in the list must be of the + # same type. + # Corresponds to the JSON property `set` + # @return [Object] + attr_accessor :set + + # Worker-computed aggregate value for internal use by the Dataflow service. + # Corresponds to the JSON property `internal` + # @return [Object] + attr_accessor :internal + + # Timestamp associated with the metric value. Optional when workers are + # reporting work progress; it will be filled in responses from the metrics API. + # Corresponds to the JSON property `updateTime` + # @return [String] + attr_accessor :update_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @kind = args[:kind] if args.key?(:kind) + @cumulative = args[:cumulative] if args.key?(:cumulative) + @scalar = args[:scalar] if args.key?(:scalar) + @mean_sum = args[:mean_sum] if args.key?(:mean_sum) + @mean_count = args[:mean_count] if args.key?(:mean_count) + @set = args[:set] if args.key?(:set) + @internal = args[:internal] if args.key?(:internal) + @update_time = args[:update_time] if args.key?(:update_time) + end + end + + # Identifies a metric, by describing the source which generated the metric. + class MetricStructuredName + include Google::Apis::Core::Hashable + + # Origin (namespace) of metric name. May be blank for user-define metrics; will + # be "dataflow" for metrics defined by the Dataflow service or SDK. + # Corresponds to the JSON property `origin` + # @return [String] + attr_accessor :origin + + # Worker-defined metric name. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Zero or more labeled fields which identify the part of the job this metric is + # associated with, such as the name of a step or collection. For example, built- + # in counters associated with steps will have context['step'] = . Counters + # associated with PCollections in the SDK will have context['pcollection'] = + # . + # Corresponds to the JSON property `context` + # @return [Hash] + attr_accessor :context + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @origin = args[:origin] if args.key?(:origin) + @name = args[:name] if args.key?(:name) + @context = args[:context] if args.key?(:context) + end + end + + # Request to create a Dataflow job. + class CreateJobFromTemplateRequest + include Google::Apis::Core::Hashable + + # A path to the serialized JSON representation of the job. + # Corresponds to the JSON property `gcsPath` + # @return [String] + attr_accessor :gcs_path + + # Dynamic parameterization of the job's runtime environment. + # Corresponds to the JSON property `parameters` + # @return [Hash] + attr_accessor :parameters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @gcs_path = args[:gcs_path] if args.key?(:gcs_path) + @parameters = args[:parameters] if args.key?(:parameters) + end + end + + # Request to report the status of WorkItems. + class ReportWorkItemStatusRequest + include Google::Apis::Core::Hashable + + # The ID of the worker reporting the WorkItem status. If this does not match the + # ID of the worker which the Dataflow service believes currently has the lease + # on the WorkItem, the report will be dropped (with an error response). + # Corresponds to the JSON property `workerId` + # @return [String] + attr_accessor :worker_id + + # The order is unimportant, except that the order of the WorkItemServiceState + # messages in the ReportWorkItemStatusResponse corresponds to the order of + # WorkItemStatus messages here. + # Corresponds to the JSON property `workItemStatuses` + # @return [Array] + attr_accessor :work_item_statuses + + # The current timestamp at the worker. + # Corresponds to the JSON property `currentWorkerTime` + # @return [String] + attr_accessor :current_worker_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @worker_id = args[:worker_id] if args.key?(:worker_id) + @work_item_statuses = args[:work_item_statuses] if args.key?(:work_item_statuses) + @current_worker_time = args[:current_worker_time] if args.key?(:current_worker_time) + end + end + + # Conveys a worker's progress through the work described by a WorkItem. + class WorkItemStatus + include Google::Apis::Core::Hashable + + # Identifies the WorkItem. + # Corresponds to the JSON property `workItemId` + # @return [String] + attr_accessor :work_item_id + + # The report index. When a WorkItem is leased, the lease will contain an initial + # report index. When a WorkItem's status is reported to the system, the report + # should be sent with that report index, and the response will contain the index + # the worker should use for the next report. Reports received with unexpected + # index values will be rejected by the service. In order to preserve idempotency, + # the worker should not alter the contents of a report, even if the worker must + # submit the same report multiple times before getting back a response. The + # worker should not submit a subsequent report until the response for the + # previous report had been received from the service. + # Corresponds to the JSON property `reportIndex` + # @return [String] + attr_accessor :report_index + + # Amount of time the worker requests for its lease. + # Corresponds to the JSON property `requestedLeaseDuration` + # @return [String] + attr_accessor :requested_lease_duration + + # True if the WorkItem was completed (successfully or unsuccessfully). + # Corresponds to the JSON property `completed` + # @return [Boolean] + attr_accessor :completed + alias_method :completed?, :completed + + # Specifies errors which occurred during processing. If errors are provided, and + # completed = true, then the WorkItem is considered to have failed. + # Corresponds to the JSON property `errors` + # @return [Array] + attr_accessor :errors + + # Worker output counters for this WorkItem. + # Corresponds to the JSON property `counterUpdates` + # @return [Array] + attr_accessor :counter_updates + + # DEPRECATED in favor of counter_updates. + # Corresponds to the JSON property `metricUpdates` + # @return [Array] + attr_accessor :metric_updates + + # A progress measurement of a WorkItem by a worker. + # Corresponds to the JSON property `reportedProgress` + # @return [Google::Apis::DataflowV1b3::ApproximateReportedProgress] + attr_accessor :reported_progress + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + # Corresponds to the JSON property `stopPosition` + # @return [Google::Apis::DataflowV1b3::Position] + attr_accessor :stop_position + + # When a task splits using WorkItemStatus.dynamic_source_split, this message + # describes the two parts of the split relative to the description of the + # current task's input. + # Corresponds to the JSON property `dynamicSourceSplit` + # @return [Google::Apis::DataflowV1b3::DynamicSourceSplit] + attr_accessor :dynamic_source_split + + # The result of a SourceOperationRequest, specified in + # ReportWorkItemStatusRequest.source_operation when the work item is completed. + # Corresponds to the JSON property `sourceOperationResponse` + # @return [Google::Apis::DataflowV1b3::SourceOperationResponse] + attr_accessor :source_operation_response + + # DEPRECATED in favor of DynamicSourceSplit. + # Corresponds to the JSON property `sourceFork` + # @return [Google::Apis::DataflowV1b3::SourceFork] + attr_accessor :source_fork + + # Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest. + # Corresponds to the JSON property `progress` + # @return [Google::Apis::DataflowV1b3::ApproximateProgress] + attr_accessor :progress + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @work_item_id = args[:work_item_id] if args.key?(:work_item_id) + @report_index = args[:report_index] if args.key?(:report_index) + @requested_lease_duration = args[:requested_lease_duration] if args.key?(:requested_lease_duration) + @completed = args[:completed] if args.key?(:completed) + @errors = args[:errors] if args.key?(:errors) + @counter_updates = args[:counter_updates] if args.key?(:counter_updates) + @metric_updates = args[:metric_updates] if args.key?(:metric_updates) + @reported_progress = args[:reported_progress] if args.key?(:reported_progress) + @stop_position = args[:stop_position] if args.key?(:stop_position) + @dynamic_source_split = args[:dynamic_source_split] if args.key?(:dynamic_source_split) + @source_operation_response = args[:source_operation_response] if args.key?(:source_operation_response) + @source_fork = args[:source_fork] if args.key?(:source_fork) + @progress = args[:progress] if args.key?(:progress) + 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` which 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 purpose. - 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 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 + + # A list of messages that carry the error details. There will be a common set of + # message types for APIs to use. + # Corresponds to the JSON property `details` + # @return [Array>] + attr_accessor :details + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @message = args[:message] if args.key?(:message) + @details = args[:details] if args.key?(:details) + end + end + + # An update to a Counter sent from a worker. + class CounterUpdate + include Google::Apis::Core::Hashable + + # Basic metadata about a counter. + # Corresponds to the JSON property `nameAndKind` + # @return [Google::Apis::DataflowV1b3::NameAndKind] + attr_accessor :name_and_kind + + # The service-generated short identifier for this counter. The short_id -> (name, + # metadata) mapping is constant for the lifetime of a job. + # Corresponds to the JSON property `shortId` + # @return [String] + attr_accessor :short_id + + # A single message which encapsulates structured name and metadata for a given + # counter. + # Corresponds to the JSON property `structuredNameAndMetadata` + # @return [Google::Apis::DataflowV1b3::CounterStructuredNameAndMetadata] + attr_accessor :structured_name_and_metadata + + # True if this counter is reported as the total cumulative aggregate value + # accumulated since the worker started working on this WorkItem. By default this + # is false, indicating that this counter is reported as a delta. + # Corresponds to the JSON property `cumulative` + # @return [Boolean] + attr_accessor :cumulative + alias_method :cumulative?, :cumulative + + # A representation of an int64, n, that is immune to precision loss when encoded + # in JSON. + # Corresponds to the JSON property `integer` + # @return [Google::Apis::DataflowV1b3::SplitInt64] + attr_accessor :integer + + # Floating point value for Sum, Max, Min. + # Corresponds to the JSON property `floatingPoint` + # @return [Float] + attr_accessor :floating_point + + # Boolean value for And, Or. + # Corresponds to the JSON property `boolean` + # @return [Boolean] + attr_accessor :boolean + alias_method :boolean?, :boolean + + # A representation of an integer mean metric contribution. + # Corresponds to the JSON property `integerMean` + # @return [Google::Apis::DataflowV1b3::IntegerMean] + attr_accessor :integer_mean + + # A representation of a floating point mean metric contribution. + # Corresponds to the JSON property `floatingPointMean` + # @return [Google::Apis::DataflowV1b3::FloatingPointMean] + attr_accessor :floating_point_mean + + # A metric value representing a list of integers. + # Corresponds to the JSON property `integerList` + # @return [Google::Apis::DataflowV1b3::IntegerList] + attr_accessor :integer_list + + # A metric value representing a list of floating point numbers. + # Corresponds to the JSON property `floatingPointList` + # @return [Google::Apis::DataflowV1b3::FloatingPointList] + attr_accessor :floating_point_list + + # A metric value representing a list of strings. + # Corresponds to the JSON property `stringList` + # @return [Google::Apis::DataflowV1b3::StringList] + attr_accessor :string_list + + # Value for internally-defined counters used by the Dataflow service. + # Corresponds to the JSON property `internal` + # @return [Object] + attr_accessor :internal + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name_and_kind = args[:name_and_kind] if args.key?(:name_and_kind) + @short_id = args[:short_id] if args.key?(:short_id) + @structured_name_and_metadata = args[:structured_name_and_metadata] if args.key?(:structured_name_and_metadata) + @cumulative = args[:cumulative] if args.key?(:cumulative) + @integer = args[:integer] if args.key?(:integer) + @floating_point = args[:floating_point] if args.key?(:floating_point) + @boolean = args[:boolean] if args.key?(:boolean) + @integer_mean = args[:integer_mean] if args.key?(:integer_mean) + @floating_point_mean = args[:floating_point_mean] if args.key?(:floating_point_mean) + @integer_list = args[:integer_list] if args.key?(:integer_list) + @floating_point_list = args[:floating_point_list] if args.key?(:floating_point_list) + @string_list = args[:string_list] if args.key?(:string_list) + @internal = args[:internal] if args.key?(:internal) + end + end + + # Basic metadata about a counter. + class NameAndKind + include Google::Apis::Core::Hashable + + # Name of the counter. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # Counter aggregation kind. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @kind = args[:kind] if args.key?(:kind) + end + end + + # A single message which encapsulates structured name and metadata for a given + # counter. + class CounterStructuredNameAndMetadata + include Google::Apis::Core::Hashable + + # Identifies a counter within a per-job namespace. Counters whose structured + # names are the same get merged into a single value for the job. + # Corresponds to the JSON property `name` + # @return [Google::Apis::DataflowV1b3::CounterStructuredName] + attr_accessor :name + + # CounterMetadata includes all static non-name non-value counter attributes. + # Corresponds to the JSON property `metadata` + # @return [Google::Apis::DataflowV1b3::CounterMetadata] + attr_accessor :metadata + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @metadata = args[:metadata] if args.key?(:metadata) + end + end + + # Identifies a counter within a per-job namespace. Counters whose structured + # names are the same get merged into a single value for the job. + class CounterStructuredName + include Google::Apis::Core::Hashable + + # Counter name. Not necessarily globally-unique, but unique within the context + # of the other fields. Required. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # One of the standard Origins defined above. + # Corresponds to the JSON property `standardOrigin` + # @return [String] + attr_accessor :standard_origin + + # A string containing the origin of the counter. + # Corresponds to the JSON property `otherOrigin` + # @return [String] + attr_accessor :other_origin + + # System generated name of the original step in the user's graph, before + # optimization. + # Corresponds to the JSON property `originalStepName` + # @return [String] + attr_accessor :original_step_name + + # Name of the optimized step being executed by the workers. + # Corresponds to the JSON property `componentStepName` + # @return [String] + attr_accessor :component_step_name + + # Name of the stage. An execution step contains multiple component steps. + # Corresponds to the JSON property `executionStepName` + # @return [String] + attr_accessor :execution_step_name + + # ID of a particular worker. + # Corresponds to the JSON property `workerId` + # @return [String] + attr_accessor :worker_id + + # Portion of this counter, either key or value. + # Corresponds to the JSON property `portion` + # @return [String] + attr_accessor :portion + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @standard_origin = args[:standard_origin] if args.key?(:standard_origin) + @other_origin = args[:other_origin] if args.key?(:other_origin) + @original_step_name = args[:original_step_name] if args.key?(:original_step_name) + @component_step_name = args[:component_step_name] if args.key?(:component_step_name) + @execution_step_name = args[:execution_step_name] if args.key?(:execution_step_name) + @worker_id = args[:worker_id] if args.key?(:worker_id) + @portion = args[:portion] if args.key?(:portion) + end + end + + # CounterMetadata includes all static non-name non-value counter attributes. + class CounterMetadata + include Google::Apis::Core::Hashable + + # Counter aggregation kind. + # Corresponds to the JSON property `kind` + # @return [String] + attr_accessor :kind + + # Human-readable description of the counter semantics. + # Corresponds to the JSON property `description` + # @return [String] + attr_accessor :description + + # System defined Units, see above enum. + # Corresponds to the JSON property `standardUnits` + # @return [String] + attr_accessor :standard_units + + # A string referring to the unit type. + # Corresponds to the JSON property `otherUnits` + # @return [String] + attr_accessor :other_units + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @kind = args[:kind] if args.key?(:kind) + @description = args[:description] if args.key?(:description) + @standard_units = args[:standard_units] if args.key?(:standard_units) + @other_units = args[:other_units] if args.key?(:other_units) + end + end + + # A representation of an int64, n, that is immune to precision loss when encoded + # in JSON. + class SplitInt64 + include Google::Apis::Core::Hashable + + # The low order bits: n & 0xffffffff. + # Corresponds to the JSON property `lowBits` + # @return [Fixnum] + attr_accessor :low_bits + + # The high order bits, including the sign: n >> 32. + # Corresponds to the JSON property `highBits` + # @return [Fixnum] + attr_accessor :high_bits + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @low_bits = args[:low_bits] if args.key?(:low_bits) + @high_bits = args[:high_bits] if args.key?(:high_bits) + end + end + + # A representation of an integer mean metric contribution. + class IntegerMean + include Google::Apis::Core::Hashable + + # A representation of an int64, n, that is immune to precision loss when encoded + # in JSON. + # Corresponds to the JSON property `sum` + # @return [Google::Apis::DataflowV1b3::SplitInt64] + attr_accessor :sum + + # A representation of an int64, n, that is immune to precision loss when encoded + # in JSON. + # Corresponds to the JSON property `count` + # @return [Google::Apis::DataflowV1b3::SplitInt64] + attr_accessor :count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sum = args[:sum] if args.key?(:sum) + @count = args[:count] if args.key?(:count) + end + end + + # A representation of a floating point mean metric contribution. + class FloatingPointMean + include Google::Apis::Core::Hashable + + # The sum of all values being aggregated. + # Corresponds to the JSON property `sum` + # @return [Float] + attr_accessor :sum + + # A representation of an int64, n, that is immune to precision loss when encoded + # in JSON. + # Corresponds to the JSON property `count` + # @return [Google::Apis::DataflowV1b3::SplitInt64] + attr_accessor :count + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sum = args[:sum] if args.key?(:sum) + @count = args[:count] if args.key?(:count) + end + end + + # A metric value representing a list of integers. + class IntegerList + include Google::Apis::Core::Hashable + + # Elements of the list. + # Corresponds to the JSON property `elements` + # @return [Array] + attr_accessor :elements + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @elements = args[:elements] if args.key?(:elements) + end + end + + # A metric value representing a list of floating point numbers. + class FloatingPointList + include Google::Apis::Core::Hashable + + # Elements of the list. + # Corresponds to the JSON property `elements` + # @return [Array] + attr_accessor :elements + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @elements = args[:elements] if args.key?(:elements) + end + end + + # A metric value representing a list of strings. + class StringList + include Google::Apis::Core::Hashable + + # Elements of the list. + # Corresponds to the JSON property `elements` + # @return [Array] + attr_accessor :elements + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @elements = args[:elements] if args.key?(:elements) + end + end + + # A progress measurement of a WorkItem by a worker. + class ApproximateReportedProgress + include Google::Apis::Core::Hashable + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + # Corresponds to the JSON property `position` + # @return [Google::Apis::DataflowV1b3::Position] + attr_accessor :position + + # Completion as fraction of the input consumed, from 0.0 (beginning, nothing + # consumed), to 1.0 (end of the input, entire input consumed). + # Corresponds to the JSON property `fractionConsumed` + # @return [Float] + attr_accessor :fraction_consumed + + # Represents the level of parallelism in a WorkItem's input, reported by the + # worker. + # Corresponds to the JSON property `remainingParallelism` + # @return [Google::Apis::DataflowV1b3::ReportedParallelism] + attr_accessor :remaining_parallelism + + # Represents the level of parallelism in a WorkItem's input, reported by the + # worker. + # Corresponds to the JSON property `consumedParallelism` + # @return [Google::Apis::DataflowV1b3::ReportedParallelism] + attr_accessor :consumed_parallelism + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @position = args[:position] if args.key?(:position) + @fraction_consumed = args[:fraction_consumed] if args.key?(:fraction_consumed) + @remaining_parallelism = args[:remaining_parallelism] if args.key?(:remaining_parallelism) + @consumed_parallelism = args[:consumed_parallelism] if args.key?(:consumed_parallelism) + end + end + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + class Position + include Google::Apis::Core::Hashable + + # Position is past all other positions. Also useful for the end position of an + # unbounded range. + # Corresponds to the JSON property `end` + # @return [Boolean] + attr_accessor :end + alias_method :end?, :end + + # Position is a string key, ordered lexicographically. + # Corresponds to the JSON property `key` + # @return [String] + attr_accessor :key + + # Position is a byte offset. + # Corresponds to the JSON property `byteOffset` + # @return [String] + attr_accessor :byte_offset + + # Position is a record index. + # Corresponds to the JSON property `recordIndex` + # @return [String] + attr_accessor :record_index + + # CloudPosition is a base64 encoded BatchShufflePosition (with FIXED sharding). + # Corresponds to the JSON property `shufflePosition` + # @return [String] + attr_accessor :shuffle_position + + # A position that encapsulates an inner position and an index for the inner + # position. A ConcatPosition can be used by a reader of a source that + # encapsulates a set of other sources. + # Corresponds to the JSON property `concatPosition` + # @return [Google::Apis::DataflowV1b3::ConcatPosition] + attr_accessor :concat_position + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @end = args[:end] if args.key?(:end) + @key = args[:key] if args.key?(:key) + @byte_offset = args[:byte_offset] if args.key?(:byte_offset) + @record_index = args[:record_index] if args.key?(:record_index) + @shuffle_position = args[:shuffle_position] if args.key?(:shuffle_position) + @concat_position = args[:concat_position] if args.key?(:concat_position) + end + end + + # A position that encapsulates an inner position and an index for the inner + # position. A ConcatPosition can be used by a reader of a source that + # encapsulates a set of other sources. + class ConcatPosition + include Google::Apis::Core::Hashable + + # Index of the inner source. + # Corresponds to the JSON property `index` + # @return [Fixnum] + attr_accessor :index + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + # Corresponds to the JSON property `position` + # @return [Google::Apis::DataflowV1b3::Position] + attr_accessor :position + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @index = args[:index] if args.key?(:index) + @position = args[:position] if args.key?(:position) + end + end + + # Represents the level of parallelism in a WorkItem's input, reported by the + # worker. + class ReportedParallelism + include Google::Apis::Core::Hashable + + # Specifies whether the parallelism is infinite. If true, "value" is ignored. + # Infinite parallelism means the service will assume that the work item can + # always be split into more non-empty work items by dynamic splitting. This is a + # work-around for lack of support for infinity by the current JSON-based Java + # RPC stack. + # Corresponds to the JSON property `isInfinite` + # @return [Boolean] + attr_accessor :is_infinite + alias_method :is_infinite?, :is_infinite + + # Specifies the level of parallelism in case it is finite. + # Corresponds to the JSON property `value` + # @return [Float] + attr_accessor :value + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @is_infinite = args[:is_infinite] if args.key?(:is_infinite) + @value = args[:value] if args.key?(:value) + end + end + + # When a task splits using WorkItemStatus.dynamic_source_split, this message + # describes the two parts of the split relative to the description of the + # current task's input. + class DynamicSourceSplit + include Google::Apis::Core::Hashable + + # Specification of one of the bundles produced as a result of splitting a Source + # (e.g. when executing a SourceSplitRequest, or when splitting an active task + # using WorkItemStatus.dynamic_source_split), relative to the source being split. + # Corresponds to the JSON property `primary` + # @return [Google::Apis::DataflowV1b3::DerivedSource] + attr_accessor :primary + + # Specification of one of the bundles produced as a result of splitting a Source + # (e.g. when executing a SourceSplitRequest, or when splitting an active task + # using WorkItemStatus.dynamic_source_split), relative to the source being split. + # Corresponds to the JSON property `residual` + # @return [Google::Apis::DataflowV1b3::DerivedSource] + attr_accessor :residual + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @primary = args[:primary] if args.key?(:primary) + @residual = args[:residual] if args.key?(:residual) + end + end + + # Specification of one of the bundles produced as a result of splitting a Source + # (e.g. when executing a SourceSplitRequest, or when splitting an active task + # using WorkItemStatus.dynamic_source_split), relative to the source being split. + class DerivedSource + include Google::Apis::Core::Hashable + + # A source that records can be read and decoded from. + # Corresponds to the JSON property `source` + # @return [Google::Apis::DataflowV1b3::Source] + attr_accessor :source + + # What source to base the produced source on (if any). + # Corresponds to the JSON property `derivationMode` + # @return [String] + attr_accessor :derivation_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @source = args[:source] if args.key?(:source) + @derivation_mode = args[:derivation_mode] if args.key?(:derivation_mode) + end + end + + # A source that records can be read and decoded from. + class Source + include Google::Apis::Core::Hashable + + # The source to read from, plus its parameters. + # Corresponds to the JSON property `spec` + # @return [Hash] + attr_accessor :spec + + # The codec to use to decode data read from the source. + # Corresponds to the JSON property `codec` + # @return [Hash] + attr_accessor :codec + + # While splitting, sources may specify the produced bundles as differences + # against another source, in order to save backend-side memory and allow bigger + # jobs. For details, see SourceSplitRequest. To support this use case, the full + # set of parameters of the source is logically obtained by taking the latest + # explicitly specified value of each parameter in the order: base_specs (later + # items win), spec (overrides anything in base_specs). + # Corresponds to the JSON property `baseSpecs` + # @return [Array>] + attr_accessor :base_specs + + # Metadata about a Source useful for automatically optimizing and tuning the + # pipeline, etc. + # Corresponds to the JSON property `metadata` + # @return [Google::Apis::DataflowV1b3::SourceMetadata] + attr_accessor :metadata + + # Setting this value to true hints to the framework that the source doesn't need + # splitting, and using SourceSplitRequest on it would yield + # SOURCE_SPLIT_OUTCOME_USE_CURRENT. E.g. a file splitter may set this to true + # when splitting a single file into a set of byte ranges of appropriate size, + # and set this to false when splitting a filepattern into individual files. + # However, for efficiency, a file splitter may decide to produce file subranges + # directly from the filepattern to avoid a splitting round-trip. See + # SourceSplitRequest for an overview of the splitting process. This field is + # meaningful only in the Source objects populated by the user (e.g. when filling + # in a DerivedSource). Source objects supplied by the framework to the user don' + # t have this field populated. + # Corresponds to the JSON property `doesNotNeedSplitting` + # @return [Boolean] + attr_accessor :does_not_need_splitting + alias_method :does_not_need_splitting?, :does_not_need_splitting + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @spec = args[:spec] if args.key?(:spec) + @codec = args[:codec] if args.key?(:codec) + @base_specs = args[:base_specs] if args.key?(:base_specs) + @metadata = args[:metadata] if args.key?(:metadata) + @does_not_need_splitting = args[:does_not_need_splitting] if args.key?(:does_not_need_splitting) + end + end + + # Metadata about a Source useful for automatically optimizing and tuning the + # pipeline, etc. + class SourceMetadata + include Google::Apis::Core::Hashable + + # Whether this source is known to produce key/value pairs with the (encoded) + # keys in lexicographically sorted order. + # Corresponds to the JSON property `producesSortedKeys` + # @return [Boolean] + attr_accessor :produces_sorted_keys + alias_method :produces_sorted_keys?, :produces_sorted_keys + + # Specifies that the size of this source is known to be infinite (this is a + # streaming source). + # Corresponds to the JSON property `infinite` + # @return [Boolean] + attr_accessor :infinite + alias_method :infinite?, :infinite + + # An estimate of the total size (in bytes) of the data that would be read from + # this source. This estimate is in terms of external storage size, before any + # decompression or other processing done by the reader. + # Corresponds to the JSON property `estimatedSizeBytes` + # @return [String] + attr_accessor :estimated_size_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @produces_sorted_keys = args[:produces_sorted_keys] if args.key?(:produces_sorted_keys) + @infinite = args[:infinite] if args.key?(:infinite) + @estimated_size_bytes = args[:estimated_size_bytes] if args.key?(:estimated_size_bytes) + end + end + + # The result of a SourceOperationRequest, specified in + # ReportWorkItemStatusRequest.source_operation when the work item is completed. + class SourceOperationResponse + include Google::Apis::Core::Hashable + + # The response to a SourceSplitRequest. + # Corresponds to the JSON property `split` + # @return [Google::Apis::DataflowV1b3::SourceSplitResponse] + attr_accessor :split + + # The result of a SourceGetMetadataOperation. + # Corresponds to the JSON property `getMetadata` + # @return [Google::Apis::DataflowV1b3::SourceGetMetadataResponse] + attr_accessor :get_metadata + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @split = args[:split] if args.key?(:split) + @get_metadata = args[:get_metadata] if args.key?(:get_metadata) + end + end + + # The response to a SourceSplitRequest. + class SourceSplitResponse + include Google::Apis::Core::Hashable + + # Indicates whether splitting happened and produced a list of bundles. If this + # is USE_CURRENT_SOURCE_AS_IS, the current source should be processed "as is" + # without splitting. "bundles" is ignored in this case. If this is + # SPLITTING_HAPPENED, then "bundles" contains a list of bundles into which the + # source was split. + # Corresponds to the JSON property `outcome` + # @return [String] + attr_accessor :outcome + + # If outcome is SPLITTING_HAPPENED, then this is a list of bundles into which + # the source was split. Otherwise this field is ignored. This list can be empty, + # which means the source represents an empty input. + # Corresponds to the JSON property `bundles` + # @return [Array] + attr_accessor :bundles + + # DEPRECATED in favor of bundles. + # Corresponds to the JSON property `shards` + # @return [Array] + attr_accessor :shards + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @outcome = args[:outcome] if args.key?(:outcome) + @bundles = args[:bundles] if args.key?(:bundles) + @shards = args[:shards] if args.key?(:shards) + end + end + + # DEPRECATED in favor of DerivedSource. + class SourceSplitShard + include Google::Apis::Core::Hashable + + # A source that records can be read and decoded from. + # Corresponds to the JSON property `source` + # @return [Google::Apis::DataflowV1b3::Source] + attr_accessor :source + + # DEPRECATED + # Corresponds to the JSON property `derivationMode` + # @return [String] + attr_accessor :derivation_mode + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @source = args[:source] if args.key?(:source) + @derivation_mode = args[:derivation_mode] if args.key?(:derivation_mode) + end + end + + # The result of a SourceGetMetadataOperation. + class SourceGetMetadataResponse + include Google::Apis::Core::Hashable + + # Metadata about a Source useful for automatically optimizing and tuning the + # pipeline, etc. + # Corresponds to the JSON property `metadata` + # @return [Google::Apis::DataflowV1b3::SourceMetadata] + attr_accessor :metadata + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @metadata = args[:metadata] if args.key?(:metadata) + end + end + + # DEPRECATED in favor of DynamicSourceSplit. + class SourceFork + include Google::Apis::Core::Hashable + + # DEPRECATED in favor of DerivedSource. + # Corresponds to the JSON property `primary` + # @return [Google::Apis::DataflowV1b3::SourceSplitShard] + attr_accessor :primary + + # DEPRECATED in favor of DerivedSource. + # Corresponds to the JSON property `residual` + # @return [Google::Apis::DataflowV1b3::SourceSplitShard] + attr_accessor :residual + + # Specification of one of the bundles produced as a result of splitting a Source + # (e.g. when executing a SourceSplitRequest, or when splitting an active task + # using WorkItemStatus.dynamic_source_split), relative to the source being split. + # Corresponds to the JSON property `primarySource` + # @return [Google::Apis::DataflowV1b3::DerivedSource] + attr_accessor :primary_source + + # Specification of one of the bundles produced as a result of splitting a Source + # (e.g. when executing a SourceSplitRequest, or when splitting an active task + # using WorkItemStatus.dynamic_source_split), relative to the source being split. + # Corresponds to the JSON property `residualSource` + # @return [Google::Apis::DataflowV1b3::DerivedSource] + attr_accessor :residual_source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @primary = args[:primary] if args.key?(:primary) + @residual = args[:residual] if args.key?(:residual) + @primary_source = args[:primary_source] if args.key?(:primary_source) + @residual_source = args[:residual_source] if args.key?(:residual_source) + end + end + + # Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest. + class ApproximateProgress + include Google::Apis::Core::Hashable + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + # Corresponds to the JSON property `position` + # @return [Google::Apis::DataflowV1b3::Position] + attr_accessor :position + + # Obsolete. + # Corresponds to the JSON property `percentComplete` + # @return [Float] + attr_accessor :percent_complete + + # Obsolete. + # Corresponds to the JSON property `remainingTime` + # @return [String] + attr_accessor :remaining_time + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @position = args[:position] if args.key?(:position) + @percent_complete = args[:percent_complete] if args.key?(:percent_complete) + @remaining_time = args[:remaining_time] if args.key?(:remaining_time) + end + end + + # Response from a request to report the status of WorkItems. + class ReportWorkItemStatusResponse + include Google::Apis::Core::Hashable + + # A set of messages indicating the service-side state for each WorkItem whose + # status was reported, in the same order as the WorkItemStatus messages in the + # ReportWorkItemStatusRequest which resulting in this response. + # Corresponds to the JSON property `workItemServiceStates` + # @return [Array] + attr_accessor :work_item_service_states + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @work_item_service_states = args[:work_item_service_states] if args.key?(:work_item_service_states) + end + end + + # The Dataflow service's idea of the current state of a WorkItem being processed + # by a worker. + class WorkItemServiceState + include Google::Apis::Core::Hashable + + # A suggestion by the service to the worker to dynamically split the WorkItem. + # Corresponds to the JSON property `splitRequest` + # @return [Google::Apis::DataflowV1b3::ApproximateSplitRequest] + attr_accessor :split_request + + # Time at which the current lease will expire. + # Corresponds to the JSON property `leaseExpireTime` + # @return [String] + attr_accessor :lease_expire_time + + # New recommended reporting interval. + # Corresponds to the JSON property `reportStatusInterval` + # @return [String] + attr_accessor :report_status_interval + + # Other data returned by the service, specific to the particular worker harness. + # Corresponds to the JSON property `harnessData` + # @return [Hash] + attr_accessor :harness_data + + # The index value to use for the next report sent by the worker. Note: If the + # report call fails for whatever reason, the worker should reuse this index for + # subsequent report attempts. + # Corresponds to the JSON property `nextReportIndex` + # @return [String] + attr_accessor :next_report_index + + # The short ids that workers should use in subsequent metric updates. Workers + # should strive to use short ids whenever possible, but it is ok to request the + # short_id again if a worker lost track of it (e.g. if the worker is recovering + # from a crash). NOTE: it is possible that the response may have short ids for a + # subset of the metrics. + # Corresponds to the JSON property `metricShortId` + # @return [Array] + attr_accessor :metric_short_id + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + # Corresponds to the JSON property `suggestedStopPosition` + # @return [Google::Apis::DataflowV1b3::Position] + attr_accessor :suggested_stop_position + + # Obsolete in favor of ApproximateReportedProgress and ApproximateSplitRequest. + # Corresponds to the JSON property `suggestedStopPoint` + # @return [Google::Apis::DataflowV1b3::ApproximateProgress] + attr_accessor :suggested_stop_point + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @split_request = args[:split_request] if args.key?(:split_request) + @lease_expire_time = args[:lease_expire_time] if args.key?(:lease_expire_time) + @report_status_interval = args[:report_status_interval] if args.key?(:report_status_interval) + @harness_data = args[:harness_data] if args.key?(:harness_data) + @next_report_index = args[:next_report_index] if args.key?(:next_report_index) + @metric_short_id = args[:metric_short_id] if args.key?(:metric_short_id) + @suggested_stop_position = args[:suggested_stop_position] if args.key?(:suggested_stop_position) + @suggested_stop_point = args[:suggested_stop_point] if args.key?(:suggested_stop_point) + end + end + + # A suggestion by the service to the worker to dynamically split the WorkItem. + class ApproximateSplitRequest + include Google::Apis::Core::Hashable + + # Position defines a position within a collection of data. The value can be + # either the end position, a key (used with ordered collections), a byte offset, + # or a record index. + # Corresponds to the JSON property `position` + # @return [Google::Apis::DataflowV1b3::Position] + attr_accessor :position + + # A fraction at which to split the work item, from 0.0 (beginning of the input) + # to 1.0 (end of the input). + # Corresponds to the JSON property `fractionConsumed` + # @return [Float] + attr_accessor :fraction_consumed + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @position = args[:position] if args.key?(:position) + @fraction_consumed = args[:fraction_consumed] if args.key?(:fraction_consumed) + end + end + + # The metric short id is returned to the user alongside an offset into + # ReportWorkItemStatusRequest + class MetricShortId + include Google::Apis::Core::Hashable + + # The index of the corresponding metric in the ReportWorkItemStatusRequest. + # Required. + # Corresponds to the JSON property `metricIndex` + # @return [Fixnum] + attr_accessor :metric_index + + # The service-generated short identifier for the metric. + # Corresponds to the JSON property `shortId` + # @return [String] + attr_accessor :short_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @metric_index = args[:metric_index] if args.key?(:metric_index) + @short_id = args[:short_id] if args.key?(:short_id) + end + end + + # Request to lease WorkItems. + class LeaseWorkItemRequest + include Google::Apis::Core::Hashable + + # Filter for WorkItem type. + # Corresponds to the JSON property `workItemTypes` + # @return [Array] + attr_accessor :work_item_types + + # Worker capabilities. WorkItems might be limited to workers with specific + # capabilities. + # Corresponds to the JSON property `workerCapabilities` + # @return [Array] + attr_accessor :worker_capabilities + + # The initial lease period. + # Corresponds to the JSON property `requestedLeaseDuration` + # @return [String] + attr_accessor :requested_lease_duration + + # The current timestamp at the worker. + # Corresponds to the JSON property `currentWorkerTime` + # @return [String] + attr_accessor :current_worker_time + + # Identifies the worker leasing work -- typically the ID of the virtual machine + # running the worker. + # Corresponds to the JSON property `workerId` + # @return [String] + attr_accessor :worker_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @work_item_types = args[:work_item_types] if args.key?(:work_item_types) + @worker_capabilities = args[:worker_capabilities] if args.key?(:worker_capabilities) + @requested_lease_duration = args[:requested_lease_duration] if args.key?(:requested_lease_duration) + @current_worker_time = args[:current_worker_time] if args.key?(:current_worker_time) + @worker_id = args[:worker_id] if args.key?(:worker_id) + end + end + + # Response to a request to lease WorkItems. + class LeaseWorkItemResponse + include Google::Apis::Core::Hashable + + # A list of the leased WorkItems. + # Corresponds to the JSON property `workItems` + # @return [Array] + attr_accessor :work_items + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @work_items = args[:work_items] if args.key?(:work_items) + end + end + + # WorkItem represents basic information about a WorkItem to be executed in the + # cloud. + class WorkItem + include Google::Apis::Core::Hashable + + # Identifies this WorkItem. + # Corresponds to the JSON property `id` + # @return [String] + attr_accessor :id + + # Identifies the cloud project this WorkItem belongs to. + # Corresponds to the JSON property `projectId` + # @return [String] + attr_accessor :project_id + + # Identifies the workflow job this WorkItem belongs to. + # Corresponds to the JSON property `jobId` + # @return [String] + attr_accessor :job_id + + # Any required packages that need to be fetched in order to execute this + # WorkItem. + # Corresponds to the JSON property `packages` + # @return [Array] + attr_accessor :packages + + # MapTask consists of an ordered set of instructions, each of which describes + # one particular low-level operation for the worker to perform in order to + # accomplish the MapTask's WorkItem. Each instruction must appear in the list + # before any instructions which depends on its output. + # Corresponds to the JSON property `mapTask` + # @return [Google::Apis::DataflowV1b3::MapTask] + attr_accessor :map_task + + # Describes a particular function to invoke. + # Corresponds to the JSON property `seqMapTask` + # @return [Google::Apis::DataflowV1b3::SeqMapTask] + attr_accessor :seq_map_task + + # A task which consists of a shell command for the worker to execute. + # Corresponds to the JSON property `shellTask` + # @return [Google::Apis::DataflowV1b3::ShellTask] + attr_accessor :shell_task + + # A task which initializes part of a streaming Dataflow job. + # Corresponds to the JSON property `streamingSetupTask` + # @return [Google::Apis::DataflowV1b3::StreamingSetupTask] + attr_accessor :streaming_setup_task + + # A work item that represents the different operations that can be performed on + # a user-defined Source specification. + # Corresponds to the JSON property `sourceOperationTask` + # @return [Google::Apis::DataflowV1b3::SourceOperationRequest] + attr_accessor :source_operation_task + + # A task which describes what action should be performed for the specified + # streaming computation ranges. + # Corresponds to the JSON property `streamingComputationTask` + # @return [Google::Apis::DataflowV1b3::StreamingComputationTask] + attr_accessor :streaming_computation_task + + # A task that carries configuration information for streaming computations. + # Corresponds to the JSON property `streamingConfigTask` + # @return [Google::Apis::DataflowV1b3::StreamingConfigTask] + attr_accessor :streaming_config_task + + # Recommended reporting interval. + # Corresponds to the JSON property `reportStatusInterval` + # @return [String] + attr_accessor :report_status_interval + + # Time when the lease on this Work will expire. + # Corresponds to the JSON property `leaseExpireTime` + # @return [String] + attr_accessor :lease_expire_time + + # Work item-specific configuration as an opaque blob. + # Corresponds to the JSON property `configuration` + # @return [String] + attr_accessor :configuration + + # The initial index to use when reporting the status of the WorkItem. + # Corresponds to the JSON property `initialReportIndex` + # @return [String] + attr_accessor :initial_report_index + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @id = args[:id] if args.key?(:id) + @project_id = args[:project_id] if args.key?(:project_id) + @job_id = args[:job_id] if args.key?(:job_id) + @packages = args[:packages] if args.key?(:packages) + @map_task = args[:map_task] if args.key?(:map_task) + @seq_map_task = args[:seq_map_task] if args.key?(:seq_map_task) + @shell_task = args[:shell_task] if args.key?(:shell_task) + @streaming_setup_task = args[:streaming_setup_task] if args.key?(:streaming_setup_task) + @source_operation_task = args[:source_operation_task] if args.key?(:source_operation_task) + @streaming_computation_task = args[:streaming_computation_task] if args.key?(:streaming_computation_task) + @streaming_config_task = args[:streaming_config_task] if args.key?(:streaming_config_task) + @report_status_interval = args[:report_status_interval] if args.key?(:report_status_interval) + @lease_expire_time = args[:lease_expire_time] if args.key?(:lease_expire_time) + @configuration = args[:configuration] if args.key?(:configuration) + @initial_report_index = args[:initial_report_index] if args.key?(:initial_report_index) + end + end + + # MapTask consists of an ordered set of instructions, each of which describes + # one particular low-level operation for the worker to perform in order to + # accomplish the MapTask's WorkItem. Each instruction must appear in the list + # before any instructions which depends on its output. + class MapTask + include Google::Apis::Core::Hashable + + # The instructions in the MapTask. + # Corresponds to the JSON property `instructions` + # @return [Array] + attr_accessor :instructions + + # System-defined name of this MapTask. Unique across the workflow. + # Corresponds to the JSON property `systemName` + # @return [String] + attr_accessor :system_name + + # System-defined name of the stage containing this MapTask. Unique across the + # workflow. + # Corresponds to the JSON property `stageName` + # @return [String] + attr_accessor :stage_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @instructions = args[:instructions] if args.key?(:instructions) + @system_name = args[:system_name] if args.key?(:system_name) + @stage_name = args[:stage_name] if args.key?(:stage_name) + end + end + + # Describes a particular operation comprising a MapTask. + class ParallelInstruction + include Google::Apis::Core::Hashable + + # System-defined name of this operation. Unique across the workflow. + # Corresponds to the JSON property `systemName` + # @return [String] + attr_accessor :system_name + + # User-provided name of this operation. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # System-defined name for the operation in the original workflow graph. + # Corresponds to the JSON property `originalName` + # @return [String] + attr_accessor :original_name + + # An instruction that reads records. Takes no inputs, produces one output. + # Corresponds to the JSON property `read` + # @return [Google::Apis::DataflowV1b3::ReadInstruction] + attr_accessor :read + + # An instruction that writes records. Takes one input, produces no outputs. + # Corresponds to the JSON property `write` + # @return [Google::Apis::DataflowV1b3::WriteInstruction] + attr_accessor :write + + # An instruction that does a ParDo operation. Takes one main input and zero or + # more side inputs, and produces zero or more outputs. Runs user code. + # Corresponds to the JSON property `parDo` + # @return [Google::Apis::DataflowV1b3::ParDoInstruction] + attr_accessor :par_do + + # An instruction that does a partial group-by-key. One input and one output. + # Corresponds to the JSON property `partialGroupByKey` + # @return [Google::Apis::DataflowV1b3::PartialGroupByKeyInstruction] + attr_accessor :partial_group_by_key + + # An instruction that copies its inputs (zero or more) to its (single) output. + # Corresponds to the JSON property `flatten` + # @return [Google::Apis::DataflowV1b3::FlattenInstruction] + attr_accessor :flatten + + # Describes the outputs of the instruction. + # Corresponds to the JSON property `outputs` + # @return [Array] + attr_accessor :outputs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @system_name = args[:system_name] if args.key?(:system_name) + @name = args[:name] if args.key?(:name) + @original_name = args[:original_name] if args.key?(:original_name) + @read = args[:read] if args.key?(:read) + @write = args[:write] if args.key?(:write) + @par_do = args[:par_do] if args.key?(:par_do) + @partial_group_by_key = args[:partial_group_by_key] if args.key?(:partial_group_by_key) + @flatten = args[:flatten] if args.key?(:flatten) + @outputs = args[:outputs] if args.key?(:outputs) + end + end + + # An instruction that reads records. Takes no inputs, produces one output. + class ReadInstruction + include Google::Apis::Core::Hashable + + # A source that records can be read and decoded from. + # Corresponds to the JSON property `source` + # @return [Google::Apis::DataflowV1b3::Source] + attr_accessor :source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @source = args[:source] if args.key?(:source) + end + end + + # An instruction that writes records. Takes one input, produces no outputs. + class WriteInstruction + include Google::Apis::Core::Hashable + + # An input of an instruction, as a reference to an output of a producer + # instruction. + # Corresponds to the JSON property `input` + # @return [Google::Apis::DataflowV1b3::InstructionInput] + attr_accessor :input + + # A sink that records can be encoded and written to. + # Corresponds to the JSON property `sink` + # @return [Google::Apis::DataflowV1b3::Sink] + attr_accessor :sink + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + @sink = args[:sink] if args.key?(:sink) + end + end + + # An input of an instruction, as a reference to an output of a producer + # instruction. + class InstructionInput + include Google::Apis::Core::Hashable + + # The index (origin zero) of the parallel instruction that produces the output + # to be consumed by this input. This index is relative to the list of + # instructions in this input's instruction's containing MapTask. + # Corresponds to the JSON property `producerInstructionIndex` + # @return [Fixnum] + attr_accessor :producer_instruction_index + + # The output index (origin zero) within the producer. + # Corresponds to the JSON property `outputNum` + # @return [Fixnum] + attr_accessor :output_num + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @producer_instruction_index = args[:producer_instruction_index] if args.key?(:producer_instruction_index) + @output_num = args[:output_num] if args.key?(:output_num) + end + end + + # A sink that records can be encoded and written to. + class Sink + include Google::Apis::Core::Hashable + + # The sink to write to, plus its parameters. + # Corresponds to the JSON property `spec` + # @return [Hash] + attr_accessor :spec + + # The codec to use to encode data written to the sink. + # Corresponds to the JSON property `codec` + # @return [Hash] + attr_accessor :codec + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @spec = args[:spec] if args.key?(:spec) + @codec = args[:codec] if args.key?(:codec) + end + end + + # An instruction that does a ParDo operation. Takes one main input and zero or + # more side inputs, and produces zero or more outputs. Runs user code. + class ParDoInstruction + include Google::Apis::Core::Hashable + + # An input of an instruction, as a reference to an output of a producer + # instruction. + # Corresponds to the JSON property `input` + # @return [Google::Apis::DataflowV1b3::InstructionInput] + attr_accessor :input + + # Zero or more side inputs. + # Corresponds to the JSON property `sideInputs` + # @return [Array] + attr_accessor :side_inputs + + # The user function to invoke. + # Corresponds to the JSON property `userFn` + # @return [Hash] + attr_accessor :user_fn + + # The number of outputs. + # Corresponds to the JSON property `numOutputs` + # @return [Fixnum] + attr_accessor :num_outputs + + # Information about each of the outputs, if user_fn is a MultiDoFn. + # Corresponds to the JSON property `multiOutputInfos` + # @return [Array] + attr_accessor :multi_output_infos + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + @side_inputs = args[:side_inputs] if args.key?(:side_inputs) + @user_fn = args[:user_fn] if args.key?(:user_fn) + @num_outputs = args[:num_outputs] if args.key?(:num_outputs) + @multi_output_infos = args[:multi_output_infos] if args.key?(:multi_output_infos) + end + end + + # Information about a side input of a DoFn or an input of a SeqDoFn. + class SideInputInfo + include Google::Apis::Core::Hashable + + # The source(s) to read element(s) from to get the value of this side input. If + # more than one source, then the elements are taken from the sources, in the + # specified order if order matters. At least one source is required. + # Corresponds to the JSON property `sources` + # @return [Array] + attr_accessor :sources + + # How to interpret the source element(s) as a side input value. + # Corresponds to the JSON property `kind` + # @return [Hash] + attr_accessor :kind + + # The id of the tag the user code will access this side input by; this should + # correspond to the tag of some MultiOutputInfo. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @sources = args[:sources] if args.key?(:sources) + @kind = args[:kind] if args.key?(:kind) + @tag = args[:tag] if args.key?(:tag) + end + end + + # Information about an output of a multi-output DoFn. + class MultiOutputInfo + include Google::Apis::Core::Hashable + + # The id of the tag the user code will emit to this output by; this should + # correspond to the tag of some SideInputInfo. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @tag = args[:tag] if args.key?(:tag) + end + end + + # An instruction that does a partial group-by-key. One input and one output. + class PartialGroupByKeyInstruction + include Google::Apis::Core::Hashable + + # An input of an instruction, as a reference to an output of a producer + # instruction. + # Corresponds to the JSON property `input` + # @return [Google::Apis::DataflowV1b3::InstructionInput] + attr_accessor :input + + # The codec to use for interpreting an element in the input PTable. + # Corresponds to the JSON property `inputElementCodec` + # @return [Hash] + attr_accessor :input_element_codec + + # The value combining function to invoke. + # Corresponds to the JSON property `valueCombiningFn` + # @return [Hash] + attr_accessor :value_combining_fn + + # Zero or more side inputs. + # Corresponds to the JSON property `sideInputs` + # @return [Array] + attr_accessor :side_inputs + + # If this instruction includes a combining function, this is the name of the + # CombineValues instruction lifted into this instruction. + # Corresponds to the JSON property `originalCombineValuesStepName` + # @return [String] + attr_accessor :original_combine_values_step_name + + # If this instruction includes a combining function this is the name of the + # intermediate store between the GBK and the CombineValues. + # Corresponds to the JSON property `originalCombineValuesInputStoreName` + # @return [String] + attr_accessor :original_combine_values_input_store_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @input = args[:input] if args.key?(:input) + @input_element_codec = args[:input_element_codec] if args.key?(:input_element_codec) + @value_combining_fn = args[:value_combining_fn] if args.key?(:value_combining_fn) + @side_inputs = args[:side_inputs] if args.key?(:side_inputs) + @original_combine_values_step_name = args[:original_combine_values_step_name] if args.key?(:original_combine_values_step_name) + @original_combine_values_input_store_name = args[:original_combine_values_input_store_name] if args.key?(:original_combine_values_input_store_name) + end + end + + # An instruction that copies its inputs (zero or more) to its (single) output. + class FlattenInstruction + include Google::Apis::Core::Hashable + + # Describes the inputs to the flatten instruction. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inputs = args[:inputs] if args.key?(:inputs) + end + end + + # An output of an instruction. + class InstructionOutput + include Google::Apis::Core::Hashable + + # The user-provided name of this output. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # System-defined name of this output. Unique across the workflow. + # Corresponds to the JSON property `systemName` + # @return [String] + attr_accessor :system_name + + # System-defined name for this output in the original workflow graph. Outputs + # that do not contribute to an original instruction do not set this. + # Corresponds to the JSON property `originalName` + # @return [String] + attr_accessor :original_name + + # The codec to use to encode data being written via this output. + # Corresponds to the JSON property `codec` + # @return [Hash] + attr_accessor :codec + + # For system-generated byte and mean byte metrics, certain instructions should + # only report the key size. + # Corresponds to the JSON property `onlyCountKeyBytes` + # @return [Boolean] + attr_accessor :only_count_key_bytes + alias_method :only_count_key_bytes?, :only_count_key_bytes + + # For system-generated byte and mean byte metrics, certain instructions should + # only report the value size. + # Corresponds to the JSON property `onlyCountValueBytes` + # @return [Boolean] + attr_accessor :only_count_value_bytes + alias_method :only_count_value_bytes?, :only_count_value_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @name = args[:name] if args.key?(:name) + @system_name = args[:system_name] if args.key?(:system_name) + @original_name = args[:original_name] if args.key?(:original_name) + @codec = args[:codec] if args.key?(:codec) + @only_count_key_bytes = args[:only_count_key_bytes] if args.key?(:only_count_key_bytes) + @only_count_value_bytes = args[:only_count_value_bytes] if args.key?(:only_count_value_bytes) + end + end + + # Describes a particular function to invoke. + class SeqMapTask + include Google::Apis::Core::Hashable + + # Information about each of the inputs. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + # The user function to invoke. + # Corresponds to the JSON property `userFn` + # @return [Hash] + attr_accessor :user_fn + + # Information about each of the outputs. + # Corresponds to the JSON property `outputInfos` + # @return [Array] + attr_accessor :output_infos + + # The user-provided name of the SeqDo operation. + # Corresponds to the JSON property `name` + # @return [String] + attr_accessor :name + + # System-defined name of the SeqDo operation. Unique across the workflow. + # Corresponds to the JSON property `systemName` + # @return [String] + attr_accessor :system_name + + # System-defined name of the stage containing the SeqDo operation. Unique across + # the workflow. + # Corresponds to the JSON property `stageName` + # @return [String] + attr_accessor :stage_name + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @inputs = args[:inputs] if args.key?(:inputs) + @user_fn = args[:user_fn] if args.key?(:user_fn) + @output_infos = args[:output_infos] if args.key?(:output_infos) + @name = args[:name] if args.key?(:name) + @system_name = args[:system_name] if args.key?(:system_name) + @stage_name = args[:stage_name] if args.key?(:stage_name) + end + end + + # Information about an output of a SeqMapTask. + class SeqMapTaskOutputInfo + include Google::Apis::Core::Hashable + + # The id of the TupleTag the user code will tag the output value by. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + # A sink that records can be encoded and written to. + # Corresponds to the JSON property `sink` + # @return [Google::Apis::DataflowV1b3::Sink] + attr_accessor :sink + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @tag = args[:tag] if args.key?(:tag) + @sink = args[:sink] if args.key?(:sink) + end + end + + # A task which consists of a shell command for the worker to execute. + class ShellTask + include Google::Apis::Core::Hashable + + # The shell command to run. + # Corresponds to the JSON property `command` + # @return [String] + attr_accessor :command + + # Exit code for the task. + # Corresponds to the JSON property `exitCode` + # @return [Fixnum] + attr_accessor :exit_code + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @command = args[:command] if args.key?(:command) + @exit_code = args[:exit_code] if args.key?(:exit_code) + end + end + + # A task which initializes part of a streaming Dataflow job. + class StreamingSetupTask + include Google::Apis::Core::Hashable + + # The TCP port on which the worker should listen for messages from other + # streaming computation workers. + # Corresponds to the JSON property `receiveWorkPort` + # @return [Fixnum] + attr_accessor :receive_work_port + + # The TCP port used by the worker to communicate with the Dataflow worker + # harness. + # Corresponds to the JSON property `workerHarnessPort` + # @return [Fixnum] + attr_accessor :worker_harness_port + + # Global topology of the streaming Dataflow job, including all computations and + # their sharded locations. + # Corresponds to the JSON property `streamingComputationTopology` + # @return [Google::Apis::DataflowV1b3::TopologyConfig] + attr_accessor :streaming_computation_topology + + # The user has requested drain. + # Corresponds to the JSON property `drain` + # @return [Boolean] + attr_accessor :drain + alias_method :drain?, :drain + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @receive_work_port = args[:receive_work_port] if args.key?(:receive_work_port) + @worker_harness_port = args[:worker_harness_port] if args.key?(:worker_harness_port) + @streaming_computation_topology = args[:streaming_computation_topology] if args.key?(:streaming_computation_topology) + @drain = args[:drain] if args.key?(:drain) + end + end + + # Global topology of the streaming Dataflow job, including all computations and + # their sharded locations. + class TopologyConfig + include Google::Apis::Core::Hashable + + # The computations associated with a streaming Dataflow job. + # Corresponds to the JSON property `computations` + # @return [Array] + attr_accessor :computations + + # The disks assigned to a streaming Dataflow job. + # Corresponds to the JSON property `dataDiskAssignments` + # @return [Array] + attr_accessor :data_disk_assignments + + # Maps user stage names to stable computation names. + # Corresponds to the JSON property `userStageToComputationNameMap` + # @return [Hash] + attr_accessor :user_stage_to_computation_name_map + + # The size (in bits) of keys that will be assigned to source messages. + # Corresponds to the JSON property `forwardingKeyBits` + # @return [Fixnum] + attr_accessor :forwarding_key_bits + + # Version number for persistent state. + # Corresponds to the JSON property `persistentStateVersion` + # @return [Fixnum] + attr_accessor :persistent_state_version + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @computations = args[:computations] if args.key?(:computations) + @data_disk_assignments = args[:data_disk_assignments] if args.key?(:data_disk_assignments) + @user_stage_to_computation_name_map = args[:user_stage_to_computation_name_map] if args.key?(:user_stage_to_computation_name_map) + @forwarding_key_bits = args[:forwarding_key_bits] if args.key?(:forwarding_key_bits) + @persistent_state_version = args[:persistent_state_version] if args.key?(:persistent_state_version) + end + end + + # All configuration data for a particular Computation. + class ComputationTopology + include Google::Apis::Core::Hashable + + # The system stage name. + # Corresponds to the JSON property `systemStageName` + # @return [String] + attr_accessor :system_stage_name + + # The ID of the computation. + # Corresponds to the JSON property `computationId` + # @return [String] + attr_accessor :computation_id + + # The user stage name. + # Corresponds to the JSON property `userStageName` + # @return [String] + attr_accessor :user_stage_name + + # The key ranges processed by the computation. + # Corresponds to the JSON property `keyRanges` + # @return [Array] + attr_accessor :key_ranges + + # The inputs to the computation. + # Corresponds to the JSON property `inputs` + # @return [Array] + attr_accessor :inputs + + # The outputs from the computation. + # Corresponds to the JSON property `outputs` + # @return [Array] + attr_accessor :outputs + + # The state family values. + # Corresponds to the JSON property `stateFamilies` + # @return [Array] + attr_accessor :state_families + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @system_stage_name = args[:system_stage_name] if args.key?(:system_stage_name) + @computation_id = args[:computation_id] if args.key?(:computation_id) + @user_stage_name = args[:user_stage_name] if args.key?(:user_stage_name) + @key_ranges = args[:key_ranges] if args.key?(:key_ranges) + @inputs = args[:inputs] if args.key?(:inputs) + @outputs = args[:outputs] if args.key?(:outputs) + @state_families = args[:state_families] if args.key?(:state_families) + end + end + + # Location information for a specific key-range of a sharded computation. + # Currently we only support UTF-8 character splits to simplify encoding into + # JSON. + class KeyRangeLocation + include Google::Apis::Core::Hashable + + # The start (inclusive) of the key range. + # Corresponds to the JSON property `start` + # @return [String] + attr_accessor :start + + # The end (exclusive) of the key range. + # Corresponds to the JSON property `end` + # @return [String] + attr_accessor :end + + # The physical location of this range assignment to be used for streaming + # computation cross-worker message delivery. + # Corresponds to the JSON property `deliveryEndpoint` + # @return [String] + attr_accessor :delivery_endpoint + + # The location of the persistent state for this range, as a persistent directory + # in the worker local filesystem. + # Corresponds to the JSON property `persistentDirectory` + # @return [String] + attr_accessor :persistent_directory + + # The name of the data disk where data for this range is stored. This name is + # local to the Google Cloud Platform project and uniquely identifies the disk + # within that project, for example "myproject-1014-104817-4c2-harness-0-disk-1". + # Corresponds to the JSON property `dataDisk` + # @return [String] + attr_accessor :data_disk + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @start = args[:start] if args.key?(:start) + @end = args[:end] if args.key?(:end) + @delivery_endpoint = args[:delivery_endpoint] if args.key?(:delivery_endpoint) + @persistent_directory = args[:persistent_directory] if args.key?(:persistent_directory) + @data_disk = args[:data_disk] if args.key?(:data_disk) + end + end + + # Describes a stream of data, either as input to be processed or as output of a + # streaming Dataflow job. + class StreamLocation + include Google::Apis::Core::Hashable + + # Identifies the location of a streaming computation stage, for stage-to-stage + # communication. + # Corresponds to the JSON property `streamingStageLocation` + # @return [Google::Apis::DataflowV1b3::StreamingStageLocation] + attr_accessor :streaming_stage_location + + # Identifies a pubsub location to use for transferring data into or out of a + # streaming Dataflow job. + # Corresponds to the JSON property `pubsubLocation` + # @return [Google::Apis::DataflowV1b3::PubsubLocation] + attr_accessor :pubsub_location + + # Identifies the location of a streaming side input. + # Corresponds to the JSON property `sideInputLocation` + # @return [Google::Apis::DataflowV1b3::StreamingSideInputLocation] + attr_accessor :side_input_location + + # Identifies the location of a custom souce. + # Corresponds to the JSON property `customSourceLocation` + # @return [Google::Apis::DataflowV1b3::CustomSourceLocation] + attr_accessor :custom_source_location + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @streaming_stage_location = args[:streaming_stage_location] if args.key?(:streaming_stage_location) + @pubsub_location = args[:pubsub_location] if args.key?(:pubsub_location) + @side_input_location = args[:side_input_location] if args.key?(:side_input_location) + @custom_source_location = args[:custom_source_location] if args.key?(:custom_source_location) + end + end + + # Identifies the location of a streaming computation stage, for stage-to-stage + # communication. + class StreamingStageLocation + include Google::Apis::Core::Hashable + + # Identifies the particular stream within the streaming Dataflow job. + # Corresponds to the JSON property `streamId` + # @return [String] + attr_accessor :stream_id + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @stream_id = args[:stream_id] if args.key?(:stream_id) + end + end + + # Identifies a pubsub location to use for transferring data into or out of a + # streaming Dataflow job. + class PubsubLocation + include Google::Apis::Core::Hashable + + # A pubsub topic, in the form of "pubsub.googleapis.com/topics/ + # /" + # Corresponds to the JSON property `topic` + # @return [String] + attr_accessor :topic + + # A pubsub subscription, in the form of "pubsub.googleapis.com/subscriptions/ + # /" + # Corresponds to the JSON property `subscription` + # @return [String] + attr_accessor :subscription + + # If set, contains a pubsub label from which to extract record timestamps. If + # left empty, record timestamps will be generated upon arrival. + # Corresponds to the JSON property `timestampLabel` + # @return [String] + attr_accessor :timestamp_label + + # If set, contains a pubsub label from which to extract record ids. If left + # empty, record deduplication will be strictly best effort. + # Corresponds to the JSON property `idLabel` + # @return [String] + attr_accessor :id_label + + # Indicates whether the pipeline allows late-arriving data. + # Corresponds to the JSON property `dropLateData` + # @return [Boolean] + attr_accessor :drop_late_data + alias_method :drop_late_data?, :drop_late_data + + # If set, specifies the pubsub subscription that will be used for tracking + # custom time timestamps for watermark estimation. + # Corresponds to the JSON property `trackingSubscription` + # @return [String] + attr_accessor :tracking_subscription + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @topic = args[:topic] if args.key?(:topic) + @subscription = args[:subscription] if args.key?(:subscription) + @timestamp_label = args[:timestamp_label] if args.key?(:timestamp_label) + @id_label = args[:id_label] if args.key?(:id_label) + @drop_late_data = args[:drop_late_data] if args.key?(:drop_late_data) + @tracking_subscription = args[:tracking_subscription] if args.key?(:tracking_subscription) + end + end + + # Identifies the location of a streaming side input. + class StreamingSideInputLocation + include Google::Apis::Core::Hashable + + # Identifies the particular side input within the streaming Dataflow job. + # Corresponds to the JSON property `tag` + # @return [String] + attr_accessor :tag + + # Identifies the state family where this side input is stored. + # Corresponds to the JSON property `stateFamily` + # @return [String] + attr_accessor :state_family + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @tag = args[:tag] if args.key?(:tag) + @state_family = args[:state_family] if args.key?(:state_family) + end + end + + # Identifies the location of a custom souce. + class CustomSourceLocation + include Google::Apis::Core::Hashable + + # Whether this source is stateful. + # Corresponds to the JSON property `stateful` + # @return [Boolean] + attr_accessor :stateful + alias_method :stateful?, :stateful + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @stateful = args[:stateful] if args.key?(:stateful) + end + end + + # State family configuration. + class StateFamilyConfig + include Google::Apis::Core::Hashable + + # The state family value. + # Corresponds to the JSON property `stateFamily` + # @return [String] + attr_accessor :state_family + + # If true, this family corresponds to a read operation. + # Corresponds to the JSON property `isRead` + # @return [Boolean] + attr_accessor :is_read + alias_method :is_read?, :is_read + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @state_family = args[:state_family] if args.key?(:state_family) + @is_read = args[:is_read] if args.key?(:is_read) + end + end + + # Data disk assignment for a given VM instance. + class DataDiskAssignment + include Google::Apis::Core::Hashable + + # VM instance name the data disks mounted to, for example "myproject-1014-104817- + # 4c2-harness-0". + # Corresponds to the JSON property `vmInstance` + # @return [String] + attr_accessor :vm_instance + + # Mounted data disks. The order is important a data disk's 0-based index in this + # list defines which persistent directory the disk is mounted to, for example + # the list of ` "myproject-1014-104817-4c2-harness-0-disk-0" `, ` "myproject- + # 1014-104817-4c2-harness-0-disk-1" `. + # Corresponds to the JSON property `dataDisks` + # @return [Array] + attr_accessor :data_disks + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @vm_instance = args[:vm_instance] if args.key?(:vm_instance) + @data_disks = args[:data_disks] if args.key?(:data_disks) + end + end + + # A work item that represents the different operations that can be performed on + # a user-defined Source specification. + class SourceOperationRequest + include Google::Apis::Core::Hashable + + # Represents the operation to split a high-level Source specification into + # bundles (parts for parallel processing). At a high level, splitting of a + # source into bundles happens as follows: SourceSplitRequest is applied to the + # source. If it returns SOURCE_SPLIT_OUTCOME_USE_CURRENT, no further splitting + # happens and the source is used "as is". Otherwise, splitting is applied + # recursively to each produced DerivedSource. As an optimization, for any Source, + # if its does_not_need_splitting is true, the framework assumes that splitting + # this source would return SOURCE_SPLIT_OUTCOME_USE_CURRENT, and doesn't + # initiate a SourceSplitRequest. This applies both to the initial source being + # split and to bundles produced from it. + # Corresponds to the JSON property `split` + # @return [Google::Apis::DataflowV1b3::SourceSplitRequest] + attr_accessor :split + + # A request to compute the SourceMetadata of a Source. + # Corresponds to the JSON property `getMetadata` + # @return [Google::Apis::DataflowV1b3::SourceGetMetadataRequest] + attr_accessor :get_metadata + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @split = args[:split] if args.key?(:split) + @get_metadata = args[:get_metadata] if args.key?(:get_metadata) + end + end + + # Represents the operation to split a high-level Source specification into + # bundles (parts for parallel processing). At a high level, splitting of a + # source into bundles happens as follows: SourceSplitRequest is applied to the + # source. If it returns SOURCE_SPLIT_OUTCOME_USE_CURRENT, no further splitting + # happens and the source is used "as is". Otherwise, splitting is applied + # recursively to each produced DerivedSource. As an optimization, for any Source, + # if its does_not_need_splitting is true, the framework assumes that splitting + # this source would return SOURCE_SPLIT_OUTCOME_USE_CURRENT, and doesn't + # initiate a SourceSplitRequest. This applies both to the initial source being + # split and to bundles produced from it. + class SourceSplitRequest + include Google::Apis::Core::Hashable + + # A source that records can be read and decoded from. + # Corresponds to the JSON property `source` + # @return [Google::Apis::DataflowV1b3::Source] + attr_accessor :source + + # Hints for splitting a Source into bundles (parts for parallel processing) + # using SourceSplitRequest. + # Corresponds to the JSON property `options` + # @return [Google::Apis::DataflowV1b3::SourceSplitOptions] + attr_accessor :options + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @source = args[:source] if args.key?(:source) + @options = args[:options] if args.key?(:options) + end + end + + # Hints for splitting a Source into bundles (parts for parallel processing) + # using SourceSplitRequest. + class SourceSplitOptions + include Google::Apis::Core::Hashable + + # The source should be split into a set of bundles where the estimated size of + # each is approximately this many bytes. + # Corresponds to the JSON property `desiredBundleSizeBytes` + # @return [String] + attr_accessor :desired_bundle_size_bytes + + # DEPRECATED in favor of desired_bundle_size_bytes. + # Corresponds to the JSON property `desiredShardSizeBytes` + # @return [String] + attr_accessor :desired_shard_size_bytes + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @desired_bundle_size_bytes = args[:desired_bundle_size_bytes] if args.key?(:desired_bundle_size_bytes) + @desired_shard_size_bytes = args[:desired_shard_size_bytes] if args.key?(:desired_shard_size_bytes) + end + end + + # A request to compute the SourceMetadata of a Source. + class SourceGetMetadataRequest + include Google::Apis::Core::Hashable + + # A source that records can be read and decoded from. + # Corresponds to the JSON property `source` + # @return [Google::Apis::DataflowV1b3::Source] + attr_accessor :source + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @source = args[:source] if args.key?(:source) + end + end + + # A task which describes what action should be performed for the specified + # streaming computation ranges. + class StreamingComputationTask + include Google::Apis::Core::Hashable + + # A type of streaming computation task. + # Corresponds to the JSON property `taskType` + # @return [String] + attr_accessor :task_type + + # Describes the set of data disks this task should apply to. + # Corresponds to the JSON property `dataDisks` + # @return [Array] + attr_accessor :data_disks + + # Contains ranges of a streaming computation this task should apply to. + # Corresponds to the JSON property `computationRanges` + # @return [Array] + attr_accessor :computation_ranges + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @task_type = args[:task_type] if args.key?(:task_type) + @data_disks = args[:data_disks] if args.key?(:data_disks) + @computation_ranges = args[:computation_ranges] if args.key?(:computation_ranges) + end + end + + # Describes mounted data disk. + class MountedDataDisk + include Google::Apis::Core::Hashable + + # The name of the data disk. This name is local to the Google Cloud Platform + # project and uniquely identifies the disk within that project, for example " + # myproject-1014-104817-4c2-harness-0-disk-1". + # Corresponds to the JSON property `dataDisk` + # @return [String] + attr_accessor :data_disk + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @data_disk = args[:data_disk] if args.key?(:data_disk) + end + end + + # Describes full or partial data disk assignment information of the computation + # ranges. + class StreamingComputationRanges + include Google::Apis::Core::Hashable + + # The ID of the computation. + # Corresponds to the JSON property `computationId` + # @return [String] + attr_accessor :computation_id + + # Data disk assignments for ranges from this computation. + # Corresponds to the JSON property `rangeAssignments` + # @return [Array] + attr_accessor :range_assignments + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @computation_id = args[:computation_id] if args.key?(:computation_id) + @range_assignments = args[:range_assignments] if args.key?(:range_assignments) + end + end + + # Data disk assignment information for a specific key-range of a sharded + # computation. Currently we only support UTF-8 character splits to simplify + # encoding into JSON. + class KeyRangeDataDiskAssignment + include Google::Apis::Core::Hashable + + # The start (inclusive) of the key range. + # Corresponds to the JSON property `start` + # @return [String] + attr_accessor :start + + # The end (exclusive) of the key range. + # Corresponds to the JSON property `end` + # @return [String] + attr_accessor :end + + # The name of the data disk where data for this range is stored. This name is + # local to the Google Cloud Platform project and uniquely identifies the disk + # within that project, for example "myproject-1014-104817-4c2-harness-0-disk-1". + # Corresponds to the JSON property `dataDisk` + # @return [String] + attr_accessor :data_disk + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @start = args[:start] if args.key?(:start) + @end = args[:end] if args.key?(:end) + @data_disk = args[:data_disk] if args.key?(:data_disk) + end + end + + # A task that carries configuration information for streaming computations. + class StreamingConfigTask + include Google::Apis::Core::Hashable + + # Set of computation configuration information. + # Corresponds to the JSON property `streamingComputationConfigs` + # @return [Array] + attr_accessor :streaming_computation_configs + + # Map from user step names to state families. + # Corresponds to the JSON property `userStepToStateFamilyNameMap` + # @return [Hash] + attr_accessor :user_step_to_state_family_name_map + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @streaming_computation_configs = args[:streaming_computation_configs] if args.key?(:streaming_computation_configs) + @user_step_to_state_family_name_map = args[:user_step_to_state_family_name_map] if args.key?(:user_step_to_state_family_name_map) + end + end + + # Configuration information for a single streaming computation. + class StreamingComputationConfig + include Google::Apis::Core::Hashable + + # Unique identifier for this computation. + # Corresponds to the JSON property `computationId` + # @return [String] + attr_accessor :computation_id + + # System defined name for this computation. + # Corresponds to the JSON property `systemName` + # @return [String] + attr_accessor :system_name + + # Stage name of this computation. + # Corresponds to the JSON property `stageName` + # @return [String] + attr_accessor :stage_name + + # Instructions that comprise the computation. + # Corresponds to the JSON property `instructions` + # @return [Array] + attr_accessor :instructions + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @computation_id = args[:computation_id] if args.key?(:computation_id) + @system_name = args[:system_name] if args.key?(:system_name) + @stage_name = args[:stage_name] if args.key?(:stage_name) + @instructions = args[:instructions] if args.key?(:instructions) + end + end + + # A request for sending worker messages to the service. + class SendWorkerMessagesRequest + include Google::Apis::Core::Hashable + + # The WorkerMessages to send. + # Corresponds to the JSON property `workerMessages` + # @return [Array] + attr_accessor :worker_messages + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @worker_messages = args[:worker_messages] if args.key?(:worker_messages) + end + end + + # WorkerMessage provides information to the backend about a worker. + class WorkerMessage + include Google::Apis::Core::Hashable + + # Labels are used to group WorkerMessages. For example, a worker_message about a + # particular container might have the labels: ` "JOB_ID": "2015-04-22", " + # WORKER_ID": "wordcount-vm-2015…" "CONTAINER_TYPE": "worker", "CONTAINER_ID": " + # ac1234def"` Label tags typically correspond to Label enum values. However, for + # ease of development other strings can be used as tags. LABEL_UNSPECIFIED + # should not be used here. + # Corresponds to the JSON property `labels` + # @return [Hash] + attr_accessor :labels + + # The timestamp of the worker_message. + # Corresponds to the JSON property `time` + # @return [String] + attr_accessor :time + + # WorkerHealthReport contains information about the health of a worker. The VM + # should be identified by the labels attached to the WorkerMessage that this + # health ping belongs to. + # Corresponds to the JSON property `workerHealthReport` + # @return [Google::Apis::DataflowV1b3::WorkerHealthReport] + attr_accessor :worker_health_report + + # A message code is used to report status and error messages to the service. The + # message codes are intended to be machine readable. The service will take care + # of translating these into user understandable messages if necessary. Example + # use cases: 1. Worker processes reporting successful startup. 2. Worker + # processes reporting specific errors (e.g. package staging failure). + # Corresponds to the JSON property `workerMessageCode` + # @return [Google::Apis::DataflowV1b3::WorkerMessageCode] + attr_accessor :worker_message_code + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @labels = args[:labels] if args.key?(:labels) + @time = args[:time] if args.key?(:time) + @worker_health_report = args[:worker_health_report] if args.key?(:worker_health_report) + @worker_message_code = args[:worker_message_code] if args.key?(:worker_message_code) + end + end + + # WorkerHealthReport contains information about the health of a worker. The VM + # should be identified by the labels attached to the WorkerMessage that this + # health ping belongs to. + class WorkerHealthReport + include Google::Apis::Core::Hashable + + # Whether the VM is healthy. + # Corresponds to the JSON property `vmIsHealthy` + # @return [Boolean] + attr_accessor :vm_is_healthy + alias_method :vm_is_healthy?, :vm_is_healthy + + # The time the VM was booted. + # Corresponds to the JSON property `vmStartupTime` + # @return [String] + attr_accessor :vm_startup_time + + # The interval at which the worker is sending health reports. The default value + # of 0 should be interpreted as the field is not being explicitly set by the + # worker. + # Corresponds to the JSON property `reportInterval` + # @return [String] + attr_accessor :report_interval + + # The pods running on the worker. See: http://kubernetes.io/v1.1/docs/api- + # reference/v1/definitions.html#_v1_pod This field is used by the worker to send + # the status of the indvidual containers running on each worker. + # Corresponds to the JSON property `pods` + # @return [Array>] + attr_accessor :pods + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @vm_is_healthy = args[:vm_is_healthy] if args.key?(:vm_is_healthy) + @vm_startup_time = args[:vm_startup_time] if args.key?(:vm_startup_time) + @report_interval = args[:report_interval] if args.key?(:report_interval) + @pods = args[:pods] if args.key?(:pods) + end + end + + # A message code is used to report status and error messages to the service. The + # message codes are intended to be machine readable. The service will take care + # of translating these into user understandable messages if necessary. Example + # use cases: 1. Worker processes reporting successful startup. 2. Worker + # processes reporting specific errors (e.g. package staging failure). + class WorkerMessageCode + include Google::Apis::Core::Hashable + + # The code is a string intended for consumption by a machine that identifies the + # type of message being sent. Examples: 1. "HARNESS_STARTED" might be used to + # indicate the worker harness has started. 2. "GCS_DOWNLOAD_ERROR" might be used + # to indicate an error downloading a GCS file as part of the boot process of one + # of the worker containers. This is a string and not an enum to make it easy to + # add new codes without waiting for an API change. + # Corresponds to the JSON property `code` + # @return [String] + attr_accessor :code + + # Parameters contains specific information about the code. This is a struct to + # allow parameters of different types. Examples: 1. For a "HARNESS_STARTED" + # message parameters might provide the name of the worker and additional data + # like timing information. 2. For a "GCS_DOWNLOAD_ERROR" parameters might + # contain fields listing the GCS objects being downloaded and fields containing + # errors. In general complex data structures should be avoided. If a worker + # needs to send a specific and complicated data structure then please consider + # defining a new proto and adding it to the data oneof in WorkerMessageResponse. + # Conventions: Parameters should only be used for information that isn't + # typically passed as a label. hostname and other worker identifiers should + # almost always be passed as labels since they will be included on most messages. + # Corresponds to the JSON property `parameters` + # @return [Hash] + attr_accessor :parameters + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @code = args[:code] if args.key?(:code) + @parameters = args[:parameters] if args.key?(:parameters) + end + end + + # The response to the worker messages. + class SendWorkerMessagesResponse + include Google::Apis::Core::Hashable + + # The servers response to the worker messages. + # Corresponds to the JSON property `workerMessageResponses` + # @return [Array] + attr_accessor :worker_message_responses + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @worker_message_responses = args[:worker_message_responses] if args.key?(:worker_message_responses) + end + end + + # A worker_message response allows the server to pass information to the sender. + class WorkerMessageResponse + include Google::Apis::Core::Hashable + + # WorkerHealthReportResponse contains information returned to the worker in + # response to a health ping. + # Corresponds to the JSON property `workerHealthReportResponse` + # @return [Google::Apis::DataflowV1b3::WorkerHealthReportResponse] + attr_accessor :worker_health_report_response + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @worker_health_report_response = args[:worker_health_report_response] if args.key?(:worker_health_report_response) + end + end + + # WorkerHealthReportResponse contains information returned to the worker in + # response to a health ping. + class WorkerHealthReportResponse + include Google::Apis::Core::Hashable + + # A positive value indicates the worker should change its reporting interval to + # the specified value. The default value of zero means no change in report rate + # is requested by the server. + # Corresponds to the JSON property `reportInterval` + # @return [String] + attr_accessor :report_interval + + def initialize(**args) + update!(**args) + end + + # Update properties of this object + def update!(**args) + @report_interval = args[:report_interval] if args.key?(:report_interval) + end + end + end + end +end diff --git a/generated/google/apis/dataflow_v1b3/representations.rb b/generated/google/apis/dataflow_v1b3/representations.rb new file mode 100644 index 000000000..9a848ea01 --- /dev/null +++ b/generated/google/apis/dataflow_v1b3/representations.rb @@ -0,0 +1,1718 @@ +# 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 DataflowV1b3 + + class GetDebugConfigRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GetDebugConfigResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SendDebugCaptureRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SendDebugCaptureResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Job + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Environment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerPool + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Package + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TaskRunnerSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Disk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class AutoscalingSettings + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Step + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobExecutionInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobExecutionStageInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListJobsResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ListJobMessagesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobMessage + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class JobMetrics + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MetricUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MetricStructuredName + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CreateJobFromTemplateRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportWorkItemStatusRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkItemStatus + 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 CounterUpdate + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class NameAndKind + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CounterStructuredNameAndMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CounterStructuredName + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CounterMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SplitInt64 + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IntegerMean + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FloatingPointMean + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class IntegerList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FloatingPointList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StringList + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApproximateReportedProgress + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Position + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ConcatPosition + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportedParallelism + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DynamicSourceSplit + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DerivedSource + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Source + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceMetadata + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceOperationResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceSplitResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceSplitShard + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceGetMetadataResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceFork + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApproximateProgress + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReportWorkItemStatusResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkItemServiceState + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ApproximateSplitRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MetricShortId + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LeaseWorkItemRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class LeaseWorkItemResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkItem + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MapTask + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ParallelInstruction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ReadInstruction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WriteInstruction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstructionInput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class Sink + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ParDoInstruction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SideInputInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MultiOutputInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PartialGroupByKeyInstruction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class FlattenInstruction + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class InstructionOutput + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SeqMapTask + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SeqMapTaskOutputInfo + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ShellTask + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingSetupTask + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class TopologyConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class ComputationTopology + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class KeyRangeLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingStageLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class PubsubLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingSideInputLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class CustomSourceLocation + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StateFamilyConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class DataDiskAssignment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceOperationRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceSplitRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceSplitOptions + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SourceGetMetadataRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingComputationTask + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class MountedDataDisk + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingComputationRanges + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class KeyRangeDataDiskAssignment + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingConfigTask + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class StreamingComputationConfig + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SendWorkerMessagesRequest + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerMessage + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerHealthReport + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerMessageCode + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class SendWorkerMessagesResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerMessageResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class WorkerHealthReportResponse + class Representation < Google::Apis::Core::JsonRepresentation; end + + include Google::Apis::Core::JsonObjectSupport + end + + class GetDebugConfigRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :worker_id, as: 'workerId' + property :component_id, as: 'componentId' + end + end + + class GetDebugConfigResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :config, as: 'config' + end + end + + class SendDebugCaptureRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :worker_id, as: 'workerId' + property :component_id, as: 'componentId' + property :data, as: 'data' + end + end + + class SendDebugCaptureResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + end + end + + class Job + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :project_id, as: 'projectId' + property :name, as: 'name' + property :type, as: 'type' + property :environment, as: 'environment', class: Google::Apis::DataflowV1b3::Environment, decorator: Google::Apis::DataflowV1b3::Environment::Representation + + collection :steps, as: 'steps', class: Google::Apis::DataflowV1b3::Step, decorator: Google::Apis::DataflowV1b3::Step::Representation + + property :current_state, as: 'currentState' + property :current_state_time, as: 'currentStateTime' + property :requested_state, as: 'requestedState' + property :execution_info, as: 'executionInfo', class: Google::Apis::DataflowV1b3::JobExecutionInfo, decorator: Google::Apis::DataflowV1b3::JobExecutionInfo::Representation + + property :create_time, as: 'createTime' + property :replace_job_id, as: 'replaceJobId' + hash :transform_name_mapping, as: 'transformNameMapping' + property :client_request_id, as: 'clientRequestId' + property :replaced_by_job_id, as: 'replacedByJobId' + collection :temp_files, as: 'tempFiles' + hash :labels, as: 'labels' + end + end + + class Environment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :temp_storage_prefix, as: 'tempStoragePrefix' + property :cluster_manager_api_service, as: 'clusterManagerApiService' + collection :experiments, as: 'experiments' + collection :worker_pools, as: 'workerPools', class: Google::Apis::DataflowV1b3::WorkerPool, decorator: Google::Apis::DataflowV1b3::WorkerPool::Representation + + hash :user_agent, as: 'userAgent' + hash :version, as: 'version' + property :dataset, as: 'dataset' + hash :sdk_pipeline_options, as: 'sdkPipelineOptions' + hash :internal_experiments, as: 'internalExperiments' + property :service_account_email, as: 'serviceAccountEmail' + end + end + + class WorkerPool + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :num_workers, as: 'numWorkers' + collection :packages, as: 'packages', class: Google::Apis::DataflowV1b3::Package, decorator: Google::Apis::DataflowV1b3::Package::Representation + + property :default_package_set, as: 'defaultPackageSet' + property :machine_type, as: 'machineType' + property :teardown_policy, as: 'teardownPolicy' + property :disk_size_gb, as: 'diskSizeGb' + property :disk_type, as: 'diskType' + property :disk_source_image, as: 'diskSourceImage' + property :zone, as: 'zone' + property :taskrunner_settings, as: 'taskrunnerSettings', class: Google::Apis::DataflowV1b3::TaskRunnerSettings, decorator: Google::Apis::DataflowV1b3::TaskRunnerSettings::Representation + + property :on_host_maintenance, as: 'onHostMaintenance' + collection :data_disks, as: 'dataDisks', class: Google::Apis::DataflowV1b3::Disk, decorator: Google::Apis::DataflowV1b3::Disk::Representation + + hash :metadata, as: 'metadata' + property :autoscaling_settings, as: 'autoscalingSettings', class: Google::Apis::DataflowV1b3::AutoscalingSettings, decorator: Google::Apis::DataflowV1b3::AutoscalingSettings::Representation + + hash :pool_args, as: 'poolArgs' + property :network, as: 'network' + property :subnetwork, as: 'subnetwork' + property :worker_harness_container_image, as: 'workerHarnessContainerImage' + property :num_threads_per_worker, as: 'numThreadsPerWorker' + property :ip_configuration, as: 'ipConfiguration' + end + end + + class Package + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :location, as: 'location' + end + end + + class TaskRunnerSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :task_user, as: 'taskUser' + property :task_group, as: 'taskGroup' + collection :oauth_scopes, as: 'oauthScopes' + property :base_url, as: 'baseUrl' + property :dataflow_api_version, as: 'dataflowApiVersion' + property :parallel_worker_settings, as: 'parallelWorkerSettings', class: Google::Apis::DataflowV1b3::WorkerSettings, decorator: Google::Apis::DataflowV1b3::WorkerSettings::Representation + + property :base_task_dir, as: 'baseTaskDir' + property :continue_on_exception, as: 'continueOnException' + property :log_to_serialconsole, as: 'logToSerialconsole' + property :alsologtostderr, as: 'alsologtostderr' + property :log_upload_location, as: 'logUploadLocation' + property :log_dir, as: 'logDir' + property :temp_storage_prefix, as: 'tempStoragePrefix' + property :harness_command, as: 'harnessCommand' + property :workflow_file_name, as: 'workflowFileName' + property :commandlines_file_name, as: 'commandlinesFileName' + property :vm_id, as: 'vmId' + property :language_hint, as: 'languageHint' + property :streaming_worker_main_class, as: 'streamingWorkerMainClass' + end + end + + class WorkerSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :base_url, as: 'baseUrl' + property :reporting_enabled, as: 'reportingEnabled' + property :service_path, as: 'servicePath' + property :shuffle_service_path, as: 'shuffleServicePath' + property :worker_id, as: 'workerId' + property :temp_storage_prefix, as: 'tempStoragePrefix' + end + end + + class Disk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :size_gb, as: 'sizeGb' + property :disk_type, as: 'diskType' + property :mount_point, as: 'mountPoint' + end + end + + class AutoscalingSettings + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :algorithm, as: 'algorithm' + property :max_num_workers, as: 'maxNumWorkers' + end + end + + class Step + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :name, as: 'name' + hash :properties, as: 'properties' + end + end + + class JobExecutionInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :stages, as: 'stages', class: Google::Apis::DataflowV1b3::JobExecutionStageInfo, decorator: Google::Apis::DataflowV1b3::JobExecutionStageInfo::Representation + + end + end + + class JobExecutionStageInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :step_name, as: 'stepName' + end + end + + class ListJobsResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :jobs, as: 'jobs', class: Google::Apis::DataflowV1b3::Job, decorator: Google::Apis::DataflowV1b3::Job::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class ListJobMessagesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :job_messages, as: 'jobMessages', class: Google::Apis::DataflowV1b3::JobMessage, decorator: Google::Apis::DataflowV1b3::JobMessage::Representation + + property :next_page_token, as: 'nextPageToken' + end + end + + class JobMessage + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :time, as: 'time' + property :message_text, as: 'messageText' + property :message_importance, as: 'messageImportance' + end + end + + class JobMetrics + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :metric_time, as: 'metricTime' + collection :metrics, as: 'metrics', class: Google::Apis::DataflowV1b3::MetricUpdate, decorator: Google::Apis::DataflowV1b3::MetricUpdate::Representation + + end + end + + class MetricUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name', class: Google::Apis::DataflowV1b3::MetricStructuredName, decorator: Google::Apis::DataflowV1b3::MetricStructuredName::Representation + + property :kind, as: 'kind' + property :cumulative, as: 'cumulative' + property :scalar, as: 'scalar' + property :mean_sum, as: 'meanSum' + property :mean_count, as: 'meanCount' + property :set, as: 'set' + property :internal, as: 'internal' + property :update_time, as: 'updateTime' + end + end + + class MetricStructuredName + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :origin, as: 'origin' + property :name, as: 'name' + hash :context, as: 'context' + end + end + + class CreateJobFromTemplateRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :gcs_path, as: 'gcsPath' + hash :parameters, as: 'parameters' + end + end + + class ReportWorkItemStatusRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :worker_id, as: 'workerId' + collection :work_item_statuses, as: 'workItemStatuses', class: Google::Apis::DataflowV1b3::WorkItemStatus, decorator: Google::Apis::DataflowV1b3::WorkItemStatus::Representation + + property :current_worker_time, as: 'currentWorkerTime' + end + end + + class WorkItemStatus + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :work_item_id, as: 'workItemId' + property :report_index, as: 'reportIndex' + property :requested_lease_duration, as: 'requestedLeaseDuration' + property :completed, as: 'completed' + collection :errors, as: 'errors', class: Google::Apis::DataflowV1b3::Status, decorator: Google::Apis::DataflowV1b3::Status::Representation + + collection :counter_updates, as: 'counterUpdates', class: Google::Apis::DataflowV1b3::CounterUpdate, decorator: Google::Apis::DataflowV1b3::CounterUpdate::Representation + + collection :metric_updates, as: 'metricUpdates', class: Google::Apis::DataflowV1b3::MetricUpdate, decorator: Google::Apis::DataflowV1b3::MetricUpdate::Representation + + property :reported_progress, as: 'reportedProgress', class: Google::Apis::DataflowV1b3::ApproximateReportedProgress, decorator: Google::Apis::DataflowV1b3::ApproximateReportedProgress::Representation + + property :stop_position, as: 'stopPosition', class: Google::Apis::DataflowV1b3::Position, decorator: Google::Apis::DataflowV1b3::Position::Representation + + property :dynamic_source_split, as: 'dynamicSourceSplit', class: Google::Apis::DataflowV1b3::DynamicSourceSplit, decorator: Google::Apis::DataflowV1b3::DynamicSourceSplit::Representation + + property :source_operation_response, as: 'sourceOperationResponse', class: Google::Apis::DataflowV1b3::SourceOperationResponse, decorator: Google::Apis::DataflowV1b3::SourceOperationResponse::Representation + + property :source_fork, as: 'sourceFork', class: Google::Apis::DataflowV1b3::SourceFork, decorator: Google::Apis::DataflowV1b3::SourceFork::Representation + + property :progress, as: 'progress', class: Google::Apis::DataflowV1b3::ApproximateProgress, decorator: Google::Apis::DataflowV1b3::ApproximateProgress::Representation + + end + end + + class Status + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + property :message, as: 'message' + collection :details, as: 'details' + end + end + + class CounterUpdate + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name_and_kind, as: 'nameAndKind', class: Google::Apis::DataflowV1b3::NameAndKind, decorator: Google::Apis::DataflowV1b3::NameAndKind::Representation + + property :short_id, as: 'shortId' + property :structured_name_and_metadata, as: 'structuredNameAndMetadata', class: Google::Apis::DataflowV1b3::CounterStructuredNameAndMetadata, decorator: Google::Apis::DataflowV1b3::CounterStructuredNameAndMetadata::Representation + + property :cumulative, as: 'cumulative' + property :integer, as: 'integer', class: Google::Apis::DataflowV1b3::SplitInt64, decorator: Google::Apis::DataflowV1b3::SplitInt64::Representation + + property :floating_point, as: 'floatingPoint' + property :boolean, as: 'boolean' + property :integer_mean, as: 'integerMean', class: Google::Apis::DataflowV1b3::IntegerMean, decorator: Google::Apis::DataflowV1b3::IntegerMean::Representation + + property :floating_point_mean, as: 'floatingPointMean', class: Google::Apis::DataflowV1b3::FloatingPointMean, decorator: Google::Apis::DataflowV1b3::FloatingPointMean::Representation + + property :integer_list, as: 'integerList', class: Google::Apis::DataflowV1b3::IntegerList, decorator: Google::Apis::DataflowV1b3::IntegerList::Representation + + property :floating_point_list, as: 'floatingPointList', class: Google::Apis::DataflowV1b3::FloatingPointList, decorator: Google::Apis::DataflowV1b3::FloatingPointList::Representation + + property :string_list, as: 'stringList', class: Google::Apis::DataflowV1b3::StringList, decorator: Google::Apis::DataflowV1b3::StringList::Representation + + property :internal, as: 'internal' + end + end + + class NameAndKind + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :kind, as: 'kind' + end + end + + class CounterStructuredNameAndMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name', class: Google::Apis::DataflowV1b3::CounterStructuredName, decorator: Google::Apis::DataflowV1b3::CounterStructuredName::Representation + + property :metadata, as: 'metadata', class: Google::Apis::DataflowV1b3::CounterMetadata, decorator: Google::Apis::DataflowV1b3::CounterMetadata::Representation + + end + end + + class CounterStructuredName + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :standard_origin, as: 'standardOrigin' + property :other_origin, as: 'otherOrigin' + property :original_step_name, as: 'originalStepName' + property :component_step_name, as: 'componentStepName' + property :execution_step_name, as: 'executionStepName' + property :worker_id, as: 'workerId' + property :portion, as: 'portion' + end + end + + class CounterMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :kind, as: 'kind' + property :description, as: 'description' + property :standard_units, as: 'standardUnits' + property :other_units, as: 'otherUnits' + end + end + + class SplitInt64 + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :low_bits, as: 'lowBits' + property :high_bits, as: 'highBits' + end + end + + class IntegerMean + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :sum, as: 'sum', class: Google::Apis::DataflowV1b3::SplitInt64, decorator: Google::Apis::DataflowV1b3::SplitInt64::Representation + + property :count, as: 'count', class: Google::Apis::DataflowV1b3::SplitInt64, decorator: Google::Apis::DataflowV1b3::SplitInt64::Representation + + end + end + + class FloatingPointMean + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :sum, as: 'sum' + property :count, as: 'count', class: Google::Apis::DataflowV1b3::SplitInt64, decorator: Google::Apis::DataflowV1b3::SplitInt64::Representation + + end + end + + class IntegerList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :elements, as: 'elements', class: Google::Apis::DataflowV1b3::SplitInt64, decorator: Google::Apis::DataflowV1b3::SplitInt64::Representation + + end + end + + class FloatingPointList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :elements, as: 'elements' + end + end + + class StringList + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :elements, as: 'elements' + end + end + + class ApproximateReportedProgress + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :position, as: 'position', class: Google::Apis::DataflowV1b3::Position, decorator: Google::Apis::DataflowV1b3::Position::Representation + + property :fraction_consumed, as: 'fractionConsumed' + property :remaining_parallelism, as: 'remainingParallelism', class: Google::Apis::DataflowV1b3::ReportedParallelism, decorator: Google::Apis::DataflowV1b3::ReportedParallelism::Representation + + property :consumed_parallelism, as: 'consumedParallelism', class: Google::Apis::DataflowV1b3::ReportedParallelism, decorator: Google::Apis::DataflowV1b3::ReportedParallelism::Representation + + end + end + + class Position + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :end, as: 'end' + property :key, as: 'key' + property :byte_offset, as: 'byteOffset' + property :record_index, as: 'recordIndex' + property :shuffle_position, as: 'shufflePosition' + property :concat_position, as: 'concatPosition', class: Google::Apis::DataflowV1b3::ConcatPosition, decorator: Google::Apis::DataflowV1b3::ConcatPosition::Representation + + end + end + + class ConcatPosition + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :index, as: 'index' + property :position, as: 'position', class: Google::Apis::DataflowV1b3::Position, decorator: Google::Apis::DataflowV1b3::Position::Representation + + end + end + + class ReportedParallelism + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :is_infinite, as: 'isInfinite' + property :value, as: 'value' + end + end + + class DynamicSourceSplit + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :primary, as: 'primary', class: Google::Apis::DataflowV1b3::DerivedSource, decorator: Google::Apis::DataflowV1b3::DerivedSource::Representation + + property :residual, as: 'residual', class: Google::Apis::DataflowV1b3::DerivedSource, decorator: Google::Apis::DataflowV1b3::DerivedSource::Representation + + end + end + + class DerivedSource + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :source, as: 'source', class: Google::Apis::DataflowV1b3::Source, decorator: Google::Apis::DataflowV1b3::Source::Representation + + property :derivation_mode, as: 'derivationMode' + end + end + + class Source + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :spec, as: 'spec' + hash :codec, as: 'codec' + collection :base_specs, as: 'baseSpecs' + property :metadata, as: 'metadata', class: Google::Apis::DataflowV1b3::SourceMetadata, decorator: Google::Apis::DataflowV1b3::SourceMetadata::Representation + + property :does_not_need_splitting, as: 'doesNotNeedSplitting' + end + end + + class SourceMetadata + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :produces_sorted_keys, as: 'producesSortedKeys' + property :infinite, as: 'infinite' + property :estimated_size_bytes, as: 'estimatedSizeBytes' + end + end + + class SourceOperationResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :split, as: 'split', class: Google::Apis::DataflowV1b3::SourceSplitResponse, decorator: Google::Apis::DataflowV1b3::SourceSplitResponse::Representation + + property :get_metadata, as: 'getMetadata', class: Google::Apis::DataflowV1b3::SourceGetMetadataResponse, decorator: Google::Apis::DataflowV1b3::SourceGetMetadataResponse::Representation + + end + end + + class SourceSplitResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :outcome, as: 'outcome' + collection :bundles, as: 'bundles', class: Google::Apis::DataflowV1b3::DerivedSource, decorator: Google::Apis::DataflowV1b3::DerivedSource::Representation + + collection :shards, as: 'shards', class: Google::Apis::DataflowV1b3::SourceSplitShard, decorator: Google::Apis::DataflowV1b3::SourceSplitShard::Representation + + end + end + + class SourceSplitShard + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :source, as: 'source', class: Google::Apis::DataflowV1b3::Source, decorator: Google::Apis::DataflowV1b3::Source::Representation + + property :derivation_mode, as: 'derivationMode' + end + end + + class SourceGetMetadataResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :metadata, as: 'metadata', class: Google::Apis::DataflowV1b3::SourceMetadata, decorator: Google::Apis::DataflowV1b3::SourceMetadata::Representation + + end + end + + class SourceFork + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :primary, as: 'primary', class: Google::Apis::DataflowV1b3::SourceSplitShard, decorator: Google::Apis::DataflowV1b3::SourceSplitShard::Representation + + property :residual, as: 'residual', class: Google::Apis::DataflowV1b3::SourceSplitShard, decorator: Google::Apis::DataflowV1b3::SourceSplitShard::Representation + + property :primary_source, as: 'primarySource', class: Google::Apis::DataflowV1b3::DerivedSource, decorator: Google::Apis::DataflowV1b3::DerivedSource::Representation + + property :residual_source, as: 'residualSource', class: Google::Apis::DataflowV1b3::DerivedSource, decorator: Google::Apis::DataflowV1b3::DerivedSource::Representation + + end + end + + class ApproximateProgress + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :position, as: 'position', class: Google::Apis::DataflowV1b3::Position, decorator: Google::Apis::DataflowV1b3::Position::Representation + + property :percent_complete, as: 'percentComplete' + property :remaining_time, as: 'remainingTime' + end + end + + class ReportWorkItemStatusResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :work_item_service_states, as: 'workItemServiceStates', class: Google::Apis::DataflowV1b3::WorkItemServiceState, decorator: Google::Apis::DataflowV1b3::WorkItemServiceState::Representation + + end + end + + class WorkItemServiceState + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :split_request, as: 'splitRequest', class: Google::Apis::DataflowV1b3::ApproximateSplitRequest, decorator: Google::Apis::DataflowV1b3::ApproximateSplitRequest::Representation + + property :lease_expire_time, as: 'leaseExpireTime' + property :report_status_interval, as: 'reportStatusInterval' + hash :harness_data, as: 'harnessData' + property :next_report_index, as: 'nextReportIndex' + collection :metric_short_id, as: 'metricShortId', class: Google::Apis::DataflowV1b3::MetricShortId, decorator: Google::Apis::DataflowV1b3::MetricShortId::Representation + + property :suggested_stop_position, as: 'suggestedStopPosition', class: Google::Apis::DataflowV1b3::Position, decorator: Google::Apis::DataflowV1b3::Position::Representation + + property :suggested_stop_point, as: 'suggestedStopPoint', class: Google::Apis::DataflowV1b3::ApproximateProgress, decorator: Google::Apis::DataflowV1b3::ApproximateProgress::Representation + + end + end + + class ApproximateSplitRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :position, as: 'position', class: Google::Apis::DataflowV1b3::Position, decorator: Google::Apis::DataflowV1b3::Position::Representation + + property :fraction_consumed, as: 'fractionConsumed' + end + end + + class MetricShortId + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :metric_index, as: 'metricIndex' + property :short_id, as: 'shortId' + end + end + + class LeaseWorkItemRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :work_item_types, as: 'workItemTypes' + collection :worker_capabilities, as: 'workerCapabilities' + property :requested_lease_duration, as: 'requestedLeaseDuration' + property :current_worker_time, as: 'currentWorkerTime' + property :worker_id, as: 'workerId' + end + end + + class LeaseWorkItemResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :work_items, as: 'workItems', class: Google::Apis::DataflowV1b3::WorkItem, decorator: Google::Apis::DataflowV1b3::WorkItem::Representation + + end + end + + class WorkItem + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :id, as: 'id' + property :project_id, as: 'projectId' + property :job_id, as: 'jobId' + collection :packages, as: 'packages', class: Google::Apis::DataflowV1b3::Package, decorator: Google::Apis::DataflowV1b3::Package::Representation + + property :map_task, as: 'mapTask', class: Google::Apis::DataflowV1b3::MapTask, decorator: Google::Apis::DataflowV1b3::MapTask::Representation + + property :seq_map_task, as: 'seqMapTask', class: Google::Apis::DataflowV1b3::SeqMapTask, decorator: Google::Apis::DataflowV1b3::SeqMapTask::Representation + + property :shell_task, as: 'shellTask', class: Google::Apis::DataflowV1b3::ShellTask, decorator: Google::Apis::DataflowV1b3::ShellTask::Representation + + property :streaming_setup_task, as: 'streamingSetupTask', class: Google::Apis::DataflowV1b3::StreamingSetupTask, decorator: Google::Apis::DataflowV1b3::StreamingSetupTask::Representation + + property :source_operation_task, as: 'sourceOperationTask', class: Google::Apis::DataflowV1b3::SourceOperationRequest, decorator: Google::Apis::DataflowV1b3::SourceOperationRequest::Representation + + property :streaming_computation_task, as: 'streamingComputationTask', class: Google::Apis::DataflowV1b3::StreamingComputationTask, decorator: Google::Apis::DataflowV1b3::StreamingComputationTask::Representation + + property :streaming_config_task, as: 'streamingConfigTask', class: Google::Apis::DataflowV1b3::StreamingConfigTask, decorator: Google::Apis::DataflowV1b3::StreamingConfigTask::Representation + + property :report_status_interval, as: 'reportStatusInterval' + property :lease_expire_time, as: 'leaseExpireTime' + property :configuration, as: 'configuration' + property :initial_report_index, as: 'initialReportIndex' + end + end + + class MapTask + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :instructions, as: 'instructions', class: Google::Apis::DataflowV1b3::ParallelInstruction, decorator: Google::Apis::DataflowV1b3::ParallelInstruction::Representation + + property :system_name, as: 'systemName' + property :stage_name, as: 'stageName' + end + end + + class ParallelInstruction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :system_name, as: 'systemName' + property :name, as: 'name' + property :original_name, as: 'originalName' + property :read, as: 'read', class: Google::Apis::DataflowV1b3::ReadInstruction, decorator: Google::Apis::DataflowV1b3::ReadInstruction::Representation + + property :write, as: 'write', class: Google::Apis::DataflowV1b3::WriteInstruction, decorator: Google::Apis::DataflowV1b3::WriteInstruction::Representation + + property :par_do, as: 'parDo', class: Google::Apis::DataflowV1b3::ParDoInstruction, decorator: Google::Apis::DataflowV1b3::ParDoInstruction::Representation + + property :partial_group_by_key, as: 'partialGroupByKey', class: Google::Apis::DataflowV1b3::PartialGroupByKeyInstruction, decorator: Google::Apis::DataflowV1b3::PartialGroupByKeyInstruction::Representation + + property :flatten, as: 'flatten', class: Google::Apis::DataflowV1b3::FlattenInstruction, decorator: Google::Apis::DataflowV1b3::FlattenInstruction::Representation + + collection :outputs, as: 'outputs', class: Google::Apis::DataflowV1b3::InstructionOutput, decorator: Google::Apis::DataflowV1b3::InstructionOutput::Representation + + end + end + + class ReadInstruction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :source, as: 'source', class: Google::Apis::DataflowV1b3::Source, decorator: Google::Apis::DataflowV1b3::Source::Representation + + end + end + + class WriteInstruction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::DataflowV1b3::InstructionInput, decorator: Google::Apis::DataflowV1b3::InstructionInput::Representation + + property :sink, as: 'sink', class: Google::Apis::DataflowV1b3::Sink, decorator: Google::Apis::DataflowV1b3::Sink::Representation + + end + end + + class InstructionInput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :producer_instruction_index, as: 'producerInstructionIndex' + property :output_num, as: 'outputNum' + end + end + + class Sink + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :spec, as: 'spec' + hash :codec, as: 'codec' + end + end + + class ParDoInstruction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::DataflowV1b3::InstructionInput, decorator: Google::Apis::DataflowV1b3::InstructionInput::Representation + + collection :side_inputs, as: 'sideInputs', class: Google::Apis::DataflowV1b3::SideInputInfo, decorator: Google::Apis::DataflowV1b3::SideInputInfo::Representation + + hash :user_fn, as: 'userFn' + property :num_outputs, as: 'numOutputs' + collection :multi_output_infos, as: 'multiOutputInfos', class: Google::Apis::DataflowV1b3::MultiOutputInfo, decorator: Google::Apis::DataflowV1b3::MultiOutputInfo::Representation + + end + end + + class SideInputInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :sources, as: 'sources', class: Google::Apis::DataflowV1b3::Source, decorator: Google::Apis::DataflowV1b3::Source::Representation + + hash :kind, as: 'kind' + property :tag, as: 'tag' + end + end + + class MultiOutputInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :tag, as: 'tag' + end + end + + class PartialGroupByKeyInstruction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :input, as: 'input', class: Google::Apis::DataflowV1b3::InstructionInput, decorator: Google::Apis::DataflowV1b3::InstructionInput::Representation + + hash :input_element_codec, as: 'inputElementCodec' + hash :value_combining_fn, as: 'valueCombiningFn' + collection :side_inputs, as: 'sideInputs', class: Google::Apis::DataflowV1b3::SideInputInfo, decorator: Google::Apis::DataflowV1b3::SideInputInfo::Representation + + property :original_combine_values_step_name, as: 'originalCombineValuesStepName' + property :original_combine_values_input_store_name, as: 'originalCombineValuesInputStoreName' + end + end + + class FlattenInstruction + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :inputs, as: 'inputs', class: Google::Apis::DataflowV1b3::InstructionInput, decorator: Google::Apis::DataflowV1b3::InstructionInput::Representation + + end + end + + class InstructionOutput + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :name, as: 'name' + property :system_name, as: 'systemName' + property :original_name, as: 'originalName' + hash :codec, as: 'codec' + property :only_count_key_bytes, as: 'onlyCountKeyBytes' + property :only_count_value_bytes, as: 'onlyCountValueBytes' + end + end + + class SeqMapTask + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :inputs, as: 'inputs', class: Google::Apis::DataflowV1b3::SideInputInfo, decorator: Google::Apis::DataflowV1b3::SideInputInfo::Representation + + hash :user_fn, as: 'userFn' + collection :output_infos, as: 'outputInfos', class: Google::Apis::DataflowV1b3::SeqMapTaskOutputInfo, decorator: Google::Apis::DataflowV1b3::SeqMapTaskOutputInfo::Representation + + property :name, as: 'name' + property :system_name, as: 'systemName' + property :stage_name, as: 'stageName' + end + end + + class SeqMapTaskOutputInfo + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :tag, as: 'tag' + property :sink, as: 'sink', class: Google::Apis::DataflowV1b3::Sink, decorator: Google::Apis::DataflowV1b3::Sink::Representation + + end + end + + class ShellTask + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :command, as: 'command' + property :exit_code, as: 'exitCode' + end + end + + class StreamingSetupTask + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :receive_work_port, as: 'receiveWorkPort' + property :worker_harness_port, as: 'workerHarnessPort' + property :streaming_computation_topology, as: 'streamingComputationTopology', class: Google::Apis::DataflowV1b3::TopologyConfig, decorator: Google::Apis::DataflowV1b3::TopologyConfig::Representation + + property :drain, as: 'drain' + end + end + + class TopologyConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :computations, as: 'computations', class: Google::Apis::DataflowV1b3::ComputationTopology, decorator: Google::Apis::DataflowV1b3::ComputationTopology::Representation + + collection :data_disk_assignments, as: 'dataDiskAssignments', class: Google::Apis::DataflowV1b3::DataDiskAssignment, decorator: Google::Apis::DataflowV1b3::DataDiskAssignment::Representation + + hash :user_stage_to_computation_name_map, as: 'userStageToComputationNameMap' + property :forwarding_key_bits, as: 'forwardingKeyBits' + property :persistent_state_version, as: 'persistentStateVersion' + end + end + + class ComputationTopology + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :system_stage_name, as: 'systemStageName' + property :computation_id, as: 'computationId' + property :user_stage_name, as: 'userStageName' + collection :key_ranges, as: 'keyRanges', class: Google::Apis::DataflowV1b3::KeyRangeLocation, decorator: Google::Apis::DataflowV1b3::KeyRangeLocation::Representation + + collection :inputs, as: 'inputs', class: Google::Apis::DataflowV1b3::StreamLocation, decorator: Google::Apis::DataflowV1b3::StreamLocation::Representation + + collection :outputs, as: 'outputs', class: Google::Apis::DataflowV1b3::StreamLocation, decorator: Google::Apis::DataflowV1b3::StreamLocation::Representation + + collection :state_families, as: 'stateFamilies', class: Google::Apis::DataflowV1b3::StateFamilyConfig, decorator: Google::Apis::DataflowV1b3::StateFamilyConfig::Representation + + end + end + + class KeyRangeLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :start, as: 'start' + property :end, as: 'end' + property :delivery_endpoint, as: 'deliveryEndpoint' + property :persistent_directory, as: 'persistentDirectory' + property :data_disk, as: 'dataDisk' + end + end + + class StreamLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :streaming_stage_location, as: 'streamingStageLocation', class: Google::Apis::DataflowV1b3::StreamingStageLocation, decorator: Google::Apis::DataflowV1b3::StreamingStageLocation::Representation + + property :pubsub_location, as: 'pubsubLocation', class: Google::Apis::DataflowV1b3::PubsubLocation, decorator: Google::Apis::DataflowV1b3::PubsubLocation::Representation + + property :side_input_location, as: 'sideInputLocation', class: Google::Apis::DataflowV1b3::StreamingSideInputLocation, decorator: Google::Apis::DataflowV1b3::StreamingSideInputLocation::Representation + + property :custom_source_location, as: 'customSourceLocation', class: Google::Apis::DataflowV1b3::CustomSourceLocation, decorator: Google::Apis::DataflowV1b3::CustomSourceLocation::Representation + + end + end + + class StreamingStageLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :stream_id, as: 'streamId' + end + end + + class PubsubLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :topic, as: 'topic' + property :subscription, as: 'subscription' + property :timestamp_label, as: 'timestampLabel' + property :id_label, as: 'idLabel' + property :drop_late_data, as: 'dropLateData' + property :tracking_subscription, as: 'trackingSubscription' + end + end + + class StreamingSideInputLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :tag, as: 'tag' + property :state_family, as: 'stateFamily' + end + end + + class CustomSourceLocation + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :stateful, as: 'stateful' + end + end + + class StateFamilyConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :state_family, as: 'stateFamily' + property :is_read, as: 'isRead' + end + end + + class DataDiskAssignment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :vm_instance, as: 'vmInstance' + collection :data_disks, as: 'dataDisks' + end + end + + class SourceOperationRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :split, as: 'split', class: Google::Apis::DataflowV1b3::SourceSplitRequest, decorator: Google::Apis::DataflowV1b3::SourceSplitRequest::Representation + + property :get_metadata, as: 'getMetadata', class: Google::Apis::DataflowV1b3::SourceGetMetadataRequest, decorator: Google::Apis::DataflowV1b3::SourceGetMetadataRequest::Representation + + end + end + + class SourceSplitRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :source, as: 'source', class: Google::Apis::DataflowV1b3::Source, decorator: Google::Apis::DataflowV1b3::Source::Representation + + property :options, as: 'options', class: Google::Apis::DataflowV1b3::SourceSplitOptions, decorator: Google::Apis::DataflowV1b3::SourceSplitOptions::Representation + + end + end + + class SourceSplitOptions + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :desired_bundle_size_bytes, as: 'desiredBundleSizeBytes' + property :desired_shard_size_bytes, as: 'desiredShardSizeBytes' + end + end + + class SourceGetMetadataRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :source, as: 'source', class: Google::Apis::DataflowV1b3::Source, decorator: Google::Apis::DataflowV1b3::Source::Representation + + end + end + + class StreamingComputationTask + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :task_type, as: 'taskType' + collection :data_disks, as: 'dataDisks', class: Google::Apis::DataflowV1b3::MountedDataDisk, decorator: Google::Apis::DataflowV1b3::MountedDataDisk::Representation + + collection :computation_ranges, as: 'computationRanges', class: Google::Apis::DataflowV1b3::StreamingComputationRanges, decorator: Google::Apis::DataflowV1b3::StreamingComputationRanges::Representation + + end + end + + class MountedDataDisk + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :data_disk, as: 'dataDisk' + end + end + + class StreamingComputationRanges + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :computation_id, as: 'computationId' + collection :range_assignments, as: 'rangeAssignments', class: Google::Apis::DataflowV1b3::KeyRangeDataDiskAssignment, decorator: Google::Apis::DataflowV1b3::KeyRangeDataDiskAssignment::Representation + + end + end + + class KeyRangeDataDiskAssignment + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :start, as: 'start' + property :end, as: 'end' + property :data_disk, as: 'dataDisk' + end + end + + class StreamingConfigTask + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :streaming_computation_configs, as: 'streamingComputationConfigs', class: Google::Apis::DataflowV1b3::StreamingComputationConfig, decorator: Google::Apis::DataflowV1b3::StreamingComputationConfig::Representation + + hash :user_step_to_state_family_name_map, as: 'userStepToStateFamilyNameMap' + end + end + + class StreamingComputationConfig + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :computation_id, as: 'computationId' + property :system_name, as: 'systemName' + property :stage_name, as: 'stageName' + collection :instructions, as: 'instructions', class: Google::Apis::DataflowV1b3::ParallelInstruction, decorator: Google::Apis::DataflowV1b3::ParallelInstruction::Representation + + end + end + + class SendWorkerMessagesRequest + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :worker_messages, as: 'workerMessages', class: Google::Apis::DataflowV1b3::WorkerMessage, decorator: Google::Apis::DataflowV1b3::WorkerMessage::Representation + + end + end + + class WorkerMessage + # @private + class Representation < Google::Apis::Core::JsonRepresentation + hash :labels, as: 'labels' + property :time, as: 'time' + property :worker_health_report, as: 'workerHealthReport', class: Google::Apis::DataflowV1b3::WorkerHealthReport, decorator: Google::Apis::DataflowV1b3::WorkerHealthReport::Representation + + property :worker_message_code, as: 'workerMessageCode', class: Google::Apis::DataflowV1b3::WorkerMessageCode, decorator: Google::Apis::DataflowV1b3::WorkerMessageCode::Representation + + end + end + + class WorkerHealthReport + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :vm_is_healthy, as: 'vmIsHealthy' + property :vm_startup_time, as: 'vmStartupTime' + property :report_interval, as: 'reportInterval' + collection :pods, as: 'pods' + end + end + + class WorkerMessageCode + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :code, as: 'code' + hash :parameters, as: 'parameters' + end + end + + class SendWorkerMessagesResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + collection :worker_message_responses, as: 'workerMessageResponses', class: Google::Apis::DataflowV1b3::WorkerMessageResponse, decorator: Google::Apis::DataflowV1b3::WorkerMessageResponse::Representation + + end + end + + class WorkerMessageResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :worker_health_report_response, as: 'workerHealthReportResponse', class: Google::Apis::DataflowV1b3::WorkerHealthReportResponse, decorator: Google::Apis::DataflowV1b3::WorkerHealthReportResponse::Representation + + end + end + + class WorkerHealthReportResponse + # @private + class Representation < Google::Apis::Core::JsonRepresentation + property :report_interval, as: 'reportInterval' + end + end + end + end +end diff --git a/generated/google/apis/dataflow_v1b3/service.rb b/generated/google/apis/dataflow_v1b3/service.rb new file mode 100644 index 000000000..ed3d8e10e --- /dev/null +++ b/generated/google/apis/dataflow_v1b3/service.rb @@ -0,0 +1,515 @@ +# 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 DataflowV1b3 + # Google Dataflow API + # + # Develops and executes data processing patterns like ETL, batch computation, + # and continuous computation. + # + # @example + # require 'google/apis/dataflow_v1b3' + # + # Dataflow = Google::Apis::DataflowV1b3 # Alias the module + # service = Dataflow::DataflowService.new + # + # @see https://cloud.google.com/dataflow + class DataflowService < 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://dataflow.googleapis.com/', '') + end + + # Send a worker_message to the service. + # @param [String] project_id + # The project to send the WorkerMessages to. + # @param [Google::Apis::DataflowV1b3::SendWorkerMessagesRequest] send_worker_messages_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::DataflowV1b3::SendWorkerMessagesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::SendWorkerMessagesResponse] + # + # @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 worker_project_messages(project_id, send_worker_messages_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/WorkerMessages', options) + command.request_representation = Google::Apis::DataflowV1b3::SendWorkerMessagesRequest::Representation + command.request_object = send_worker_messages_request_object + command.response_representation = Google::Apis::DataflowV1b3::SendWorkerMessagesResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::SendWorkerMessagesResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a dataflow job. + # @param [String] project_id + # The project which owns the job. + # @param [Google::Apis::DataflowV1b3::Job] job_object + # @param [String] view + # Level of information requested in response. + # @param [String] replace_job_id + # DEPRECATED. This field is now on the Job message. + # @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::DataflowV1b3::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::Job] + # + # @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_project_job(project_id, job_object = nil, view: nil, replace_job_id: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/jobs', options) + command.request_representation = Google::Apis::DataflowV1b3::Job::Representation + command.request_object = job_object + command.response_representation = Google::Apis::DataflowV1b3::Job::Representation + command.response_class = Google::Apis::DataflowV1b3::Job + command.params['projectId'] = project_id unless project_id.nil? + command.query['view'] = view unless view.nil? + command.query['replaceJobId'] = replace_job_id unless replace_job_id.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 state of the specified dataflow job. + # @param [String] project_id + # The project which owns the job. + # @param [String] job_id + # Identifies a single job. + # @param [String] view + # Level of information requested in response. + # @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::DataflowV1b3::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::Job] + # + # @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_project_job(project_id, job_id, view: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1b3/projects/{projectId}/jobs/{jobId}', options) + command.response_representation = Google::Apis::DataflowV1b3::Job::Representation + command.response_class = Google::Apis::DataflowV1b3::Job + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['view'] = view unless view.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 the state of an existing dataflow job. + # @param [String] project_id + # The project which owns the job. + # @param [String] job_id + # Identifies a single job. + # @param [Google::Apis::DataflowV1b3::Job] job_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::DataflowV1b3::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::Job] + # + # @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 update_project_job(project_id, job_id, job_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:put, 'v1b3/projects/{projectId}/jobs/{jobId}', options) + command.request_representation = Google::Apis::DataflowV1b3::Job::Representation + command.request_object = job_object + command.response_representation = Google::Apis::DataflowV1b3::Job::Representation + command.response_class = Google::Apis::DataflowV1b3::Job + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # List the jobs of a project + # @param [String] project_id + # The project which owns the jobs. + # @param [String] filter + # The kind of filter to use. + # @param [String] view + # Level of information requested in response. Default is SUMMARY. + # @param [Fixnum] page_size + # If there are many jobs, limit response to at most this many. The actual number + # of jobs returned will be the lesser of max_responses and an unspecified server- + # defined limit. + # @param [String] page_token + # Set this to the 'next_page_token' field of a previous response to request + # additional results in a long list. + # @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::DataflowV1b3::ListJobsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::ListJobsResponse] + # + # @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_project_jobs(project_id, filter: nil, view: nil, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1b3/projects/{projectId}/jobs', options) + command.response_representation = Google::Apis::DataflowV1b3::ListJobsResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::ListJobsResponse + command.params['projectId'] = project_id unless project_id.nil? + command.query['filter'] = filter unless filter.nil? + command.query['view'] = view unless view.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Request the job status. + # @param [String] project_id + # A project id. + # @param [String] job_id + # The job to get messages for. + # @param [String] start_time + # Return only metric data that has changed since this time. Default is to return + # all information about all metrics for the job. + # @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::DataflowV1b3::JobMetrics] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::JobMetrics] + # + # @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_project_job_metrics(project_id, job_id, start_time: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1b3/projects/{projectId}/jobs/{jobId}/metrics', options) + command.response_representation = Google::Apis::DataflowV1b3::JobMetrics::Representation + command.response_class = Google::Apis::DataflowV1b3::JobMetrics + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['startTime'] = start_time unless start_time.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Get encoded debug configuration for component. Not cacheable. + # @param [String] project_id + # The project id. + # @param [String] job_id + # The job id. + # @param [Google::Apis::DataflowV1b3::GetDebugConfigRequest] get_debug_config_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::DataflowV1b3::GetDebugConfigResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::GetDebugConfigResponse] + # + # @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_project_job_debug_config(project_id, job_id, get_debug_config_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/jobs/{jobId}/debug/getConfig', options) + command.request_representation = Google::Apis::DataflowV1b3::GetDebugConfigRequest::Representation + command.request_object = get_debug_config_request_object + command.response_representation = Google::Apis::DataflowV1b3::GetDebugConfigResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::GetDebugConfigResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Send encoded debug capture data for component. + # @param [String] project_id + # The project id. + # @param [String] job_id + # The job id. + # @param [Google::Apis::DataflowV1b3::SendDebugCaptureRequest] send_debug_capture_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::DataflowV1b3::SendDebugCaptureResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::SendDebugCaptureResponse] + # + # @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 send_project_job_debug_capture(project_id, job_id, send_debug_capture_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/jobs/{jobId}/debug/sendCapture', options) + command.request_representation = Google::Apis::DataflowV1b3::SendDebugCaptureRequest::Representation + command.request_object = send_debug_capture_request_object + command.response_representation = Google::Apis::DataflowV1b3::SendDebugCaptureResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::SendDebugCaptureResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Request the job status. + # @param [String] project_id + # A project id. + # @param [String] job_id + # The job to get messages about. + # @param [String] minimum_importance + # Filter to only get messages with importance >= level + # @param [Fixnum] page_size + # If specified, determines the maximum number of messages to return. If + # unspecified, the service may choose an appropriate default, or may return an + # arbitrarily large number of results. + # @param [String] page_token + # If supplied, this should be the value of next_page_token returned by an + # earlier call. This will cause the next page of results to be returned. + # @param [String] start_time + # If specified, return only messages with timestamps >= start_time. The default + # is the job creation time (i.e. beginning of messages). + # @param [String] end_time + # Return only messages with timestamps < end_time. The default is now (i.e. + # return up to the latest messages available). + # @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::DataflowV1b3::ListJobMessagesResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::ListJobMessagesResponse] + # + # @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_project_job_messages(project_id, job_id, minimum_importance: nil, page_size: nil, page_token: nil, start_time: nil, end_time: nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1b3/projects/{projectId}/jobs/{jobId}/messages', options) + command.response_representation = Google::Apis::DataflowV1b3::ListJobMessagesResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::ListJobMessagesResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['minimumImportance'] = minimum_importance unless minimum_importance.nil? + command.query['pageSize'] = page_size unless page_size.nil? + command.query['pageToken'] = page_token unless page_token.nil? + command.query['startTime'] = start_time unless start_time.nil? + command.query['endTime'] = end_time unless end_time.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Reports the status of dataflow WorkItems leased by a worker. + # @param [String] project_id + # The project which owns the WorkItem's job. + # @param [String] job_id + # The job which the WorkItem is part of. + # @param [Google::Apis::DataflowV1b3::ReportWorkItemStatusRequest] report_work_item_status_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::DataflowV1b3::ReportWorkItemStatusResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::ReportWorkItemStatusResponse] + # + # @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 report_project_job_work_item_status(project_id, job_id, report_work_item_status_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/jobs/{jobId}/workItems:reportStatus', options) + command.request_representation = Google::Apis::DataflowV1b3::ReportWorkItemStatusRequest::Representation + command.request_object = report_work_item_status_request_object + command.response_representation = Google::Apis::DataflowV1b3::ReportWorkItemStatusResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::ReportWorkItemStatusResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Leases a dataflow WorkItem to run. + # @param [String] project_id + # Identifies the project this worker belongs to. + # @param [String] job_id + # Identifies the workflow job this worker belongs to. + # @param [Google::Apis::DataflowV1b3::LeaseWorkItemRequest] lease_work_item_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::DataflowV1b3::LeaseWorkItemResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::LeaseWorkItemResponse] + # + # @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 lease_work_item(project_id, job_id, lease_work_item_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/jobs/{jobId}/workItems:lease', options) + command.request_representation = Google::Apis::DataflowV1b3::LeaseWorkItemRequest::Representation + command.request_object = lease_work_item_request_object + command.response_representation = Google::Apis::DataflowV1b3::LeaseWorkItemResponse::Representation + command.response_class = Google::Apis::DataflowV1b3::LeaseWorkItemResponse + command.params['projectId'] = project_id unless project_id.nil? + command.params['jobId'] = job_id unless job_id.nil? + command.query['fields'] = fields unless fields.nil? + command.query['quotaUser'] = quota_user unless quota_user.nil? + execute_or_queue_command(command, &block) + end + + # Creates a dataflow job from a template. + # @param [String] project_id + # The project which owns the job. + # @param [Google::Apis::DataflowV1b3::CreateJobFromTemplateRequest] create_job_from_template_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::DataflowV1b3::Job] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::DataflowV1b3::Job] + # + # @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_job_from_template(project_id, create_job_from_template_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1b3/projects/{projectId}/templates', options) + command.request_representation = Google::Apis::DataflowV1b3::CreateJobFromTemplateRequest::Representation + command.request_object = create_job_from_template_request_object + command.response_representation = Google::Apis::DataflowV1b3::Job::Representation + command.response_class = Google::Apis::DataflowV1b3::Job + command.params['projectId'] = project_id unless project_id.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/script/generate b/script/generate index 255c6167b..efb9ac74c 100755 --- a/script/generate +++ b/script/generate @@ -40,7 +40,8 @@ API_IDS=(adexchangebuyer:v1.4 \ content:v2 \ coordinate:v1 \ customsearch:v1 \ - dataproc:v1 \ + dataflow:v1b3 \ + dataproc:v1 \ datastore:v1 \ deploymentmanager:v2 \ dfareporting:v2.6 \ From c0e7fc9249a2210b50f2d9f5340c45b9e9a6f4e0 Mon Sep 17 00:00:00 2001 From: Thomas Coffee Date: Tue, 4 Oct 2016 12:47:28 -0700 Subject: [PATCH 3/4] Regenerate APIs and bump version --- api_names_out.yaml | 6 + generated/google/apis/adsense_v1_4.rb | 2 +- generated/google/apis/adsensehost_v4_1.rb | 2 +- generated/google/apis/cloudbuild_v1.rb | 2 +- generated/google/apis/logging_v2beta1.rb | 2 +- generated/google/apis/pubsub_v1.rb | 2 +- generated/google/apis/pubsub_v1/classes.rb | 19 +-- generated/google/apis/pubsub_v1/service.rb | 155 +++++++++++++++++---- generated/google/apis/sheets_v4.rb | 2 +- generated/google/apis/sheets_v4/classes.rb | 2 + lib/google/apis/version.rb | 2 +- 11 files changed, 153 insertions(+), 43 deletions(-) diff --git a/api_names_out.yaml b/api_names_out.yaml index 9020dc9b1..1a363c402 100644 --- a/api_names_out.yaml +++ b/api_names_out.yaml @@ -25120,6 +25120,12 @@ "/pubsub:v1/pubsub.projects.subscriptions.pull/subscription": subscription "/pubsub:v1/pubsub.projects.subscriptions.modifyPushConfig": modify_subscription_push_config "/pubsub:v1/pubsub.projects.subscriptions.modifyPushConfig/subscription": subscription +"/pubsub:v1/pubsub.projects.snapshots.setIamPolicy": set_snapshot_iam_policy +"/pubsub:v1/pubsub.projects.snapshots.setIamPolicy/resource": resource +"/pubsub:v1/pubsub.projects.snapshots.getIamPolicy": get_project_snapshot_iam_policy +"/pubsub:v1/pubsub.projects.snapshots.getIamPolicy/resource": resource +"/pubsub:v1/pubsub.projects.snapshots.testIamPermissions": test_snapshot_iam_permissions +"/pubsub:v1/pubsub.projects.snapshots.testIamPermissions/resource": resource "/pubsub:v1/SetIamPolicyRequest": set_iam_policy_request "/pubsub:v1/SetIamPolicyRequest/policy": policy "/pubsub:v1/Policy": policy diff --git a/generated/google/apis/adsense_v1_4.rb b/generated/google/apis/adsense_v1_4.rb index 6a28882a8..55867594c 100644 --- a/generated/google/apis/adsense_v1_4.rb +++ b/generated/google/apis/adsense_v1_4.rb @@ -25,7 +25,7 @@ module Google # @see https://developers.google.com/adsense/management/ module AdsenseV1_4 VERSION = 'V1_4' - REVISION = '20160926' + REVISION = '20161003' # View and manage your AdSense data AUTH_ADSENSE = 'https://www.googleapis.com/auth/adsense' diff --git a/generated/google/apis/adsensehost_v4_1.rb b/generated/google/apis/adsensehost_v4_1.rb index c532799d5..8278ea702 100644 --- a/generated/google/apis/adsensehost_v4_1.rb +++ b/generated/google/apis/adsensehost_v4_1.rb @@ -26,7 +26,7 @@ module Google # @see https://developers.google.com/adsense/host/ module AdsensehostV4_1 VERSION = 'V4_1' - REVISION = '20160926' + REVISION = '20161003' # View and manage your AdSense host data and associated accounts AUTH_ADSENSEHOST = 'https://www.googleapis.com/auth/adsensehost' diff --git a/generated/google/apis/cloudbuild_v1.rb b/generated/google/apis/cloudbuild_v1.rb index 43324ad0f..41c5b84c1 100644 --- a/generated/google/apis/cloudbuild_v1.rb +++ b/generated/google/apis/cloudbuild_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/container-builder/docs/ module CloudbuildV1 VERSION = 'V1' - REVISION = '20161003' + REVISION = '20161004' # 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/logging_v2beta1.rb b/generated/google/apis/logging_v2beta1.rb index 5f88eb025..7e9654368 100644 --- a/generated/google/apis/logging_v2beta1.rb +++ b/generated/google/apis/logging_v2beta1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/logging/docs/ module LoggingV2beta1 VERSION = 'V2beta1' - REVISION = '20160926' + REVISION = '20161003' # 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/pubsub_v1.rb b/generated/google/apis/pubsub_v1.rb index 5eff2c4b3..bf3332568 100644 --- a/generated/google/apis/pubsub_v1.rb +++ b/generated/google/apis/pubsub_v1.rb @@ -25,7 +25,7 @@ module Google # @see https://cloud.google.com/pubsub/docs module PubsubV1 VERSION = 'V1' - REVISION = '20160317' + REVISION = '20161003' # 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/pubsub_v1/classes.rb b/generated/google/apis/pubsub_v1/classes.rb index 84ed56fe5..77cebbf06 100644 --- a/generated/google/apis/pubsub_v1/classes.rb +++ b/generated/google/apis/pubsub_v1/classes.rb @@ -141,8 +141,8 @@ module Google 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. + # (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 @@ -223,8 +223,8 @@ module Google class Message include Google::Apis::Core::Hashable - # The message payload. For JSON requests, the value of this field must be base64- - # encoded. + # The message payload. For JSON requests, the value of this field must be [ + # base64-encoded](https://tools.ietf.org/html/rfc4648). # Corresponds to the JSON property `data` # @return [String] attr_accessor :data @@ -383,11 +383,12 @@ module Google # an outstanding message and will not be delivered again during that time (on a # best-effort basis). For pull subscriptions, this value is used as the initial # value for the ack deadline. To override this value for a given message, call ` - # ModifyAckDeadline` with the corresponding `ack_id` if using pull. For push - # delivery, this value is also used to set the request timeout for the call to - # the push endpoint. If the subscriber never acknowledges the message, the Pub/ - # Sub system will eventually redeliver the message. If this parameter is not set, - # the default value of 10 seconds is used. + # ModifyAckDeadline` with the corresponding `ack_id` if using pull. The maximum + # custom deadline you can specify is 600 seconds (10 minutes). For push delivery, + # this value is also used to set the request timeout for the call to the push + # endpoint. If the subscriber never acknowledges the message, the Pub/Sub system + # will eventually redeliver the message. If this parameter is 0, a default value + # of 10 seconds is used. # Corresponds to the JSON property `ackDeadlineSeconds` # @return [Fixnum] attr_accessor :ack_deadline_seconds diff --git a/generated/google/apis/pubsub_v1/service.rb b/generated/google/apis/pubsub_v1/service.rb index c7442c084..6e634551e 100644 --- a/generated/google/apis/pubsub_v1/service.rb +++ b/generated/google/apis/pubsub_v1/service.rb @@ -50,9 +50,8 @@ module Google # existing policy. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `setIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::PubsubV1::SetIamPolicyRequest] set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -83,13 +82,12 @@ module Google execute_or_queue_command(command, &block) end - # Gets the access control policy for a `resource`. Returns an empty policy if - # the resource exists and does not have a policy set. + # Gets the access control policy for a resource. Returns an empty policy if the + # resource exists and does not have a policy set. # @param [String] resource # REQUIRED: The resource for which the policy is being requested. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `getIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -120,9 +118,8 @@ module Google # Returns permissions that a caller has on the specified resource. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. ` - # resource` is usually specified as a path, such as `projects/*project*/zones/* - # zone*/disks/*disk*`. The format for the path specified in this value is - # resource specific and is specified in the `testIamPermissions` documentation. + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. # @param [Google::Apis::PubsubV1::TestIamPermissionsRequest] test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -369,9 +366,8 @@ module Google # existing policy. # @param [String] resource # REQUIRED: The resource for which the policy is being specified. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `setIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [Google::Apis::PubsubV1::SetIamPolicyRequest] set_iam_policy_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -402,13 +398,12 @@ module Google execute_or_queue_command(command, &block) end - # Gets the access control policy for a `resource`. Returns an empty policy if - # the resource exists and does not have a policy set. + # Gets the access control policy for a resource. Returns an empty policy if the + # resource exists and does not have a policy set. # @param [String] resource # REQUIRED: The resource for which the policy is being requested. `resource` is - # usually specified as a path, such as `projects/*project*/zones/*zone*/disks/* - # disk*`. The format for the path specified in this value is resource specific - # and is specified in the `getIamPolicy` documentation. + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. # @param [String] fields # Selector specifying which fields to include in a partial response. # @param [String] quota_user @@ -439,9 +434,8 @@ module Google # Returns permissions that a caller has on the specified resource. # @param [String] resource # REQUIRED: The resource for which the policy detail is being requested. ` - # resource` is usually specified as a path, such as `projects/*project*/zones/* - # zone*/disks/*disk*`. The format for the path specified in this value is - # resource specific and is specified in the `testIamPermissions` documentation. + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. # @param [Google::Apis::PubsubV1::TestIamPermissionsRequest] test_iam_permissions_request_object # @param [String] fields # Selector specifying which fields to include in a partial response. @@ -475,7 +469,8 @@ module Google # Creates a subscription to a given topic. If the subscription already exists, # returns `ALREADY_EXISTS`. If the corresponding topic doesn't exist, returns ` # NOT_FOUND`. If the name is not provided in the request, the server will assign - # a random name for this subscription on the same project as the topic. + # a random name for this subscription on the same project as the topic. Note + # that for REST API requests, you must specify a name. # @param [String] name # The name of the subscription. It must have the format `"projects/`project`/ # subscriptions/`subscription`"`. ``subscription`` must start with a letter, and @@ -581,10 +576,10 @@ module Google execute_or_queue_command(command, &block) end - # Deletes an existing subscription. All pending messages in the subscription are - # immediately dropped. Calls to `Pull` after deletion will return `NOT_FOUND`. - # After a subscription is deleted, a new one may be created with the same name, - # but the new one has no association with the old subscription, or its topic + # Deletes an existing subscription. All messages retained in the subscription + # are immediately dropped. Calls to `Pull` after deletion will return `NOT_FOUND` + # . After a subscription is deleted, a new one may be created with the same name, + # but the new one has no association with the old subscription or its topic # unless the same topic is specified. # @param [String] subscription # The subscription to delete. @@ -618,6 +613,8 @@ module Google # Modifies the ack deadline for a specific message. This method is useful to # indicate that more time is needed to process a message by the subscriber, or # to make the message available for redelivery if the processing was interrupted. + # Note that this does not modify the subscription-level `ackDeadlineSeconds` + # used for subsequent messages. # @param [String] subscription # The name of the subscription. # @param [Google::Apis::PubsubV1::ModifyAckDeadlineRequest] modify_ack_deadline_request_object @@ -758,6 +755,110 @@ module Google command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end + + # Sets the access control policy on the specified resource. Replaces any + # existing policy. + # @param [String] resource + # REQUIRED: The resource for which the policy is being specified. `resource` is + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. + # @param [Google::Apis::PubsubV1::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::PubsubV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1::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_snapshot_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', options) + command.request_representation = Google::Apis::PubsubV1::SetIamPolicyRequest::Representation + command.request_object = set_iam_policy_request_object + command.response_representation = Google::Apis::PubsubV1::Policy::Representation + command.response_class = Google::Apis::PubsubV1::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 + + # Gets the access control policy for a resource. Returns an empty policy if the + # resource exists and does not have a policy set. + # @param [String] resource + # REQUIRED: The resource for which the policy is being requested. `resource` is + # usually specified as a path. For example, a Project resource is specified as ` + # projects/`project``. + # @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::PubsubV1::Policy] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1::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_project_snapshot_iam_policy(resource, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:get, 'v1/{+resource}:getIamPolicy', options) + command.response_representation = Google::Apis::PubsubV1::Policy::Representation + command.response_class = Google::Apis::PubsubV1::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 resource. + # @param [String] resource + # REQUIRED: The resource for which the policy detail is being requested. ` + # resource` is usually specified as a path. For example, a Project resource is + # specified as `projects/`project``. + # @param [Google::Apis::PubsubV1::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::PubsubV1::TestIamPermissionsResponse] parsed result object + # @yieldparam err [StandardError] error object if request failed + # + # @return [Google::Apis::PubsubV1::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_snapshot_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) + command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', options) + command.request_representation = Google::Apis::PubsubV1::TestIamPermissionsRequest::Representation + command.request_object = test_iam_permissions_request_object + command.response_representation = Google::Apis::PubsubV1::TestIamPermissionsResponse::Representation + command.response_class = Google::Apis::PubsubV1::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 protected diff --git a/generated/google/apis/sheets_v4.rb b/generated/google/apis/sheets_v4.rb index 44624c628..d7581daf9 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 = '20160929' + REVISION = '20161004' # View the files in your Google Drive AUTH_DRIVE_READONLY = 'https://www.googleapis.com/auth/drive.readonly' diff --git a/generated/google/apis/sheets_v4/classes.rb b/generated/google/apis/sheets_v4/classes.rb index 4ca2b1d5b..8293e3afd 100644 --- a/generated/google/apis/sheets_v4/classes.rb +++ b/generated/google/apis/sheets_v4/classes.rb @@ -3240,6 +3240,8 @@ module Google # Pattern string used for formatting. If not set, a default pattern based on # the user's locale will be used if necessary for the given type. + # See the [Date and Number Formats guide](/sheets/guides/formats) for more + # information about the supported patterns. # Corresponds to the JSON property `pattern` # @return [String] attr_accessor :pattern diff --git a/lib/google/apis/version.rb b/lib/google/apis/version.rb index 0686a2bbf..5f03c20c1 100644 --- a/lib/google/apis/version.rb +++ b/lib/google/apis/version.rb @@ -15,7 +15,7 @@ module Google module Apis # Client library version - VERSION = '0.9.15' + VERSION = '0.9.16' # Current operating system # @private