Documentation
¶
Index ¶
Constants ¶
View Source
const DefaultMode = ModeEnforce
Variables ¶
View Source
var ( ErrNotFound = fmt.Errorf("policy: %w", commonerrors.ErrNotFound) ErrAlreadyExists = fmt.Errorf("policy: %w", commonerrors.ErrAlreadyExists) ErrHasDependents = fmt.Errorf("policy: %w", commonerrors.ErrHasDependents) ErrInvalidName = fmt.Errorf("policy: invalid name: %w", commonerrors.ErrValidation) ErrInvalidGatewayID = fmt.Errorf("policy: invalid gateway_id: %w", commonerrors.ErrValidation) ErrInvalidConsumerID = fmt.Errorf("policy: invalid consumer_id: %w", commonerrors.ErrValidation) ErrInvalidSlug = fmt.Errorf("policy: invalid slug: %w", commonerrors.ErrValidation) ErrInvalidStage = fmt.Errorf("policy: invalid stage: %w", commonerrors.ErrValidation) ErrInvalidMode = fmt.Errorf("policy: invalid mode: %w", commonerrors.ErrValidation) ErrInvalidPriority = fmt.Errorf("policy: invalid priority: %w", commonerrors.ErrValidation) )
Functions ¶
This section is empty.
Types ¶
type ListFilter ¶
type PluginConfig ¶
type Policy ¶
type Policy struct {
ID ids.PolicyID `json:"id"`
GatewayID ids.GatewayID `json:"gateway_id"`
ConsumerIDs []ids.ConsumerID `json:"consumer_ids,omitempty"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Slug string `json:"slug"`
Enabled bool `json:"enabled"`
Global bool `json:"global"`
Priority int `json:"priority"`
Parallel bool `json:"parallel"`
Settings map[string]any `json:"settings,omitempty"`
Stages []Stage `json:"stages,omitempty"`
Mode Mode `json:"mode"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
}
type Repository ¶
type Repository interface {
Save(ctx context.Context, p *Policy) error
Update(ctx context.Context, p *Policy) error
SetGlobal(ctx context.Context, gatewayID ids.GatewayID, id ids.PolicyID, global bool) error
Delete(ctx context.Context, gatewayID ids.GatewayID, id ids.PolicyID) error
FindByID(ctx context.Context, id ids.PolicyID) (*Policy, error)
FindByIDs(ctx context.Context, gatewayID ids.GatewayID, policyIDs []ids.PolicyID) ([]*Policy, error)
ListByGateway(ctx context.Context, gatewayID ids.GatewayID) ([]*Policy, error)
List(ctx context.Context, filter ListFilter) (items []*Policy, total int, err error)
}
Click to show internal directories.
Click to hide internal directories.