# 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 CloudfunctionsV1 # A resource that represents Google Cloud Platform location. class Location include Google::Apis::Core::Hashable # The canonical id for this location. For example: `"us-east1"`. # Corresponds to the JSON property `locationId` # @return [String] attr_accessor :location_id # Service-specific metadata. For example the available capacity at the given # location. # Corresponds to the JSON property `metadata` # @return [Hash] attr_accessor :metadata # Cross-service attributes for the location. For example # `"cloud.googleapis.com/region": "us-east1"` # Corresponds to the JSON property `labels` # @return [Hash] attr_accessor :labels # Resource name for the location, which may vary between implementations. # For example: `"projects/example-project/locations/us-east1"` # 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) @location_id = args[:location_id] if args.key?(:location_id) @metadata = args[:metadata] if args.key?(:metadata) @labels = args[:labels] if args.key?(:labels) @name = args[:name] if args.key?(:name) end end # Metadata describing an Operation class OperationMetadataV1Beta2 include Google::Apis::Core::Hashable # Target of the operation - for example # projects/project-1/locations/region-1/functions/function-1 # Corresponds to the JSON property `target` # @return [String] attr_accessor :target # The original request that started the operation. # Corresponds to the JSON property `request` # @return [Hash] attr_accessor :request # Type of operation. # 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) @target = args[:target] if args.key?(:target) @request = args[:request] if args.key?(:request) @type = args[:type] if args.key?(:type) end end end end end