Documentation
¶
Index ¶
- type AuthorizeManyOptions
- type Client
- type ClientOption
- type ClientOptions
- type DefaultTool
- func (d *DefaultTool) AuthorizeMany(ctx context.Context, opts AuthorizeManyOptions) ([]contract.Identifiable, error)
- func (d *DefaultTool) DeleteOne(ctx context.Context, opts DeleteOneOptions) error
- func (d *DefaultTool) FindOne(ctx context.Context, opts FindOneOptions) ([]*entity.Entity, error)
- func (d *DefaultTool) InsertOne(ctx context.Context, opts InsertOneOptions) error
- func (d *DefaultTool) ReplaceOne(ctx context.Context, opts ReplaceOneOptions) error
- type DeleteOneOptions
- type Dependencies
- type FindOneOptions
- type InsertOneOptions
- type Loaded
- type ReplaceOneOptions
- type Tool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthorizeManyOptions ¶ added in v0.1.50
type Client ¶
type Client interface {
FindOne(ctx context.Context, opts FindOneOptions) ([]*entity.Entity, error)
InsertOne(ctx context.Context, opts InsertOneOptions) error
ReplaceOne(ctx context.Context, opts ReplaceOneOptions) error
DeleteOne(ctx context.Context, opts DeleteOneOptions) error
AuthorizeMany(ctx context.Context, opts AuthorizeManyOptions) ([]contract.Identifiable, error)
}
func NewClient ¶
func NewClient(d Dependencies, opts ClientOptions) (Client, error)
func NewNoopClient ¶ added in v0.1.860
func NewNoopClient() Client
type ClientOption ¶
type ClientOption = contract.Opt[ClientOptions]
func WithAuthorizationURL ¶
func WithAuthorizationURL(x *url.URL) ClientOption
func WithAuthorizeManyPath ¶ added in v0.1.118
func WithAuthorizeManyPath(x string) ClientOption
func WithEntitiesPath ¶ added in v0.1.118
func WithEntitiesPath(x string) ClientOption
func WithLoaded ¶ added in v0.1.163
func WithLoaded(x Loaded) ClientOption
func WithTimeout ¶ added in v0.1.108
func WithTimeout(x time.Duration) ClientOption
func WithUserIDHeaderKey ¶
func WithUserIDHeaderKey(x string) ClientOption
type ClientOptions ¶
func ApplyClientOptions ¶
func ApplyClientOptions(opts *ClientOptions, modifiers ...ClientOption) ClientOptions
type DefaultTool ¶ added in v0.1.52
func NewTool ¶ added in v0.1.52
func NewTool(c Client, opts contract.ToolOptions[Client]) *DefaultTool
func (*DefaultTool) AuthorizeMany ¶ added in v0.1.52
func (d *DefaultTool) AuthorizeMany(ctx context.Context, opts AuthorizeManyOptions) ([]contract.Identifiable, error)
AuthorizeMany filters out unauthorized entities based on role and principal ID.
func (*DefaultTool) DeleteOne ¶ added in v0.1.52
func (d *DefaultTool) DeleteOne(ctx context.Context, opts DeleteOneOptions) error
DeleteOne deletes an authorized entity.
func (*DefaultTool) FindOne ¶ added in v0.1.52
func (d *DefaultTool) FindOne(ctx context.Context, opts FindOneOptions) ([]*entity.Entity, error)
FindOne finds one entity by ID.
func (*DefaultTool) InsertOne ¶ added in v0.1.52
func (d *DefaultTool) InsertOne(ctx context.Context, opts InsertOneOptions) error
InsertOne inserts one entity into the authorization system.
func (*DefaultTool) ReplaceOne ¶ added in v0.1.52
func (d *DefaultTool) ReplaceOne(ctx context.Context, opts ReplaceOneOptions) error
ReplaceOne replaces an existing authorized entity.
type DeleteOneOptions ¶ added in v0.1.50
type Dependencies ¶
type Dependencies struct {
HD contract.HTTPDoer
HR contract.HTTPRequester
HU contract.HTTPUtil
U contract.Unmarshaler
M contract.Marshaler
E contract.EnvironmentOperator
}
type FindOneOptions ¶ added in v0.1.50
type InsertOneOptions ¶ added in v0.1.50
type ReplaceOneOptions ¶ added in v0.1.50
Click to show internal directories.
Click to hide internal directories.