catalog

package
v1.1.44 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 12, 2023 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const CategoryResourceName = "categories"
View Source
const DocumentResourceName = "documents"
View Source
const MarketplaceResourceName = "marketplaces"
View Source
const ProductOverviewResourceName = "productoverviews"
View Source
const ProductReleaseResourceName = "productreleases"
View Source
const ProductResourceName = "products"
View Source
const QuotaResourceName = "quotas"
View Source
const ResourceResourceName = "resources"
View Source
const SupportContactResourceName = "supportcontacts"

Variables

View Source
var (
	CategoryCtx log.ContextField = "category"

	CategoryScopes = []string{""}
)
View Source
var (
	DocumentCtx log.ContextField = "document"

	DocumentScopes = []string{"Product", "ProductRelease"}
)
View Source
var (
	MarketplaceCtx log.ContextField = "marketplace"

	MarketplaceScopes = []string{""}
)
View Source
var (
	ProductCtx log.ContextField = "product"

	ProductScopes = []string{""}
)
View Source
var (
	ProductOverviewCtx log.ContextField = "productOverview"

	ProductOverviewScopes = []string{"Product", "ProductRelease"}
)
View Source
var (
	ProductReleaseCtx log.ContextField = "productRelease"

	ProductReleaseScopes = []string{""}
)
View Source
var (
	QuotaCtx log.ContextField = "quota"

	QuotaScopes = []string{"ProductPlan"}
)
View Source
var (
	ResourceCtx log.ContextField = "resource"

	ResourceScopes = []string{"Product", "ProductRelease"}
)
View Source
var (
	SupportContactCtx log.ContextField = "supportContact"

	SupportContactScopes = []string{""}
)

Functions

func CategoryGVK

func CategoryGVK() apiv1.GroupVersionKind

func DocumentGVK

func DocumentGVK() apiv1.GroupVersionKind

func MarketplaceGVK

func MarketplaceGVK() apiv1.GroupVersionKind

func ProductGVK

func ProductGVK() apiv1.GroupVersionKind

func ProductOverviewGVK

func ProductOverviewGVK() apiv1.GroupVersionKind

func ProductReleaseGVK

func ProductReleaseGVK() apiv1.GroupVersionKind

func QuotaGVK

func QuotaGVK() apiv1.GroupVersionKind

func ResourceGVK

func ResourceGVK() apiv1.GroupVersionKind

func SupportContactGVK added in v1.1.41

func SupportContactGVK() apiv1.GroupVersionKind

Types

type Category

type Category struct {
	apiv1.ResourceMeta
	Icon  interface{}  `json:"icon"`
	Owner *apiv1.Owner `json:"owner"`
	Spec  CategorySpec `json:"spec"`
}

Category Resource

func CategoryFromInstanceArray

func CategoryFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*Category, error)

CategoryFromInstanceArray converts a []*ResourceInstance to a []*Category

func NewCategory

func NewCategory(name string) *Category

NewCategory creates an empty *Category

func (*Category) AsInstance

func (res *Category) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a Category to a ResourceInstance

func (*Category) FromInstance

func (res *Category) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a Category

func (*Category) MarshalJSON

func (res *Category) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*Category) PluralName

func (res *Category) PluralName() string

PluralName returns the plural name of the resource

func (*Category) UnmarshalJSON

func (res *Category) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type CategorySpec

type CategorySpec struct {
	// Markdown representing the category description.
	Description string `json:"description,omitempty"`
	// GENERATE: The following code has been modified after code generation
	Restriction interface{} `json:"restriction,omitempty"`
}

CategorySpec (catalog.v1.Category)

type CategorySpecApiServiceRestriction added in v1.1.35

type CategorySpecApiServiceRestriction struct {
	Type string `json:"type"`
}

CategorySpecApiServiceRestriction struct for CategorySpecApiServiceRestriction

type CategorySpecAssetRestriction added in v1.1.35

type CategorySpecAssetRestriction struct {
	Type string `json:"type"`
}

CategorySpecAssetRestriction struct for CategorySpecAssetRestriction

type CategorySpecProductRestriction added in v1.1.35

type CategorySpecProductRestriction struct {
	Type        string                                    `json:"type"`
	Marketplace CategorySpecProductRestrictionMarketplace `json:"marketplace"`
}

CategorySpecProductRestriction struct for CategorySpecProductRestriction

type CategorySpecProductRestrictionMarketplace added in v1.1.35

type CategorySpecProductRestrictionMarketplace struct {
	// Defines if the Category is featured in the marketplace.
	Featured bool `json:"featured"`
	// Defines if the Category is visible in the marketplace.
	Visible bool `json:"visible"`
}

CategorySpecProductRestrictionMarketplace Defines category's marketplace properties.

type Document

type Document struct {
	apiv1.ResourceMeta
	Icon  interface{}  `json:"icon"`
	Owner *apiv1.Owner `json:"owner"`
	Spec  DocumentSpec `json:"spec"`
	// Status DocumentStatus `json:"status"`
	Status *apiv1.ResourceStatus `json:"status"`
}

Document Resource

func DocumentFromInstanceArray

func DocumentFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*Document, error)

DocumentFromInstanceArray converts a []*ResourceInstance to a []*Document

func NewDocument

func NewDocument(name, scopeKind, scopeName string) (*Document, error)

NewDocument creates an empty *Document

func (*Document) AsInstance

func (res *Document) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a Document to a ResourceInstance

func (*Document) FromInstance

func (res *Document) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a Document

func (*Document) MarshalJSON

func (res *Document) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*Document) PluralName

func (res *Document) PluralName() string

PluralName returns the plural name of the resource

func (*Document) UnmarshalJSON

func (res *Document) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type DocumentSpec

type DocumentSpec struct {
	// Document description.
	Description string `json:"description,omitempty"`
	// Rank of document.
	// GENERATE: The following code has been modified after code generation
	Rank     float64                `json:"rank,omitempty"`
	Sections []DocumentSpecSections `json:"sections,omitempty"`
}

DocumentSpec (catalog.v1.Document)

type DocumentSpecResourceRef

type DocumentSpecResourceRef struct {
	Kind string `json:"kind"`
	Name string `json:"name,omitempty"`
	// Title for the article.
	Title string `json:"title"`
}

DocumentSpecResourceRef struct for DocumentSpecResourceRef

type DocumentSpecSections

type DocumentSpecSections struct {
	// Title for the section.
	Title string `json:"title"`
	// Description for the section.
	Description string `json:"description,omitempty"`
	// Section articles.
	// GENERATE: The following code has been modified after code generation
	Articles []interface{} `json:"articles,omitempty"`
}

DocumentSpecSections (catalog.v1.Document)

type DocumentStatus

type DocumentStatus struct {
	// The current status level, indicating progress towards consistency.
	Level string `json:"level"`
	// Reasons for the generated status.
	// GENERATE: The following code has been modified after code generation
	Reasons []interface{} `json:"reasons,omitempty"`
}

DocumentStatus (catalog.v1.Document)

type DocumentStatusError

type DocumentStatusError struct {
	Type string `json:"type"`
	// Details of the error.
	Detail string `json:"detail"`
	// Time when the update occurred.
	Timestamp time.Time              `json:"timestamp"`
	Meta      map[string]interface{} `json:"meta,omitempty"`
}

DocumentStatusError struct for DocumentStatusError

type DocumentStatusSuccess

type DocumentStatusSuccess struct {
	Type string `json:"type"`
	// Time when the change occured.
	Timestamp time.Time `json:"timestamp"`
	// message of the result
	Detail string                 `json:"detail"`
	Meta   map[string]interface{} `json:"meta,omitempty"`
}

DocumentStatusSuccess struct for DocumentStatusSuccess

type Marketplace

type Marketplace struct {
	apiv1.ResourceMeta
	Owner *apiv1.Owner    `json:"owner"`
	Spec  MarketplaceSpec `json:"spec"`
}

Marketplace Resource

func MarketplaceFromInstanceArray

func MarketplaceFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*Marketplace, error)

MarketplaceFromInstanceArray converts a []*ResourceInstance to a []*Marketplace

func NewMarketplace

func NewMarketplace(name string) *Marketplace

NewMarketplace creates an empty *Marketplace

func (*Marketplace) AsInstance

func (res *Marketplace) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a Marketplace to a ResourceInstance

func (*Marketplace) FromInstance

func (res *Marketplace) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a Marketplace

func (*Marketplace) MarshalJSON

func (res *Marketplace) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*Marketplace) PluralName

func (res *Marketplace) PluralName() string

PluralName returns the plural name of the resource

func (*Marketplace) UnmarshalJSON

func (res *Marketplace) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type MarketplaceSpec

type MarketplaceSpec struct {
	// description of the Marketplace.
	Description string `json:"description,omitempty"`
}

MarketplaceSpec (catalog.v1.Marketplace)

type Product

type Product struct {
	apiv1.ResourceMeta
	Icon       interface{}       `json:"icon"`
	Owner      *apiv1.Owner      `json:"owner"`
	References ProductReferences `json:"references"`
	Spec       ProductSpec       `json:"spec"`
	State      ProductState      `json:"state"`
	// Status     ProductStatus     `json:"status"`
	Status *apiv1.ResourceStatus `json:"status"`
}

Product Resource

func NewProduct

func NewProduct(name string) *Product

NewProduct creates an empty *Product

func ProductFromInstanceArray

func ProductFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*Product, error)

ProductFromInstanceArray converts a []*ResourceInstance to a []*Product

func (*Product) AsInstance

func (res *Product) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a Product to a ResourceInstance

func (*Product) FromInstance

func (res *Product) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a Product

func (*Product) MarshalJSON

func (res *Product) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*Product) PluralName

func (res *Product) PluralName() string

PluralName returns the plural name of the resource

func (*Product) UnmarshalJSON

func (res *Product) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type ProductOverview

type ProductOverview struct {
	apiv1.ResourceMeta
	Owner *apiv1.Owner        `json:"owner"`
	Spec  ProductOverviewSpec `json:"spec"`
}

ProductOverview Resource

func NewProductOverview

func NewProductOverview(name, scopeKind, scopeName string) (*ProductOverview, error)

NewProductOverview creates an empty *ProductOverview

func ProductOverviewFromInstanceArray

func ProductOverviewFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*ProductOverview, error)

ProductOverviewFromInstanceArray converts a []*ResourceInstance to a []*ProductOverview

func (*ProductOverview) AsInstance

func (res *ProductOverview) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a ProductOverview to a ResourceInstance

func (*ProductOverview) FromInstance

func (res *ProductOverview) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a ProductOverview

func (*ProductOverview) MarshalJSON

func (res *ProductOverview) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*ProductOverview) PluralName

func (res *ProductOverview) PluralName() string

PluralName returns the plural name of the resource

func (*ProductOverview) UnmarshalJSON

func (res *ProductOverview) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type ProductOverviewSpec

type ProductOverviewSpec struct {
	// Defines all the documents and order for marketplace.
	Documents []ProductOverviewSpecDocuments `json:"documents,omitempty"`
}

ProductOverviewSpec (catalog.v1.ProductOverview)

type ProductOverviewSpecDocuments

type ProductOverviewSpecDocuments struct {
	Name string `json:"name"`
}

ProductOverviewSpecDocuments (catalog.v1.ProductOverview)

type ProductReferences

type ProductReferences struct {
	// Computed latest AssetReleases for each Asset reference in the Product.
	Assets []ProductReferencesAssets `json:"assets,omitempty"`
}

ProductReferences (catalog.v1.Product)

type ProductReferencesAssets

type ProductReferencesAssets struct {
	// The Asset reference.
	Name    string                   `json:"name,omitempty"`
	Release ProductReferencesRelease `json:"release,omitempty"`
}

ProductReferencesAssets (catalog.v1.Product)

type ProductReferencesRelease

type ProductReferencesRelease struct {
	// The latest AssetRelease computed based on the provided Asset filters.
	Name string `json:"name,omitempty"`
	// The AssetRelease version that the Product currently points to.
	Version string `json:"version,omitempty"`
	// The AssetRelease state.
	State string `json:"state,omitempty"`
}

ProductReferencesRelease (catalog.v1.Product)

type ProductRelease

type ProductRelease struct {
	apiv1.ResourceMeta
	Icon  interface{}        `json:"icon"`
	Owner *apiv1.Owner       `json:"owner"`
	Spec  ProductReleaseSpec `json:"spec"`
	// Status ProductReleaseStatus `json:"status"`
	Status *apiv1.ResourceStatus `json:"status"`
}

ProductRelease Resource

func NewProductRelease

func NewProductRelease(name string) *ProductRelease

NewProductRelease creates an empty *ProductRelease

func ProductReleaseFromInstanceArray

func ProductReleaseFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*ProductRelease, error)

ProductReleaseFromInstanceArray converts a []*ResourceInstance to a []*ProductRelease

func (*ProductRelease) AsInstance

func (res *ProductRelease) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a ProductRelease to a ResourceInstance

func (*ProductRelease) FromInstance

func (res *ProductRelease) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a ProductRelease

func (*ProductRelease) MarshalJSON

func (res *ProductRelease) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*ProductRelease) PluralName

func (res *ProductRelease) PluralName() string

PluralName returns the plural name of the resource

func (*ProductRelease) UnmarshalJSON

func (res *ProductRelease) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type ProductReleaseSpec

type ProductReleaseSpec struct {
	// Description of the release.
	Description string `json:"description,omitempty"`
	// Version of the release.
	Version    string                     `json:"version"`
	Product    string                     `json:"product"`
	Assets     []ProductReleaseSpecAssets `json:"assets,omitempty"`
	ReleaseTag string                     `json:"releaseTag"`
	State      string                     `json:"state,omitempty"`
	// list of categories for the released product.
	Categories []string `json:"categories,omitempty"`
}

ProductReleaseSpec (catalog.v1.ProductRelease)

type ProductReleaseSpecAssets

type ProductReleaseSpecAssets struct {
	// The Asset name
	Name    string                    `json:"name,omitempty"`
	Release ProductReleaseSpecRelease `json:"release,omitempty"`
}

ProductReleaseSpecAssets (catalog.v1.ProductRelease)

type ProductReleaseSpecRelease

type ProductReleaseSpecRelease struct {
	Name string `json:"name,omitempty"`
	// The AssetRelease version.
	Version string `json:"version,omitempty"`
	// The AssetRelease state.
	State string `json:"state,omitempty"`
}

ProductReleaseSpecRelease (catalog.v1.ProductRelease)

type ProductReleaseStatus

type ProductReleaseStatus struct {
	// The current status level, indicating progress towards consistency.
	Level string `json:"level,omitempty"`
	// Reasons for the generated status.
	// GENERATE: The following code has been modified after code generation
	Reasons []interface{} `json:"reasons,omitempty"`
}

ProductReleaseStatus (catalog.v1.ProductRelease)

type ProductReleaseStatusError

type ProductReleaseStatusError struct {
	Type string `json:"type"`
	// Details of the error.
	Detail string `json:"detail"`
	// Time when the update occurred.
	Timestamp time.Time                       `json:"timestamp"`
	Meta      ProductReleaseStatusPendingMeta `json:"meta,omitempty"`
}

ProductReleaseStatusError struct for ProductReleaseStatusError

type ProductReleaseStatusPending

type ProductReleaseStatusPending struct {
	Type string `json:"type"`
	// Time when the change occured.
	Timestamp time.Time `json:"timestamp"`
	// Reason for being in Pending.
	Detail string                          `json:"detail"`
	Meta   ProductReleaseStatusPendingMeta `json:"meta,omitempty"`
}

ProductReleaseStatusPending struct for ProductReleaseStatusPending

type ProductReleaseStatusPendingMeta added in v1.1.35

type ProductReleaseStatusPendingMeta struct {
	Asset        string `json:"asset,omitempty"`
	AssetRelease string `json:"assetRelease,omitempty"`
}

ProductReleaseStatusPendingMeta struct for ProductReleaseStatusPendingMeta

type ProductReleaseStatusSuccess

type ProductReleaseStatusSuccess struct {
	Type string `json:"type"`
	// Time when the change occured.
	Timestamp time.Time `json:"timestamp"`
	// message of the result
	Detail string                          `json:"detail"`
	Meta   ProductReleaseStatusPendingMeta `json:"meta,omitempty"`
}

ProductReleaseStatusSuccess struct for ProductReleaseStatusSuccess

type ProductSpec

type ProductSpec struct {
	// description of the Product.
	Description    string   `json:"description,omitempty"`
	SupportContact string   `json:"supportContact,omitempty"`
	Categories     []string `json:"categories,omitempty"`
	// Defines all the Assets that the Product will be built from.
	Assets      []ProductSpecAssets    `json:"assets,omitempty"`
	AutoRelease ProductSpecAutoRelease `json:"autoRelease,omitempty"`
}

ProductSpec (catalog.v1.Product)

type ProductSpecAssets

type ProductSpecAssets struct {
	Name    string             `json:"name"`
	Filters ProductSpecFilters `json:"filters,omitempty"`
}

ProductSpecAssets (catalog.v1.Product)

type ProductSpecAutoRelease added in v1.1.41

type ProductSpecAutoRelease struct {
	ReleaseType      string                                 `json:"releaseType"`
	PreviousReleases ProductSpecAutoReleasePreviousReleases `json:"previousReleases,omitempty"`
}

ProductSpecAutoRelease Defines if a product should create releases everytime there is an update to the product references. (catalog.v1.Product)

type ProductSpecAutoReleasePreviousReleases added in v1.1.44

type ProductSpecAutoReleasePreviousReleases struct {
	// Updates all prior non-archived releases to the deprecated state.
	UpdateState string `json:"updateState,omitempty"`
}

ProductSpecAutoReleasePreviousReleases (catalog.v1.Product)

type ProductSpecFilters

type ProductSpecFilters struct {
	// The AssetRelease version to use. Examples:   - 1.0.1 for a specific asset release version   - 1.* for all minor and patch versions of version 1   - 1.2.* for all the patch version for version 1.2
	Version string `json:"version,omitempty"`
}

ProductSpecFilters Filters what AssetRelease the Product points to. (catalog.v1.Product)

type ProductState

type ProductState string

ProductState the model 'ProductState'

const (
	// GENERATE: The following code has been modified after code generation
	ProductStateDRAFT ProductState = "draft"
	// GENERATE: The following code has been modified after code generation
	ProductStateACTIVE ProductState = "active"
	// GENERATE: The following code has been modified after code generation
	ProductStateDEPRECATED ProductState = "deprecated"
	// GENERATE: The following code has been modified after code generation
	ProductStateARCHIVED ProductState = "archived"
)

List of ProductState

type ProductStatus added in v1.1.35

type ProductStatus struct {
	// The current status level, indicating progress towards consistency.
	Level string `json:"level"`
	// Reasons for the generated status.
	Reasons []ProductStatusReasons `json:"reasons,omitempty"`
}

ProductStatus (catalog.v1.Product)

type ProductStatusMeta added in v1.1.35

type ProductStatusMeta struct {
	Asset        string `json:"asset,omitempty"`
	AssetRelease string `json:"assetRelease,omitempty"`
}

ProductStatusMeta (catalog.v1.Product)

type ProductStatusReasons added in v1.1.35

type ProductStatusReasons struct {
	Type string `json:"type"`
	// Details of the error.
	Detail string `json:"detail"`
	// Time when the update occurred.
	Timestamp time.Time         `json:"timestamp"`
	Meta      ProductStatusMeta `json:"meta,omitempty"`
}

ProductStatusReasons (catalog.v1.Product)

type Quota

type Quota struct {
	apiv1.ResourceMeta
	Owner *apiv1.Owner `json:"owner"`
	Spec  QuotaSpec    `json:"spec"`
	// Status QuotaStatus  `json:"status"`
	Status *apiv1.ResourceStatus `json:"status"`
}

Quota Resource

func NewQuota

func NewQuota(name, scopeName string) *Quota

NewQuota creates an empty *Quota

func QuotaFromInstanceArray

func QuotaFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*Quota, error)

QuotaFromInstanceArray converts a []*ResourceInstance to a []*Quota

func (*Quota) AsInstance

func (res *Quota) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a Quota to a ResourceInstance

func (*Quota) FromInstance

func (res *Quota) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a Quota

func (*Quota) MarshalJSON

func (res *Quota) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*Quota) PluralName

func (res *Quota) PluralName() string

PluralName returns the plural name of the resource

func (*Quota) UnmarshalJSON

func (res *Quota) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type QuotaSpec

type QuotaSpec struct {
	// description of the quota.
	Description string `json:"description,omitempty"`
	// The unit used to measure the access to the resource.
	Unit string `json:"unit"`
	// GENERATE: The following code has been modified after code generation
	Pricing interface{} `json:"pricing"`
	// The resources that the access is being granted to.
	// GENERATE: The following code has been modified after code generation
	Resources []interface{} `json:"resources"`
}

QuotaSpec (catalog.v1.Quota)

type QuotaSpecAssetResourceRef

type QuotaSpecAssetResourceRef struct {
	Kind string `json:"kind"`
	Name string `json:"name,omitempty"`
}

QuotaSpecAssetResourceRef struct for QuotaSpecAssetResourceRef

type QuotaSpecFixedPricingType

type QuotaSpecFixedPricingType struct {
	Type     string `json:"type"`
	Interval string `json:"interval"`
	// GENERATE: The following code has been modified after code generation
	Limit interface{} `json:"limit"`
}

QuotaSpecFixedPricingType struct for QuotaSpecFixedPricingType

type QuotaSpecGraduatedPricingType added in v1.1.35

type QuotaSpecGraduatedPricingType struct {
	Type string `json:"type"`
	// The tiered limits to set.
	// GENERATE: The following code has been modified after code generation
	Limit interface{} `json:"limit"`
}

QuotaSpecGraduatedPricingType struct for QuotaSpecGraduatedPricingType

type QuotaSpecLimitTypeLoose

type QuotaSpecLimitTypeLoose struct {
	Type string `json:"type"`
	// The limit of the unit that is provided.
	// GENERATE: The following code has been modified after code generation
	Value    float64                         `json:"value"`
	Overages QuotaSpecLimitTypeLooseOverages `json:"overages"`
}

QuotaSpecLimitTypeLoose struct for QuotaSpecLimitTypeLoose

type QuotaSpecLimitTypeLooseOverages

type QuotaSpecLimitTypeLooseOverages struct {
	// The overage price per unit.
	Value float64 `json:"value,omitempty"`
}

QuotaSpecLimitTypeLooseOverages struct for QuotaSpecLimitTypeLooseOverages

type QuotaSpecLimitTypeStrict

type QuotaSpecLimitTypeStrict struct {
	Type string `json:"type"`
	// The limit of the unit that is provided.
	// GENERATE: The following code has been modified after code generation
	Value float64 `json:"value"`
}

QuotaSpecLimitTypeStrict struct for QuotaSpecLimitTypeStrict

type QuotaSpecLimitTypeTiered added in v1.1.35

type QuotaSpecLimitTypeTiered struct {
	Type  string                          `json:"type"`
	Tiers []QuotaSpecLimitTypeTieredTiers `json:"tiers"`
}

QuotaSpecLimitTypeTiered struct for QuotaSpecLimitTypeTiered

type QuotaSpecLimitTypeTieredTiers added in v1.1.35

type QuotaSpecLimitTypeTieredTiers struct {
	// The limit start of the tier provided.
	From int32 `json:"from"`
	// The limit end of the tier provided.
	To int32 `json:"to"`
	// The tier price.
	Cost float64 `json:"cost"`
	// The flat fee for the tier.
	FlatFee float64 `json:"flatFee"`
}

QuotaSpecLimitTypeTieredTiers struct for QuotaSpecLimitTypeTieredTiers

type QuotaSpecPerUnitPricingType added in v1.1.44

type QuotaSpecPerUnitPricingType struct {
	Type string `json:"type"`
	// The cost per unit of usage.
	Cost float64 `json:"cost"`
}

QuotaSpecPerUnitPricingType struct for QuotaSpecPerUnitPricingType

type QuotaSpecUnlimitedPricingType

type QuotaSpecUnlimitedPricingType struct {
	Type string `json:"type"`
}

QuotaSpecUnlimitedPricingType struct for QuotaSpecUnlimitedPricingType

type QuotaSpecVolumePricingType added in v1.1.35

type QuotaSpecVolumePricingType struct {
	Type string `json:"type"`
	// The tiered limits set.
	// GENERATE: The following code has been modified after code generation
	Limit interface{} `json:"limit"`
}

QuotaSpecVolumePricingType struct for QuotaSpecVolumePricingType

type QuotaStatus

type QuotaStatus struct {
	// The current status level, indicating progress towards consistency.
	Level string `json:"level"`
	// Reasons for the generated status.
	// GENERATE: The following code has been modified after code generation
	Reasons []interface{} `json:"reasons,omitempty"`
}

QuotaStatus (catalog.v1.Quota)

type QuotaStatusError

type QuotaStatusError struct {
	Type string `json:"type"`
	// Details of the error.
	Detail string `json:"detail"`
	// Time when the update occurred.
	Timestamp time.Time                         `json:"timestamp"`
	Meta      map[string]map[string]interface{} `json:"meta,omitempty"`
}

QuotaStatusError struct for QuotaStatusError

type QuotaStatusPending

type QuotaStatusPending struct {
	Type string `json:"type"`
	// Details of the Pending status.
	Detail string `json:"detail"`
	// Time when the resource moved to Pending.
	Timestamp time.Time                         `json:"timestamp"`
	Meta      map[string]map[string]interface{} `json:"meta,omitempty"`
}

QuotaStatusPending struct for QuotaStatusPending

type QuotaStatusSuccess

type QuotaStatusSuccess struct {
	Type string `json:"type"`
	// Time when the change occured.
	Timestamp time.Time `json:"timestamp"`
	// Details of the result.
	Detail string                 `json:"detail"`
	Meta   map[string]interface{} `json:"meta,omitempty"`
}

QuotaStatusSuccess struct for QuotaStatusSuccess

type Resource

type Resource struct {
	apiv1.ResourceMeta
	Owner *apiv1.Owner `json:"owner"`
	Spec  ResourceSpec `json:"spec"`
}

Resource Resource

func NewResource

func NewResource(name, scopeKind, scopeName string) (*Resource, error)

NewResource creates an empty *Resource

func ResourceFromInstanceArray

func ResourceFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*Resource, error)

ResourceFromInstanceArray converts a []*ResourceInstance to a []*Resource

func (*Resource) AsInstance

func (res *Resource) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a Resource to a ResourceInstance

func (*Resource) FromInstance

func (res *Resource) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a Resource

func (*Resource) MarshalJSON

func (res *Resource) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*Resource) PluralName

func (res *Resource) PluralName() string

PluralName returns the plural name of the resource

func (*Resource) UnmarshalJSON

func (res *Resource) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type ResourceSpec

type ResourceSpec struct {
	// The type of the resource, example: pdf
	FileType string `json:"fileType"`
	// The content type
	ContentType string `json:"contentType"`
	// GENERATE: The following code has been modified after code generation
	Data interface{} `json:"data"`
}

ResourceSpec (catalog.v1.Resource)

type ResourceSpecBinaryData

type ResourceSpecBinaryData struct {
	Type string `json:"type"`
	// Base64 encoded value of the file.
	Content string `json:"content"`
}

ResourceSpecBinaryData struct for ResourceSpecBinaryData

type ResourceSpecTextData

type ResourceSpecTextData struct {
	Type string `json:"type"`
	// Resource content.
	Content string `json:"content"`
}

ResourceSpecTextData struct for ResourceSpecTextData

type SupportContact added in v1.1.41

type SupportContact struct {
	apiv1.ResourceMeta
	Owner *apiv1.Owner       `json:"owner"`
	Spec  SupportContactSpec `json:"spec"`
}

SupportContact Resource

func NewSupportContact added in v1.1.41

func NewSupportContact(name string) *SupportContact

NewSupportContact creates an empty *SupportContact

func SupportContactFromInstanceArray added in v1.1.41

func SupportContactFromInstanceArray(fromArray []*apiv1.ResourceInstance) ([]*SupportContact, error)

SupportContactFromInstanceArray converts a []*ResourceInstance to a []*SupportContact

func (*SupportContact) AsInstance added in v1.1.41

func (res *SupportContact) AsInstance() (*apiv1.ResourceInstance, error)

AsInstance converts a SupportContact to a ResourceInstance

func (*SupportContact) FromInstance added in v1.1.41

func (res *SupportContact) FromInstance(ri *apiv1.ResourceInstance) error

FromInstance converts a ResourceInstance to a SupportContact

func (*SupportContact) MarshalJSON added in v1.1.41

func (res *SupportContact) MarshalJSON() ([]byte, error)

MarshalJSON custom marshaller to handle sub resources

func (*SupportContact) PluralName added in v1.1.41

func (res *SupportContact) PluralName() string

PluralName returns the plural name of the resource

func (*SupportContact) UnmarshalJSON added in v1.1.41

func (res *SupportContact) UnmarshalJSON(data []byte) error

UnmarshalJSON custom unmarshaller to handle sub resources

type SupportContactSpec added in v1.1.41

type SupportContactSpec struct {
	// Email address of the Support Contact.
	Email string `json:"email"`
	// String of the E.164 format of the phone number, e.g. +11234567899
	PhoneNumber         string                                `json:"phoneNumber,omitempty"`
	OfficeHours         SupportContactSpecOfficeHours         `json:"officeHours,omitempty"`
	AlternativeContacts SupportContactSpecAlternativeContacts `json:"alternativeContacts,omitempty"`
}

SupportContactSpec (catalog.v1.SupportContact)

type SupportContactSpecAlternativeContacts added in v1.1.44

type SupportContactSpecAlternativeContacts struct {
	// Alternative contact URLs.
	Urls []SupportContactSpecAlternativeContactsUrls `json:"urls,omitempty"`
}

SupportContactSpecAlternativeContacts (catalog.v1.SupportContact)

type SupportContactSpecAlternativeContactsUrls added in v1.1.44

type SupportContactSpecAlternativeContactsUrls struct {
	// URL hosting service name. Examples: msteams, slack
	Type string `json:"type,omitempty"`
	// Title for the provided URL.
	Title string `json:"title"`
	// URL value.
	Value string `json:"value"`
}

SupportContactSpecAlternativeContactsUrls (catalog.v1.SupportContact)

type SupportContactSpecOfficeHours added in v1.1.44

type SupportContactSpecOfficeHours struct {
	// Long IANA Time Zone format. Examples: 'America/New_York' or 'Europe/Paris'
	Timezone string                                 `json:"timezone"`
	Periods  []SupportContactSpecOfficeHoursPeriods `json:"periods"`
}

SupportContactSpecOfficeHours (catalog.v1.SupportContact)

type SupportContactSpecOfficeHoursPeriods added in v1.1.44

type SupportContactSpecOfficeHoursPeriods struct {
	// Time in 24hr ISO 8601 extended format (hh:mm). Valid values are 00:00-24:00.
	OpenTime string `json:"openTime"`
	OpenDay  string `json:"openDay"`
	// Time in 24hr ISO 8601 extended format (hh:mm). Valid values are 00:00-24:00.
	CloseTime string `json:"closeTime"`
	CloseDay  string `json:"closeDay"`
}

SupportContactSpecOfficeHoursPeriods (catalog.v1.SupportContact)

type SupportContactSpecUrlAlternativeContact added in v1.1.44

type SupportContactSpecUrlAlternativeContact struct {
	Type string `json:"type,omitempty"`
	// Name of the provider. Example: msteams, slack
	Provider string `json:"provider,omitempty"`
	// Title for the provided URL.
	Title string `json:"title"`
	// URL value.
	Value string `json:"value"`
}

SupportContactSpecUrlAlternativeContact struct for SupportContactSpecUrlAlternativeContact

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL