Documentation
¶
Overview ¶
Package model defines the core configuration and policy types used by Seigen.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type Identifier ¶
type Identifier string
type LeakyBucketConfig ¶
type LimiterConfig ¶
type LimiterConfig struct {
Algorithm Algorithm `json:"algorithm"`
Config Config `json:"comfiguration"`
}
LimiterConfig defines the algorithm and configuration used by a limiter.
func (LimiterConfig) Equal ¶
func (c LimiterConfig) Equal(other LimiterConfig) bool
func (LimiterConfig) Validate ¶
func (c LimiterConfig) Validate() error
type Policy ¶
type Policy struct {
Identifier Identifier
Limiter LimiterConfig
}
Policy associates an identifier with a rate-limiting configuration.
type PolicyGroup ¶
type PolicyGroup struct {
Name string
Limiter LimiterConfig
}
PolicyGroup defines a shared rate-limiting configuration for multiple identifiers. Each member maintains independent runtime limiter state.
func (PolicyGroup) Validate ¶
func (g PolicyGroup) Validate() error
type PolicyGroupMember ¶
type PolicyGroupMember struct {
GroupID int64
Identifier Identifier
}
PolicyGroupMember associates an identifier with a policy group.
func (PolicyGroupMember) Validate ¶
func (m PolicyGroupMember) Validate() error
type TokenBucketConfig ¶
type WindowConfig ¶
Click to show internal directories.
Click to hide internal directories.