Documentation ¶
Overview ¶
Package osb contains logic for building the Service Manager OSB API
Index ¶
- Constants
- func CatalogFetcher(doRequestWithClient util.DoRequestWithClientFunc, brokerAPIVersion string) func(ctx context.Context, broker *types.ServiceBroker) ([]byte, error)
- func ExtractPlatformFromContext(ctx context.Context) (*types.Platform, error)
- func Get(doRequestWithClient util.DoRequestWithClientFunc, brokerAPIVersion string, ...) ([]byte, error)
- func NewBrokerClientProvider(skipSsl bool, timeout int) osbc.CreateFunc
- func NewCheckInstanceOwnershipPlugin(repository storage.Repository, tenantIdentifier string) *checkInstanceOwnershipPlugin
- func NewCheckPlatformIDPlugin(repository storage.Repository) *checkPlatformIDPlugin
- func NewCheckVisibilityPlugin(repository storage.Repository) *checkVisibilityPlugin
- func NewPlatformTerminationPlugin(repository storage.Repository) *platformTerminationPlugin
- func NewStorePlugin(repository storage.TransactionalRepository) *storePlugin
- type BrokerFetcherFunc
- type CatalogFilterByVisibilityPlugin
- type Controller
Constants ¶
const ( // BrokerIDPathParam is a service broker ID path parameter BrokerIDPathParam = "brokerID" InstanceIDPathParam = "instance_id" BindingIDPathParam = "binding_id" )
const ( READY entityOperation = "ready" ROLLBACK entityOperation = "rollback" DELETE entityOperation = "delete" NONE entityOperation = "none" )
const CatalogFilterByVisibilityPluginName = "CatalogFilterByVisibilityPlugin"
const CheckInstanceOwnerhipPluginName = "CheckInstanceOwnershipPlugin"
const CheckPlatformIDPluginName = "CheckPlatformIDPlugin"
const CheckVisibilityPluginName = "CheckVisibilityPlugin"
const (
// OSBStorePluginName is the plugin name
OSBStorePluginName = "OSBStorePluginName"
)
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 ExtractPlatformFromContext ¶ added in v0.11.0
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 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
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 (*CatalogFilterByVisibilityPlugin) Name ¶ added in v0.9.6
func (c *CatalogFilterByVisibilityPlugin) Name() string
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