policy

package
v1.0.0 Latest Latest
Warning

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

Go to latest
Published: Dec 3, 2025 License: MIT Imports: 7 Imported by: 2

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Policy

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

func NewPolicyService

func NewPolicyService(
	repo Storage,
	scheduler scheduler.Service,
	logger *logrus.Logger,
) (*Policy, error)

func (*Policy) CreatePolicy

func (p *Policy) CreatePolicy(c context.Context, policy types.PluginPolicy) (*types.PluginPolicy, error)

func (*Policy) DeletePolicy

func (p *Policy) DeletePolicy(c context.Context, policyID uuid.UUID, signature string) error

func (*Policy) GetPluginPolicies

func (p *Policy) GetPluginPolicies(
	ctx context.Context,
	pluginID types.PluginID,
	publicKey string,
	onlyActive bool,
) ([]types.PluginPolicy, error)

func (*Policy) GetPluginPolicy

func (p *Policy) GetPluginPolicy(ctx context.Context, policyID uuid.UUID) (*types.PluginPolicy, error)

func (*Policy) UpdatePolicy

func (p *Policy) UpdatePolicy(c context.Context, policy types.PluginPolicy) (*types.PluginPolicy, error)

type Service

type Service interface {
	CreatePolicy(ctx context.Context, policy types.PluginPolicy) (*types.PluginPolicy, error)
	UpdatePolicy(ctx context.Context, policy types.PluginPolicy) (*types.PluginPolicy, error)
	DeletePolicy(ctx context.Context, policyID uuid.UUID, signature string) error
	GetPluginPolicies(
		ctx context.Context,
		pluginID types.PluginID,
		publicKey string,
		onlyActive bool,
	) ([]types.PluginPolicy, error)
	GetPluginPolicy(ctx context.Context, policyID uuid.UUID) (*types.PluginPolicy, error)
}

type Storage

type Storage interface {
	Tx() storage.Tx
	GetPluginPolicy(ctx context.Context, id uuid.UUID) (*types.PluginPolicy, error)
	GetAllPluginPolicies(
		ctx context.Context,
		publicKey string,
		pluginID types.PluginID,
		onlyActive bool,
	) ([]types.PluginPolicy, error)
	DeletePluginPolicy(ctx context.Context, id uuid.UUID) error
	InsertPluginPolicy(ctx context.Context, policy types.PluginPolicy) (*types.PluginPolicy, error)
	UpdatePluginPolicy(ctx context.Context, policy types.PluginPolicy) (*types.PluginPolicy, error)
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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