Documentation ¶
Index ¶
- Constants
- func CreateNotification(ctx context.Context, repository storage.Repository, ...) error
- type BaseSMAAPInterceptorProvider
- type BrokerAdditional
- type BrokerCreateCatalogInterceptorProvider
- type BrokerDeleteCatalogInterceptorProvider
- type BrokerNotificationsCreateInterceptorProvider
- type BrokerNotificationsDeleteInterceptorProvider
- type BrokerNotificationsUpdateInterceptorProvider
- type BrokerUpdateCatalogInterceptorProvider
- type GeneratePlatformCredentialsInterceptorProvider
- type NotificationsInterceptor
- func (ni *NotificationsInterceptor) OnTxCreate(h storage.InterceptCreateOnTxFunc) storage.InterceptCreateOnTxFunc
- func (ni *NotificationsInterceptor) OnTxDelete(h storage.InterceptDeleteOnTxFunc) storage.InterceptDeleteOnTxFunc
- func (ni *NotificationsInterceptor) OnTxUpdate(h storage.InterceptUpdateOnTxFunc) storage.InterceptUpdateOnTxFunc
- type ObjectPayload
- type OperationsCreateInsterceptorProvider
- type Payload
- type PublicPlanCreateInterceptorProvider
- type PublicPlanUpdateInterceptorProvider
- type ServiceBindingCreateInterceptorProvider
- type ServiceBindingDeleteInterceptorProvider
- type ServiceBindingInterceptor
- type ServiceInstanceCreateInsterceptorProvider
- type ServiceInstanceCreateInterceptorProvider
- type ServiceInstanceDeleteInterceptorProvider
- type ServiceInstanceInterceptor
- func (i *ServiceInstanceInterceptor) AroundTxCreate(f storage.InterceptCreateAroundTxFunc) storage.InterceptCreateAroundTxFunc
- func (i *ServiceInstanceInterceptor) AroundTxDelete(f storage.InterceptDeleteAroundTxFunc) storage.InterceptDeleteAroundTxFunc
- func (i *ServiceInstanceInterceptor) AroundTxUpdate(f storage.InterceptUpdateAroundTxFunc) storage.InterceptUpdateAroundTxFunc
- type ServiceInstanceUpdateInterceptorProvider
- type UniqueBindingNameCreateInterceptorProvider
- type UniqueInstanceNameCreateInterceptorProvider
- type UniqueInstanceNameUpdateInterceptorProvider
- type VisibilityAdditional
- type VisibilityCreateNotificationsInterceptorProvider
- type VisibilityDeleteNotificationsInterceptorProvider
- type VisibilityUpdateNotificationsInterceptorProvider
Constants ¶
const ( BrokerCreateNotificationInterceptorName = "BrokerNotificationsCreateInterceptorProvider" BrokerUpdateNotificationInterceptorName = "BrokerNotificationsUpdateInterceptorProvider" BrokerDeleteNotificationInterceptorName = "BrokerNotificationsDeleteInterceptorProvider" )
const ( CreateBrokerPublicPlanInterceptorName = "CreateBrokerPublicPlansInterceptor" UpdateBrokerPublicPlanInterceptorName = "UpdateBrokerPublicPlansInterceptor" )
const ( UniqueInstanceNameCreateInterceptorName = "UniqueInstanceNameCreateInterceptor" UniqueInstanceNameUpdateInterceptorName = "UniqueInstanceNameUpdateInterceptor" )
const BrokerCreateCatalogInterceptorName = "BrokerCreateCatalogInterceptor"
const BrokerDeleteCatalogInterceptorName = "BrokerDeleteCatalogInterceptor"
const BrokerUpdateCatalogInterceptorName = "BrokerUpdateCatalogInterceptor"
const OperationsCreateInterceptorName = "OperationsCreateInterceptor"
const ServiceBindingCreateInterceptorProviderName = "ServiceBindingCreateInterceptorProvider"
const ServiceBindingDeleteInterceptorProviderName = "ServiceBindingDeleteInterceptorProvider"
const ServiceInstanceCreateInterceptorName = "ServiceInstanceCreateInterceptor"
const ServiceInstanceCreateInterceptorProviderName = "ServiceInstanceCreateInterceptorProvider"
const ServiceInstanceDeleteInterceptorProviderName = "ServiceInstanceDeleteInterceptorProvider"
const ServiceInstanceUpdateInterceptorProviderName = "ServiceInstanceUpdateInterceptorProvider"
const (
UniqueBindingNameCreateInterceptorName = "UniqueBindingNameCreateInterceptor"
)
Variables ¶
This section is empty.
Functions ¶
func CreateNotification ¶ added in v0.3.3
func CreateNotification(ctx context.Context, repository storage.Repository, op types.NotificationOperation, resource types.ObjectType, platformID string, payload *Payload) error
Types ¶
type BaseSMAAPInterceptorProvider ¶ added in v0.10.0
type BaseSMAAPInterceptorProvider struct { OSBClientCreateFunc osbc.CreateFunc Repository *storage.InterceptableTransactionalRepository TenantKey string PollingInterval time.Duration }
type BrokerAdditional ¶ added in v0.3.0
type BrokerAdditional struct {
Services []*types.ServiceOffering `json:"services,omitempty"`
}
func (BrokerAdditional) Validate ¶ added in v0.3.0
func (ba BrokerAdditional) Validate() error
type BrokerCreateCatalogInterceptorProvider ¶ added in v0.3.0
type BrokerCreateCatalogInterceptorProvider struct {
CatalogFetcher func(ctx context.Context, broker *types.ServiceBroker) ([]byte, error)
}
func (*BrokerCreateCatalogInterceptorProvider) Name ¶ added in v0.3.0
func (c *BrokerCreateCatalogInterceptorProvider) Name() string
func (*BrokerCreateCatalogInterceptorProvider) Provide ¶ added in v0.3.0
func (c *BrokerCreateCatalogInterceptorProvider) Provide() storage.CreateInterceptor
type BrokerDeleteCatalogInterceptorProvider ¶ added in v0.3.0
type BrokerDeleteCatalogInterceptorProvider struct {
CatalogLoader func(ctx context.Context, brokerID string, repository storage.Repository) (*types.ServiceOfferings, error)
}
BrokerDeleteCatalogInterceptorProvider provides a broker interceptor for delete operations
func (*BrokerDeleteCatalogInterceptorProvider) Name ¶ added in v0.3.0
func (c *BrokerDeleteCatalogInterceptorProvider) Name() string
func (*BrokerDeleteCatalogInterceptorProvider) Provide ¶ added in v0.3.0
func (c *BrokerDeleteCatalogInterceptorProvider) Provide() storage.DeleteInterceptor
type BrokerNotificationsCreateInterceptorProvider ¶ added in v0.3.0
type BrokerNotificationsCreateInterceptorProvider struct { }
func (*BrokerNotificationsCreateInterceptorProvider) Name ¶ added in v0.3.0
func (*BrokerNotificationsCreateInterceptorProvider) Name() string
func (*BrokerNotificationsCreateInterceptorProvider) Provide ¶ added in v0.3.0
func (*BrokerNotificationsCreateInterceptorProvider) Provide() storage.CreateOnTxInterceptor
type BrokerNotificationsDeleteInterceptorProvider ¶ added in v0.3.0
type BrokerNotificationsDeleteInterceptorProvider struct { }
func (*BrokerNotificationsDeleteInterceptorProvider) Name ¶ added in v0.3.0
func (*BrokerNotificationsDeleteInterceptorProvider) Name() string
func (*BrokerNotificationsDeleteInterceptorProvider) Provide ¶ added in v0.3.0
func (*BrokerNotificationsDeleteInterceptorProvider) Provide() storage.DeleteOnTxInterceptor
type BrokerNotificationsUpdateInterceptorProvider ¶ added in v0.3.0
type BrokerNotificationsUpdateInterceptorProvider struct { }
func (*BrokerNotificationsUpdateInterceptorProvider) Name ¶ added in v0.3.0
func (*BrokerNotificationsUpdateInterceptorProvider) Name() string
func (*BrokerNotificationsUpdateInterceptorProvider) Provide ¶ added in v0.3.0
func (*BrokerNotificationsUpdateInterceptorProvider) Provide() storage.UpdateOnTxInterceptor
type BrokerUpdateCatalogInterceptorProvider ¶ added in v0.3.0
type BrokerUpdateCatalogInterceptorProvider struct { CatalogFetcher func(ctx context.Context, broker *types.ServiceBroker) ([]byte, error) CatalogLoader func(ctx context.Context, brokerID string, repository storage.Repository) (*types.ServiceOfferings, error) }
BrokerUpdateCatalogInterceptorProvider provides a broker interceptor for update operations
func (*BrokerUpdateCatalogInterceptorProvider) Name ¶ added in v0.3.0
func (c *BrokerUpdateCatalogInterceptorProvider) Name() string
func (*BrokerUpdateCatalogInterceptorProvider) Provide ¶ added in v0.3.0
func (c *BrokerUpdateCatalogInterceptorProvider) Provide() storage.UpdateInterceptor
type GeneratePlatformCredentialsInterceptorProvider ¶ added in v0.10.0
type GeneratePlatformCredentialsInterceptorProvider struct { }
func (*GeneratePlatformCredentialsInterceptorProvider) Name ¶ added in v0.10.0
func (c *GeneratePlatformCredentialsInterceptorProvider) Name() string
func (*GeneratePlatformCredentialsInterceptorProvider) Provide ¶ added in v0.10.0
func (c *GeneratePlatformCredentialsInterceptorProvider) Provide() storage.CreateAroundTxInterceptor
type NotificationsInterceptor ¶ added in v0.3.0
type NotificationsInterceptor struct { PlatformIDsProviderFunc func(ctx context.Context, object types.Object, repository storage.Repository) ([]string, error) AdditionalDetailsFunc func(ctx context.Context, objects types.ObjectList, repository storage.Repository) (objectDetails, error) DeletePostConditionFunc func(ctx context.Context, object types.Object, repository storage.Repository, platformID string) error }
func NewBrokerNotificationsInterceptor ¶ added in v0.3.0
func NewBrokerNotificationsInterceptor() *NotificationsInterceptor
func NewVisibilityNotificationsInterceptor ¶ added in v0.3.0
func NewVisibilityNotificationsInterceptor() *NotificationsInterceptor
func (*NotificationsInterceptor) OnTxCreate ¶ added in v0.3.0
func (ni *NotificationsInterceptor) OnTxCreate(h storage.InterceptCreateOnTxFunc) storage.InterceptCreateOnTxFunc
func (*NotificationsInterceptor) OnTxDelete ¶ added in v0.3.0
func (ni *NotificationsInterceptor) OnTxDelete(h storage.InterceptDeleteOnTxFunc) storage.InterceptDeleteOnTxFunc
func (*NotificationsInterceptor) OnTxUpdate ¶ added in v0.3.0
func (ni *NotificationsInterceptor) OnTxUpdate(h storage.InterceptUpdateOnTxFunc) storage.InterceptUpdateOnTxFunc
type ObjectPayload ¶ added in v0.3.0
type ObjectPayload struct { Resource types.Object `json:"resource,omitempty"` Additional util.InputValidator `json:"additional,omitempty"` }
type OperationsCreateInsterceptorProvider ¶ added in v0.9.8
type OperationsCreateInsterceptorProvider struct {
TenantIdentifier string
}
func (*OperationsCreateInsterceptorProvider) Name ¶ added in v0.9.8
func (c *OperationsCreateInsterceptorProvider) Name() string
func (*OperationsCreateInsterceptorProvider) Provide ¶ added in v0.9.8
func (c *OperationsCreateInsterceptorProvider) Provide() storage.CreateOnTxInterceptor
type Payload ¶ added in v0.3.0
type Payload struct { New *ObjectPayload `json:"new,omitempty"` Old *ObjectPayload `json:"old,omitempty"` LabelChanges types.LabelChanges `json:"label_changes,omitempty"` }
type PublicPlanCreateInterceptorProvider ¶
type PublicPlanCreateInterceptorProvider struct { IsCatalogPlanPublicFunc publicPlanProcessor SupportedPlatforms func(ctx context.Context, plan *types.ServicePlan, repository storage.Repository) ([]string, error) }
func (*PublicPlanCreateInterceptorProvider) Name ¶
func (p *PublicPlanCreateInterceptorProvider) Name() string
func (*PublicPlanCreateInterceptorProvider) Provide ¶
func (p *PublicPlanCreateInterceptorProvider) Provide() storage.CreateInterceptor
type PublicPlanUpdateInterceptorProvider ¶
type PublicPlanUpdateInterceptorProvider struct { IsCatalogPlanPublicFunc publicPlanProcessor SupportedPlatforms func(ctx context.Context, plan *types.ServicePlan, repository storage.Repository) ([]string, error) }
func (*PublicPlanUpdateInterceptorProvider) Name ¶
func (p *PublicPlanUpdateInterceptorProvider) Name() string
func (*PublicPlanUpdateInterceptorProvider) Provide ¶
func (p *PublicPlanUpdateInterceptorProvider) Provide() storage.UpdateInterceptor
type ServiceBindingCreateInterceptorProvider ¶ added in v0.10.0
type ServiceBindingCreateInterceptorProvider struct {
*BaseSMAAPInterceptorProvider
}
ServiceBindingCreateInterceptorProvider provides an interceptor that notifies the actual broker about instance creation
func (*ServiceBindingCreateInterceptorProvider) Name ¶ added in v0.10.0
func (c *ServiceBindingCreateInterceptorProvider) Name() string
func (*ServiceBindingCreateInterceptorProvider) Provide ¶ added in v0.10.0
func (p *ServiceBindingCreateInterceptorProvider) Provide() storage.CreateAroundTxInterceptor
type ServiceBindingDeleteInterceptorProvider ¶ added in v0.10.0
type ServiceBindingDeleteInterceptorProvider struct {
*BaseSMAAPInterceptorProvider
}
ServiceBindingDeleteInterceptorProvider provides an interceptor that notifies the actual broker about instance deletion
func (*ServiceBindingDeleteInterceptorProvider) Name ¶ added in v0.10.0
func (c *ServiceBindingDeleteInterceptorProvider) Name() string
func (*ServiceBindingDeleteInterceptorProvider) Provide ¶ added in v0.10.0
func (p *ServiceBindingDeleteInterceptorProvider) Provide() storage.DeleteAroundTxInterceptor
type ServiceBindingInterceptor ¶ added in v0.10.0
type ServiceBindingInterceptor struct {
// contains filtered or unexported fields
}
func (*ServiceBindingInterceptor) AroundTxCreate ¶ added in v0.10.0
func (i *ServiceBindingInterceptor) AroundTxCreate(f storage.InterceptCreateAroundTxFunc) storage.InterceptCreateAroundTxFunc
func (*ServiceBindingInterceptor) AroundTxDelete ¶ added in v0.10.0
func (i *ServiceBindingInterceptor) AroundTxDelete(f storage.InterceptDeleteAroundTxFunc) storage.InterceptDeleteAroundTxFunc
type ServiceInstanceCreateInsterceptorProvider ¶ added in v0.9.0
type ServiceInstanceCreateInsterceptorProvider struct {
TenantIdentifier string
}
func (*ServiceInstanceCreateInsterceptorProvider) Name ¶ added in v0.9.0
func (c *ServiceInstanceCreateInsterceptorProvider) Name() string
func (*ServiceInstanceCreateInsterceptorProvider) Provide ¶ added in v0.9.0
func (c *ServiceInstanceCreateInsterceptorProvider) Provide() storage.CreateOnTxInterceptor
type ServiceInstanceCreateInterceptorProvider ¶ added in v0.10.0
type ServiceInstanceCreateInterceptorProvider struct {
*BaseSMAAPInterceptorProvider
}
ServiceInstanceCreateInterceptorProvider provides an interceptor that notifies the actual broker about instance creation
func (*ServiceInstanceCreateInterceptorProvider) Name ¶ added in v0.10.0
func (c *ServiceInstanceCreateInterceptorProvider) Name() string
func (*ServiceInstanceCreateInterceptorProvider) Provide ¶ added in v0.10.0
func (p *ServiceInstanceCreateInterceptorProvider) Provide() storage.CreateAroundTxInterceptor
type ServiceInstanceDeleteInterceptorProvider ¶ added in v0.10.0
type ServiceInstanceDeleteInterceptorProvider struct {
*BaseSMAAPInterceptorProvider
}
ServiceInstanceDeleteInterceptorProvider provides an interceptor that notifies the actual broker about instance deletion
func (*ServiceInstanceDeleteInterceptorProvider) Name ¶ added in v0.10.0
func (c *ServiceInstanceDeleteInterceptorProvider) Name() string
func (*ServiceInstanceDeleteInterceptorProvider) Provide ¶ added in v0.10.0
func (p *ServiceInstanceDeleteInterceptorProvider) Provide() storage.DeleteAroundTxInterceptor
type ServiceInstanceInterceptor ¶ added in v0.10.0
type ServiceInstanceInterceptor struct {
// contains filtered or unexported fields
}
func (*ServiceInstanceInterceptor) AroundTxCreate ¶ added in v0.10.0
func (i *ServiceInstanceInterceptor) AroundTxCreate(f storage.InterceptCreateAroundTxFunc) storage.InterceptCreateAroundTxFunc
func (*ServiceInstanceInterceptor) AroundTxDelete ¶ added in v0.10.0
func (i *ServiceInstanceInterceptor) AroundTxDelete(f storage.InterceptDeleteAroundTxFunc) storage.InterceptDeleteAroundTxFunc
func (*ServiceInstanceInterceptor) AroundTxUpdate ¶ added in v0.10.0
func (i *ServiceInstanceInterceptor) AroundTxUpdate(f storage.InterceptUpdateAroundTxFunc) storage.InterceptUpdateAroundTxFunc
type ServiceInstanceUpdateInterceptorProvider ¶ added in v0.10.0
type ServiceInstanceUpdateInterceptorProvider struct {
*BaseSMAAPInterceptorProvider
}
ServiceInstanceUpdateInterceptorProvider provides an interceptor that notifies the actual broker about instance updates
func (*ServiceInstanceUpdateInterceptorProvider) Name ¶ added in v0.10.0
func (c *ServiceInstanceUpdateInterceptorProvider) Name() string
func (*ServiceInstanceUpdateInterceptorProvider) Provide ¶ added in v0.10.0
func (p *ServiceInstanceUpdateInterceptorProvider) Provide() storage.UpdateAroundTxInterceptor
type UniqueBindingNameCreateInterceptorProvider ¶ added in v0.10.0
type UniqueBindingNameCreateInterceptorProvider struct {
Repository storage.TransactionalRepository
}
UniqueBindingNameCreateInterceptorProvider provides an interceptor that forbids creation of bindings with the same name in a given tenant
func (*UniqueBindingNameCreateInterceptorProvider) Name ¶ added in v0.10.0
func (c *UniqueBindingNameCreateInterceptorProvider) Name() string
func (*UniqueBindingNameCreateInterceptorProvider) Provide ¶ added in v0.10.0
func (c *UniqueBindingNameCreateInterceptorProvider) Provide() storage.CreateAroundTxInterceptor
type UniqueInstanceNameCreateInterceptorProvider ¶ added in v0.10.0
type UniqueInstanceNameCreateInterceptorProvider struct { TenantIdentifier string Repository storage.TransactionalRepository }
UniqueInstanceNameCreateInterceptorProvider provides an interceptor that forbids creation of instances with the same name in a given tenant
func (*UniqueInstanceNameCreateInterceptorProvider) Name ¶ added in v0.10.0
func (c *UniqueInstanceNameCreateInterceptorProvider) Name() string
func (*UniqueInstanceNameCreateInterceptorProvider) Provide ¶ added in v0.10.0
func (c *UniqueInstanceNameCreateInterceptorProvider) Provide() storage.CreateAroundTxInterceptor
type UniqueInstanceNameUpdateInterceptorProvider ¶ added in v0.10.0
type UniqueInstanceNameUpdateInterceptorProvider struct { TenantIdentifier string Repository storage.TransactionalRepository }
UniqueInstanceNameUpdateInterceptorProvider provides an interceptor that forbids updating an instance name that breaks uniqueness in a given tenant
func (*UniqueInstanceNameUpdateInterceptorProvider) Name ¶ added in v0.10.0
func (c *UniqueInstanceNameUpdateInterceptorProvider) Name() string
func (*UniqueInstanceNameUpdateInterceptorProvider) Provide ¶ added in v0.10.0
func (c *UniqueInstanceNameUpdateInterceptorProvider) Provide() storage.UpdateAroundTxInterceptor
type VisibilityAdditional ¶ added in v0.3.0
type VisibilityAdditional struct { BrokerID string `json:"broker_id"` BrokerName string `json:"broker_name"` ServicePlan *types.ServicePlan `json:"service_plan,omitempty"` }
func (VisibilityAdditional) Validate ¶ added in v0.3.0
func (va VisibilityAdditional) Validate() error
type VisibilityCreateNotificationsInterceptorProvider ¶ added in v0.3.0
type VisibilityCreateNotificationsInterceptorProvider struct { }
func (*VisibilityCreateNotificationsInterceptorProvider) Name ¶ added in v0.3.0
func (*VisibilityCreateNotificationsInterceptorProvider) Name() string
func (*VisibilityCreateNotificationsInterceptorProvider) Provide ¶ added in v0.3.0
func (*VisibilityCreateNotificationsInterceptorProvider) Provide() storage.CreateOnTxInterceptor
type VisibilityDeleteNotificationsInterceptorProvider ¶ added in v0.3.0
type VisibilityDeleteNotificationsInterceptorProvider struct { }
func (*VisibilityDeleteNotificationsInterceptorProvider) Name ¶ added in v0.3.0
func (*VisibilityDeleteNotificationsInterceptorProvider) Name() string
func (*VisibilityDeleteNotificationsInterceptorProvider) Provide ¶ added in v0.3.0
func (*VisibilityDeleteNotificationsInterceptorProvider) Provide() storage.DeleteOnTxInterceptor
type VisibilityUpdateNotificationsInterceptorProvider ¶ added in v0.3.0
type VisibilityUpdateNotificationsInterceptorProvider struct { }
func (*VisibilityUpdateNotificationsInterceptorProvider) Name ¶ added in v0.3.0
func (*VisibilityUpdateNotificationsInterceptorProvider) Name() string
func (*VisibilityUpdateNotificationsInterceptorProvider) Provide ¶ added in v0.3.0
func (*VisibilityUpdateNotificationsInterceptorProvider) Provide() storage.UpdateOnTxInterceptor
Source Files ¶
- broker_create_catalog_interceptor.go
- broker_delete_catalog_interceptor.go
- broker_notifications_interceptor.go
- broker_public_plans_interceptor.go
- broker_update_catalog_interceptor.go
- notifications_interceptor.go
- operations_create_interceptor.go
- osb_service_instance_create_interceptor.go
- secured_generate_credentials_interceptor.go
- smaap_service_binding_interceptor.go
- smaap_service_instance_interceptor.go
- unique_binding_names_interceptor.go
- unique_instance_names_interceptor.go
- visibility_notifications_interceptor.go