Documentation ¶
Index ¶
- func ApplyOverrides(topology *kuadrantgatewayapi.Topology, gateway *gatewayapiv1.Gateway) (*kuadrantgatewayapi.Topology, error)
- func Equal(a, b RateLimitList) bool
- func LimitadorRateLimitsFromRLP(rlp *kuadrantv1beta2.RateLimitPolicy) []limitadorv1alpha1.RateLimit
- func LimitsNameFromRLP(rlp *kuadrantv1beta2.RateLimitPolicy) string
- func LimitsNamespaceFromRLP(rlp *kuadrantv1beta2.RateLimitPolicy) string
- func TopologyIndexesFromGateway(ctx context.Context, cl client.Client, gw *gatewayapiv1.Gateway) (*kuadrantgatewayapi.TopologyIndexes, error)
- type RateLimitIndex
- type RateLimitIndexKey
- type RateLimitList
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func ApplyOverrides ¶ added in v0.10.0
func ApplyOverrides(topology *kuadrantgatewayapi.Topology, gateway *gatewayapiv1.Gateway) (*kuadrantgatewayapi.Topology, error)
ApplyOverrides applies the overrides defined in the RateLimitPolicies attached to the gateway policies for a given gateway, and returns a new topology with all policies overridden as applicable.
func Equal ¶ added in v0.4.0
func Equal(a, b RateLimitList) bool
func LimitadorRateLimitsFromRLP ¶ added in v0.4.0
func LimitadorRateLimitsFromRLP(rlp *kuadrantv1beta2.RateLimitPolicy) []limitadorv1alpha1.RateLimit
LimitadorRateLimitsFromRLP converts rate limits from a Kuadrant RateLimitPolicy into a list of Limitador rate limit objects
func LimitsNameFromRLP ¶ added in v0.5.0
func LimitsNameFromRLP(rlp *kuadrantv1beta2.RateLimitPolicy) string
func LimitsNamespaceFromRLP ¶ added in v0.4.0
func LimitsNamespaceFromRLP(rlp *kuadrantv1beta2.RateLimitPolicy) string
func TopologyIndexesFromGateway ¶ added in v0.10.0
func TopologyIndexesFromGateway(ctx context.Context, cl client.Client, gw *gatewayapiv1.Gateway) (*kuadrantgatewayapi.TopologyIndexes, error)
Types ¶
type RateLimitIndex ¶ added in v0.4.0
type RateLimitIndex struct { orderedmap.OrderedMap[RateLimitIndexKey, RateLimitList] }
RateLimitIndex stores RateLimitLists by key
func NewRateLimitIndex ¶ added in v0.4.0
func NewRateLimitIndex() *RateLimitIndex
NewRateLimitIndex builds an index to manage sets of rate limits, organized by key
func (*RateLimitIndex) Set ¶ added in v0.4.0
func (l *RateLimitIndex) Set(key RateLimitIndexKey, rateLimits RateLimitList)
func (*RateLimitIndex) ToRateLimits ¶ added in v0.4.0
func (l *RateLimitIndex) ToRateLimits() RateLimitList
type RateLimitIndexKey ¶ added in v0.4.0
type RateLimitIndexKey struct { RateLimitPolicyKey types.NamespacedName GatewayKey types.NamespacedName }
type RateLimitList ¶ added in v0.4.0
type RateLimitList []limitadorv1alpha1.RateLimit
func (RateLimitList) Len ¶ added in v0.4.0
func (l RateLimitList) Len() int
func (RateLimitList) Less ¶ added in v0.4.0
func (l RateLimitList) Less(i, j int) bool
func (RateLimitList) Swap ¶ added in v0.4.0
func (l RateLimitList) Swap(i, j int)
Click to show internal directories.
Click to hide internal directories.