Documentation
¶
Index ¶
- type YAMLRepository
- func (r *YAMLRepository) Create(ctx context.Context, p *singlecommandpermission.SingleCommandPermission) error
- func (r *YAMLRepository) Delete(ctx context.Context, id string) error
- func (r *YAMLRepository) FindByPatternAndType(ctx context.Context, projectID, pattern, permType string) ([]*singlecommandpermission.SingleCommandPermission, error)
- func (r *YAMLRepository) Get(ctx context.Context, id string) (*singlecommandpermission.SingleCommandPermission, error)
- func (r *YAMLRepository) List(ctx context.Context, projectID string) ([]*singlecommandpermission.SingleCommandPermission, error)
- func (r *YAMLRepository) Update(ctx context.Context, p *singlecommandpermission.SingleCommandPermission) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type YAMLRepository ¶
type YAMLRepository struct {
// contains filtered or unexported fields
}
YAMLRepository stores single-command permission rules as individual YAML files, one per rule, keyed by rule ID.
func NewYAMLRepository ¶
func NewYAMLRepository(s storage.Storage) *YAMLRepository
NewYAMLRepository creates a new YAML-backed single-command permission repository.
func (*YAMLRepository) Create ¶
func (r *YAMLRepository) Create(ctx context.Context, p *singlecommandpermission.SingleCommandPermission) error
Create stores a new permission rule.
func (*YAMLRepository) Delete ¶
func (r *YAMLRepository) Delete(ctx context.Context, id string) error
Delete removes a permission rule by ID.
func (*YAMLRepository) FindByPatternAndType ¶
func (r *YAMLRepository) FindByPatternAndType(ctx context.Context, projectID, pattern, permType string) ([]*singlecommandpermission.SingleCommandPermission, error)
FindByPatternAndType returns all permission rules matching the given projectID, pattern, and type. Results are sorted by CreatedAt ascending (oldest first) so that callers can keep the oldest entry when deduplicating.
func (*YAMLRepository) Get ¶
func (r *YAMLRepository) Get(ctx context.Context, id string) (*singlecommandpermission.SingleCommandPermission, error)
Get returns a single permission rule by ID.
func (*YAMLRepository) List ¶
func (r *YAMLRepository) List(ctx context.Context, projectID string) ([]*singlecommandpermission.SingleCommandPermission, error)
List returns all permission rules for a project.
func (*YAMLRepository) Update ¶
func (r *YAMLRepository) Update(ctx context.Context, p *singlecommandpermission.SingleCommandPermission) error
Update replaces an existing permission rule.
Click to show internal directories.
Click to hide internal directories.