359 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Ruby
		
	
	
	
			
		
		
	
	
			359 lines
		
	
	
		
			12 KiB
		
	
	
	
		
			Ruby
		
	
	
	
# 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 CloudprivatecatalogV1beta1
 | 
						|
      
 | 
						|
      # The readonly representation of a catalog computed with a given resource
 | 
						|
      # context.
 | 
						|
      class GoogleCloudPrivatecatalogV1beta1Catalog
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Output only. The time when the catalog was created.
 | 
						|
        # Corresponds to the JSON property `createTime`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :create_time
 | 
						|
      
 | 
						|
        # Output only. The description of the catalog.
 | 
						|
        # Corresponds to the JSON property `description`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :description
 | 
						|
      
 | 
						|
        # Output only. The descriptive name of the catalog as it appears in UIs.
 | 
						|
        # Corresponds to the JSON property `displayName`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :display_name
 | 
						|
      
 | 
						|
        # Output only. The resource name of the target catalog, in the format of
 | 
						|
        # `catalogs/`catalog_id`'.
 | 
						|
        # Corresponds to the JSON property `name`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :name
 | 
						|
      
 | 
						|
        # Output only. The time when the catalog was last updated.
 | 
						|
        # 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)
 | 
						|
          @create_time = args[:create_time] if args.key?(:create_time)
 | 
						|
          @description = args[:description] if args.key?(:description)
 | 
						|
          @display_name = args[:display_name] if args.key?(:display_name)
 | 
						|
          @name = args[:name] if args.key?(:name)
 | 
						|
          @update_time = args[:update_time] if args.key?(:update_time)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The readonly representation of a product computed with a given resource
 | 
						|
      # context.
 | 
						|
      class GoogleCloudPrivatecatalogV1beta1Product
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Output only. The type of the product asset. It can be one of the
 | 
						|
        # following values:
 | 
						|
        # * `google.deploymentmanager.Template`
 | 
						|
        # * `google.cloudprivatecatalog.ListingOnly`
 | 
						|
        # Corresponds to the JSON property `assetType`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :asset_type
 | 
						|
      
 | 
						|
        # Output only. The time when the product was created.
 | 
						|
        # Corresponds to the JSON property `createTime`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :create_time
 | 
						|
      
 | 
						|
        # Output only. The display metadata to describe the product.
 | 
						|
        # The JSON schema of the metadata differs by Product.asset_type.
 | 
						|
        # When the type is `google.deploymentmanager.Template`, the schema is as
 | 
						|
        # follows:
 | 
						|
        # ```
 | 
						|
        # "$schema": http://json-schema.org/draft-04/schema#
 | 
						|
        # type: object
 | 
						|
        # properties:
 | 
						|
        # name:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 64
 | 
						|
        # description:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 2048
 | 
						|
        # tagline:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 100
 | 
						|
        # support_info:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 2048
 | 
						|
        # creator:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 100
 | 
						|
        # documentation:
 | 
						|
        # type: array
 | 
						|
        # items:
 | 
						|
        # type: object
 | 
						|
        # properties:
 | 
						|
        # url:
 | 
						|
        # type: string
 | 
						|
        # pattern:
 | 
						|
        # "^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"
 | 
						|
        # title:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 64
 | 
						|
        # description:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 2048
 | 
						|
        # required:
 | 
						|
        # - name
 | 
						|
        # - description
 | 
						|
        # additionalProperties: false
 | 
						|
        # ```
 | 
						|
        # When the asset type is `google.cloudprivatecatalog.ListingOnly`, the schema
 | 
						|
        # is as follows:
 | 
						|
        # ```
 | 
						|
        # "$schema": http://json-schema.org/draft-04/schema#
 | 
						|
        # type: object
 | 
						|
        # properties:
 | 
						|
        # name:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 64
 | 
						|
        # description:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 2048
 | 
						|
        # tagline:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 100
 | 
						|
        # support_info:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 2048
 | 
						|
        # creator:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 100
 | 
						|
        # documentation:
 | 
						|
        # type: array
 | 
						|
        # items:
 | 
						|
        # type: object
 | 
						|
        # properties:
 | 
						|
        # url:
 | 
						|
        # type: string
 | 
						|
        # pattern:
 | 
						|
        # "^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"
 | 
						|
        # title:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 64
 | 
						|
        # description:
 | 
						|
        # type: string
 | 
						|
        # minLength: 1
 | 
						|
        # maxLength: 2048
 | 
						|
        # signup_url:
 | 
						|
        # type: string
 | 
						|
        # pattern:
 | 
						|
        # "^(https?)://[-a-zA-Z0-9+&@#/%?=~_|!:,.;]*[-a-zA-Z0-9+&@#/%=~_|]"
 | 
						|
        # required:
 | 
						|
        # - name
 | 
						|
        # - description
 | 
						|
        # - signup_url
 | 
						|
        # additionalProperties: false
 | 
						|
        # ```
 | 
						|
        # Corresponds to the JSON property `displayMetadata`
 | 
						|
        # @return [Hash<String,Object>]
 | 
						|
        attr_accessor :display_metadata
 | 
						|
      
 | 
						|
        # Output only. The icon URI of the product.
 | 
						|
        # Corresponds to the JSON property `iconUri`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :icon_uri
 | 
						|
      
 | 
						|
        # Output only. The resource name of the target product, in the format of
 | 
						|
        # `products/a-z*[a-z0-9]'.
 | 
						|
        # A unique identifier for the product under a catalog.
 | 
						|
        # Corresponds to the JSON property `name`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :name
 | 
						|
      
 | 
						|
        # Output only. The time when the product was last updated.
 | 
						|
        # 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)
 | 
						|
          @asset_type = args[:asset_type] if args.key?(:asset_type)
 | 
						|
          @create_time = args[:create_time] if args.key?(:create_time)
 | 
						|
          @display_metadata = args[:display_metadata] if args.key?(:display_metadata)
 | 
						|
          @icon_uri = args[:icon_uri] if args.key?(:icon_uri)
 | 
						|
          @name = args[:name] if args.key?(:name)
 | 
						|
          @update_time = args[:update_time] if args.key?(:update_time)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Response message for PrivateCatalog.SearchCatalogs.
 | 
						|
      class GoogleCloudPrivatecatalogV1beta1SearchCatalogsResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # The `Catalog`s computed from the resource context.
 | 
						|
        # Corresponds to the JSON property `catalogs`
 | 
						|
        # @return [Array<Google::Apis::CloudprivatecatalogV1beta1::GoogleCloudPrivatecatalogV1beta1Catalog>]
 | 
						|
        attr_accessor :catalogs
 | 
						|
      
 | 
						|
        # A pagination token returned from a previous call to SearchCatalogs that
 | 
						|
        # indicates from where listing should continue.
 | 
						|
        # This field is optional.
 | 
						|
        # Corresponds to the JSON property `nextPageToken`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :next_page_token
 | 
						|
      
 | 
						|
        def initialize(**args)
 | 
						|
           update!(**args)
 | 
						|
        end
 | 
						|
      
 | 
						|
        # Update properties of this object
 | 
						|
        def update!(**args)
 | 
						|
          @catalogs = args[:catalogs] if args.key?(:catalogs)
 | 
						|
          @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Response message for PrivateCatalog.SearchProducts.
 | 
						|
      class GoogleCloudPrivatecatalogV1beta1SearchProductsResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # A pagination token returned from a previous call to SearchProducts that
 | 
						|
        # indicates from where listing should continue.
 | 
						|
        # This field is optional.
 | 
						|
        # Corresponds to the JSON property `nextPageToken`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :next_page_token
 | 
						|
      
 | 
						|
        # The `Product` resources computed from the resource context.
 | 
						|
        # Corresponds to the JSON property `products`
 | 
						|
        # @return [Array<Google::Apis::CloudprivatecatalogV1beta1::GoogleCloudPrivatecatalogV1beta1Product>]
 | 
						|
        attr_accessor :products
 | 
						|
      
 | 
						|
        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)
 | 
						|
          @products = args[:products] if args.key?(:products)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # Response message for PrivateCatalog.SearchVersions.
 | 
						|
      class GoogleCloudPrivatecatalogV1beta1SearchVersionsResponse
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # A pagination token returned from a previous call to SearchVersions that
 | 
						|
        # indicates from where the listing should continue.
 | 
						|
        # This field is optional.
 | 
						|
        # Corresponds to the JSON property `nextPageToken`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :next_page_token
 | 
						|
      
 | 
						|
        # The `Version` resources computed from the resource context.
 | 
						|
        # Corresponds to the JSON property `versions`
 | 
						|
        # @return [Array<Google::Apis::CloudprivatecatalogV1beta1::GoogleCloudPrivatecatalogV1beta1Version>]
 | 
						|
        attr_accessor :versions
 | 
						|
      
 | 
						|
        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)
 | 
						|
          @versions = args[:versions] if args.key?(:versions)
 | 
						|
        end
 | 
						|
      end
 | 
						|
      
 | 
						|
      # The consumer representation of a version which is a child resource under a
 | 
						|
      # `Product` with asset data.
 | 
						|
      class GoogleCloudPrivatecatalogV1beta1Version
 | 
						|
        include Google::Apis::Core::Hashable
 | 
						|
      
 | 
						|
        # Output only. The asset which has been validated and is ready to be
 | 
						|
        # provisioned. See
 | 
						|
        # google.cloud.privatecatalogproducer.v1beta.Version.asset for details.
 | 
						|
        # Corresponds to the JSON property `asset`
 | 
						|
        # @return [Hash<String,Object>]
 | 
						|
        attr_accessor :asset
 | 
						|
      
 | 
						|
        # Output only. The time when the version was created.
 | 
						|
        # Corresponds to the JSON property `createTime`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :create_time
 | 
						|
      
 | 
						|
        # Output only. The user-supplied description of the version. Maximum of 256
 | 
						|
        # characters.
 | 
						|
        # Corresponds to the JSON property `description`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :description
 | 
						|
      
 | 
						|
        # Output only. The resource name of the version, in the format
 | 
						|
        # `catalogs/`catalog_id`/products/`product_id`/versions/a-z*[a-z0-9]'.
 | 
						|
        # A unique identifier for the version under a product.
 | 
						|
        # Corresponds to the JSON property `name`
 | 
						|
        # @return [String]
 | 
						|
        attr_accessor :name
 | 
						|
      
 | 
						|
        # Output only. The time when the version was last updated.
 | 
						|
        # 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)
 | 
						|
          @asset = args[:asset] if args.key?(:asset)
 | 
						|
          @create_time = args[:create_time] if args.key?(:create_time)
 | 
						|
          @description = args[:description] if args.key?(:description)
 | 
						|
          @name = args[:name] if args.key?(:name)
 | 
						|
          @update_time = args[:update_time] if args.key?(:update_time)
 | 
						|
        end
 | 
						|
      end
 | 
						|
    end
 | 
						|
  end
 | 
						|
end
 |