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
|