osb

package
v0.24.2 Latest Latest
Warning

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

Go to latest
Published: Sep 21, 2022 License: Apache-2.0, BSD-3-Clause, MIT Imports: 38 Imported by: 1

Documentation

Overview

Package osb contains logic for building the Service Manager OSB API

Index

Constants

View Source
const (
	ContextSignaturePluginName = "ContextSignaturePlugin"
	ServiceInstanceIDFieldName = "service_instance_id"
)
View Source
const (
	// BrokerIDPathParam is a service broker ID path parameter
	BrokerIDPathParam   = "brokerID"
	InstanceIDPathParam = "instance_id"
	BindingIDPathParam  = "binding_id"
)
View Source
const (
	// OSBStorePluginName is the plugin name
	OSBStorePluginName = "OSBStorePluginName"

	PreserveInstanceKey = "preserve_service_instance_key"
)
View Source
const (
	READY    entityOperation = "ready"
	ROLLBACK entityOperation = "rollback"
	DELETE   entityOperation = "delete"
	NONE     entityOperation = "none"
)
View Source
const CatalogFilterByVisibilityPluginName = "CatalogFilterByVisibilityPlugin"
View Source
const CheckInstanceOwnerhipPluginName = "CheckInstanceOwnershipPlugin"
View Source
const CheckPlatformIDPluginName = "CheckPlatformIDPlugin"
View Source
const CheckVisibilityPluginName = "CheckVisibilityPlugin"
View Source
const InstanceSharingPluginName = "ReferenceInstancePlugin"
View Source
const PlatformTerminationPluginName = "PlatformTerminationPlugin"

Variables

This section is empty.

Functions

func CatalogFetcher added in v0.1.6

func CatalogFetcher(doRequestWithClient util.DoRequestWithClientFunc, brokerAPIVersion string) func(ctx context.Context, broker *types.ServiceBroker) ([]byte, error)

CatalogFetcher creates a broker catalog fetcher that uses the provided request function to call the specified broker's catalog endpoint

func DeleteSignatureField added in v0.21.3

func DeleteSignatureField(rawContext json.RawMessage) ([]byte, error)

func ExtractPlatformFromContext added in v0.11.0

func ExtractPlatformFromContext(ctx context.Context) (*types.Platform, error)

func Get added in v0.16.7

func Get(doRequestWithClient util.DoRequestWithClientFunc, brokerAPIVersion string, ctx context.Context, broker *types.ServiceBroker, url string, resourceType string) ([]byte, error)

func NewBrokerClientProvider added in v0.10.0

func NewBrokerClientProvider(skipSsl bool, timeout int) osbc.CreateFunc

NewBrokerClientProvider provides a function which constructs an OSB client based on a provided configuration

func NewCheckInstanceOwnershipPlugin added in v0.10.0

func NewCheckInstanceOwnershipPlugin(repository storage.Repository, tenantIdentifier string) *checkInstanceOwnershipPlugin

NewCheckInstanceOwnershipPlugin creates new plugin that checks the owner of the instance

func NewCheckPlatformIDPlugin added in v0.9.6

func NewCheckPlatformIDPlugin(repository storage.Repository) *checkPlatformIDPlugin

NewCheckPlatformIDPlugin creates new plugin that checks the platform_id of the instance

func NewCheckVisibilityPlugin added in v0.9.6

func NewCheckVisibilityPlugin(repository storage.Repository) *checkVisibilityPlugin

NewCheckVisibilityPlugin creates new plugin that checks if a plan is visible to the user on provision request

func NewInstanceSharingPlugin added in v0.19.5

func NewInstanceSharingPlugin(repository storage.TransactionalRepository, tenantIdentifier string) *instanceSharingPlugin

NewInstanceSharingPlugin creates new plugin that handles the instance sharing flows on osb

func NewPlatformTerminationPlugin added in v0.16.11

func NewPlatformTerminationPlugin(repository storage.Repository) *platformTerminationPlugin

NewPlatformTerminationPlugin creates new plugin that checks the platform deletion status

func NewStorePlugin added in v0.13.4

func NewStorePlugin(repository storage.TransactionalRepository) *storePlugin

NewStorePlugin creates a plugin that stores service instances on OSB requests

Types

type BrokerFetcherFunc added in v0.3.3

type BrokerFetcherFunc func(ctx context.Context, brokerID string) (*types.ServiceBroker, error)

BrokerFetcherFunc is implemented by OSB proxy providers

type CatalogFilterByVisibilityPlugin added in v0.9.6

type CatalogFilterByVisibilityPlugin struct {
	// contains filtered or unexported fields
}

func NewCatalogFilterByVisibilityPlugin added in v0.9.6

func NewCatalogFilterByVisibilityPlugin(repository storage.Repository) *CatalogFilterByVisibilityPlugin

func (*CatalogFilterByVisibilityPlugin) FetchCatalog added in v0.9.6

func (c *CatalogFilterByVisibilityPlugin) FetchCatalog(req *web.Request, next web.Handler) (*web.Response, error)

func (*CatalogFilterByVisibilityPlugin) Name added in v0.9.6

type ContextSignaturePlugin added in v0.21.3

type ContextSignaturePlugin struct {
	// contains filtered or unexported fields
}

func NewCtxSignaturePlugin added in v0.21.3

func NewCtxSignaturePlugin(contextSigner *ContextSigner) *ContextSignaturePlugin

func (*ContextSignaturePlugin) Bind added in v0.21.3

func (s *ContextSignaturePlugin) Bind(req *web.Request, next web.Handler) (*web.Response, error)

func (*ContextSignaturePlugin) Name added in v0.21.3

func (s *ContextSignaturePlugin) Name() string

func (*ContextSignaturePlugin) Provision added in v0.21.3

func (s *ContextSignaturePlugin) Provision(req *web.Request, next web.Handler) (*web.Response, error)

func (*ContextSignaturePlugin) UpdateService added in v0.21.3

func (s *ContextSignaturePlugin) UpdateService(req *web.Request, next web.Handler) (*web.Response, error)

type ContextSigner added in v0.21.3

type ContextSigner struct {
	ContextPrivateKey string
	// contains filtered or unexported fields
}

func (*ContextSigner) Sign added in v0.21.3

func (cs *ContextSigner) Sign(ctx context.Context, contextMap map[string]interface{}) error

type Controller added in v0.3.3

type Controller struct {
	BrokerFetcher BrokerFetcherFunc
}

Controller implements api.Controller by providing OSB API logic

func (*Controller) Routes added in v0.3.3

func (c *Controller) Routes() []web.Route

Routes implements api.Controller.Routes by providing the routes for the OSB API

type OperationCategory added in v0.19.5

type OperationCategory string

Jump to

Keyboard shortcuts

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