Index

A B C D E G H I J K L M O P R S T W 
All Classes and Interfaces|All Packages|Serialized Form

A

allowRequest(String, int, int) - Method in class com.rale4j.sb.core.Bucket4jRateLimiter
 
allowRequest(String, int, int) - Method in class com.rale4j.sb.core.GuavaRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.core.LeakyBucketRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in interface com.rale4j.sb.core.RateLimitStrategy
Checks if a request is allowed based on the rate-limiting rules.
allowRequest(String, int, int) - Method in class com.rale4j.sb.core.RedisRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.core.Resilience4jRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.core.TokenBucketRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.security.ApiKeyRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.security.JwtRateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.security.OAuth2RateLimiter
Allows or denies a request based on the rate limit.
allowRequest(String, int, int) - Method in class com.rale4j.sb.security.RbacRateLimiter
Allows or denies a request based on the rate limit.
ApiKey() - Constructor for class com.rale4j.sb.config.RateLimitProperties.ApiKey
 
ApiKeyRateLimiter - Class in com.rale4j.sb.security
Rate-limiting strategy based on API keys.
ApiKeyRateLimiter() - Constructor for class com.rale4j.sb.security.ApiKeyRateLimiter
 

B

Bucket4j() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Bucket4j
 
bucket4jRateLimiter() - Method in class com.rale4j.sb.config.RateLimitConfig
Creates a Bucket4j-based rate limiter bean.
Bucket4jRateLimiter - Class in com.rale4j.sb.core
Rate limiter implementation using Bucket4j.
Bucket4jRateLimiter() - Constructor for class com.rale4j.sb.core.Bucket4jRateLimiter
 

C

com.rale4j.sb.annotation - package com.rale4j.sb.annotation
 
com.rale4j.sb.config - package com.rale4j.sb.config
 
com.rale4j.sb.core - package com.rale4j.sb.core
 
com.rale4j.sb.enforcement - package com.rale4j.sb.enforcement
 
com.rale4j.sb.exception - package com.rale4j.sb.exception
 
com.rale4j.sb.graphql - package com.rale4j.sb.graphql
 
com.rale4j.sb.grpc - package com.rale4j.sb.grpc
 
com.rale4j.sb.observability - package com.rale4j.sb.observability
 
com.rale4j.sb.security - package com.rale4j.sb.security
 
com.rale4j.sb.spi - package com.rale4j.sb.spi
 
com.rale4j.sb.websocket - package com.rale4j.sb.websocket
 
createStrategy() - Method in interface com.rale4j.sb.spi.RateLimiterProvider
Creates a new instance of the rate-limiting strategy.

D

Default() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Default
 
doFilterInternal(HttpServletRequest, HttpServletResponse, FilterChain) - Method in class com.rale4j.sb.grpc.GrpcRateLimitFilter
Filters incoming gRPC requests and enforces rate limits.
duration() - Element in annotation interface com.rale4j.sb.annotation.Rale4j
The time window (in seconds) for the rate limit.

E

enforceRateLimit(ProceedingJoinPoint, Rale4j) - Method in class com.rale4j.sb.enforcement.RateLimitAspect
Intercepts method calls annotated with Rale4j and enforces rate limits.
enforceRateLimit(ProceedingJoinPoint, Rale4j) - Method in class com.rale4j.sb.graphql.GraphQLRateLimitAspect
Intercepts GraphQL resolver methods annotated with Rale4j and enforces rate limits.
enforceRateLimit(ProceedingJoinPoint, Rale4j) - Method in class com.rale4j.sb.websocket.WebSocketRateLimitAspect
Intercepts WebSocket message handlers annotated with Rale4j and enforces rate limits.

G

generateKey(ProceedingJoinPoint) - Method in class com.rale4j.sb.enforcement.RateLimitKeyGenerator
Generates a unique key for rate limiting.
getApiKey() - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Gets the API key security configuration.
getBucket4j() - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Gets the Bucket4j rate limiting strategy configuration.
getDefaultLimit() - Method in class com.rale4j.sb.config.RateLimitProperties.Limits
Gets the default rate limiting configuration.
getDuration() - Method in class com.rale4j.sb.config.RateLimitProperties.Default
Gets the default rate limit duration.
getDuration() - Method in class com.rale4j.sb.config.RateLimitProperties.Metrics
Gets the metrics rate limit duration.
getGrafana() - Method in class com.rale4j.sb.config.RateLimitProperties.Observability
Gets the Grafana observability configuration.
getGuava() - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Gets the Guava rate limiting strategy configuration.
getHost() - Method in class com.rale4j.sb.config.RateLimitProperties.Redis
Gets the Redis host.
getJwt() - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Gets the JWT security configuration.
getLimit() - Method in class com.rale4j.sb.config.RateLimitProperties.Default
Gets the default rate limit.
getLimit() - Method in class com.rale4j.sb.config.RateLimitProperties.Metrics
Gets the metrics rate limit.
getLimits() - Method in class com.rale4j.sb.config.RateLimitProperties
Gets the limits configuration.
getMetrics() - Method in class com.rale4j.sb.config.RateLimitProperties.Limits
Gets the metrics rate limiting configuration.
getOauth2() - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Gets the OAuth2 security configuration.
getObservability() - Method in class com.rale4j.sb.config.RateLimitProperties
Gets the observability configuration.
getPort() - Method in class com.rale4j.sb.config.RateLimitProperties.Redis
Gets the Redis port.
getPrometheus() - Method in class com.rale4j.sb.config.RateLimitProperties.Observability
Gets the Prometheus observability configuration.
getRbac() - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Gets the RBAC security configuration.
getRedis() - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Gets the Redis rate limiting strategy configuration.
getResilience4j() - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Gets the Resilience4j rate limiting strategy configuration.
getResource() - Method in class com.rale4j.sb.graphql.GraphQLRateLimitResolver
 
getSecurity() - Method in class com.rale4j.sb.config.RateLimitProperties
Gets the security configuration.
getStrategies() - Method in class com.rale4j.sb.config.RateLimitProperties
Gets the strategies configuration.
getStrategy(String) - Method in class com.rale4j.sb.core.RateLimitFactory
Retrieves a rate limit strategy by name.
getStrategyName() - Method in interface com.rale4j.sb.spi.RateLimiterProvider
Returns the name of the rate-limiting strategy.
getTokenBucket() - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Gets the TokenBucket rate limiting strategy configuration.
Grafana() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Grafana
 
GraphQLRateLimitAspect - Class in com.rale4j.sb.graphql
Aspect for enforcing rate limits on GraphQL resolver methods.
GraphQLRateLimitAspect() - Constructor for class com.rale4j.sb.graphql.GraphQLRateLimitAspect
 
GraphQLRateLimitResolver - Class in com.rale4j.sb.graphql
Example GraphQL resolver with rate-limiting annotations.
GraphQLRateLimitResolver() - Constructor for class com.rale4j.sb.graphql.GraphQLRateLimitResolver
 
GrpcRateLimitFilter - Class in com.rale4j.sb.grpc
Security filter for enforcing rate limits on gRPC requests.
GrpcRateLimitFilter() - Constructor for class com.rale4j.sb.grpc.GrpcRateLimitFilter
 
Guava() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Guava
 
guavaRateLimiter() - Method in class com.rale4j.sb.config.RateLimitConfig
Creates a Guava-based rate limiter bean.
GuavaRateLimiter - Class in com.rale4j.sb.core
Rate limiter implementation using Guava.
GuavaRateLimiter() - Constructor for class com.rale4j.sb.core.GuavaRateLimiter
 

H

handleTextMessage(WebSocketSession, TextMessage) - Method in class com.rale4j.sb.websocket.MyWebSocketHandler
Handles incoming WebSocket text messages with rate limiting.

I

incrementAllowedRequests() - Method in class com.rale4j.sb.observability.RateLimitMetrics
Increments the allowed requests counter.
incrementBlockedRequests() - Method in class com.rale4j.sb.observability.RateLimitMetrics
Increments the blocked requests counter.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.ApiKey
Checks if API key security is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Bucket4j
Checks if the Bucket4j rate limiting strategy is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Grafana
Checks if Grafana observability is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Guava
Checks if the Guava rate limiting strategy is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Jwt
Checks if JWT security is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.OAuth2
Checks if OAuth2 security is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Prometheus
Checks if Prometheus observability is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Rbac
Checks if RBAC security is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Redis
Checks if the Redis rate limiting strategy is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.Resilience4j
Checks if the Resilience4j rate limiting strategy is enabled.
isEnabled() - Method in class com.rale4j.sb.config.RateLimitProperties.TokenBucket
Checks if the TokenBucket rate limiting strategy is enabled.

J

Jwt() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Jwt
 
JwtRateLimiter - Class in com.rale4j.sb.security
Rate-limiting strategy based on JWT tokens.
JwtRateLimiter() - Constructor for class com.rale4j.sb.security.JwtRateLimiter
 

K

keyGenerator - Variable in class com.rale4j.sb.enforcement.RateLimitAspect
 

L

LeakyBucketRateLimiter - Class in com.rale4j.sb.core
Rate limiter implementation using the Leaky Bucket algorithm.
LeakyBucketRateLimiter() - Constructor for class com.rale4j.sb.core.LeakyBucketRateLimiter
 
limit() - Element in annotation interface com.rale4j.sb.annotation.Rale4j
The maximum number of requests allowed within the duration.
Limits() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Limits
 

M

Metrics() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Metrics
 
MyWebSocketHandler - Class in com.rale4j.sb.websocket
Example WebSocket handler with rate-limiting annotations.
MyWebSocketHandler() - Constructor for class com.rale4j.sb.websocket.MyWebSocketHandler
 

O

OAuth2() - Constructor for class com.rale4j.sb.config.RateLimitProperties.OAuth2
 
OAuth2RateLimiter - Class in com.rale4j.sb.security
Rate-limiting strategy based on OAuth2 tokens.
OAuth2RateLimiter() - Constructor for class com.rale4j.sb.security.OAuth2RateLimiter
 
Observability() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Observability
 

P

Prometheus() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Prometheus
 

R

Rale4j - Annotation Interface in com.rale4j.sb.annotation
Custom annotation to enforce rate limiting on methods.
RateLimitAspect - Class in com.rale4j.sb.enforcement
Aspect for enforcing rate limits on methods annotated with Rale4j.
RateLimitAspect() - Constructor for class com.rale4j.sb.enforcement.RateLimitAspect
 
RateLimitConfig - Class in com.rale4j.sb.config
Configuration class for setting up rate limiting strategies.
RateLimitConfig() - Constructor for class com.rale4j.sb.config.RateLimitConfig
 
RateLimiterProvider - Interface in com.rale4j.sb.spi
Service Provider Interface (SPI) for custom rate-limiting strategies.
RateLimitExceededException - Exception Class in com.rale4j.sb.exception
Exception thrown when a rate limit is exceeded.
RateLimitExceededException(String) - Constructor for exception class com.rale4j.sb.exception.RateLimitExceededException
Constructs a new exception with the specified detail message.
rateLimitFactory - Variable in class com.rale4j.sb.enforcement.RateLimitAspect
 
RateLimitFactory - Class in com.rale4j.sb.core
Factory class for creating rate limit strategies.
RateLimitFactory(Map<String, RateLimitStrategy>) - Constructor for class com.rale4j.sb.core.RateLimitFactory
Constructor for RateLimitFactory.
RateLimitKeyGenerator - Class in com.rale4j.sb.enforcement
Generates unique keys for rate limiting based on the method and its arguments.
RateLimitKeyGenerator() - Constructor for class com.rale4j.sb.enforcement.RateLimitKeyGenerator
 
RateLimitMetrics - Class in com.rale4j.sb.observability
Tracks rate-limiting metrics using Micrometer.
RateLimitMetrics(MeterRegistry) - Constructor for class com.rale4j.sb.observability.RateLimitMetrics
Constructs a new RateLimitMetrics instance.
RateLimitProperties - Class in com.rale4j.sb.config
Configuration properties for rate limiting in the Rale4j application.
RateLimitProperties() - Constructor for class com.rale4j.sb.config.RateLimitProperties
 
RateLimitProperties.ApiKey - Class in com.rale4j.sb.config
API key security configuration.
RateLimitProperties.Bucket4j - Class in com.rale4j.sb.config
Configuration for the Bucket4j rate limiting strategy.
RateLimitProperties.Default - Class in com.rale4j.sb.config
Default rate limiting configuration.
RateLimitProperties.Grafana - Class in com.rale4j.sb.config
Grafana observability configuration.
RateLimitProperties.Guava - Class in com.rale4j.sb.config
Configuration for the Guava rate limiting strategy.
RateLimitProperties.Jwt - Class in com.rale4j.sb.config
JWT security configuration.
RateLimitProperties.Limits - Class in com.rale4j.sb.config
Configuration for rate limiting limits.
RateLimitProperties.Metrics - Class in com.rale4j.sb.config
Metrics rate limiting configuration.
RateLimitProperties.OAuth2 - Class in com.rale4j.sb.config
OAuth2 security configuration.
RateLimitProperties.Observability - Class in com.rale4j.sb.config
Configuration for observability settings.
RateLimitProperties.Prometheus - Class in com.rale4j.sb.config
Prometheus observability configuration.
RateLimitProperties.Rbac - Class in com.rale4j.sb.config
RBAC security configuration.
RateLimitProperties.Redis - Class in com.rale4j.sb.config
Configuration for the Redis rate limiting strategy.
RateLimitProperties.Resilience4j - Class in com.rale4j.sb.config
Configuration for the Resilience4j rate limiting strategy.
RateLimitProperties.Security - Class in com.rale4j.sb.config
Configuration for security settings.
RateLimitProperties.Strategies - Class in com.rale4j.sb.config
Configuration for different rate limiting strategies.
RateLimitProperties.TokenBucket - Class in com.rale4j.sb.config
Configuration for the TokenBucket rate limiting strategy.
RateLimitStrategy - Interface in com.rale4j.sb.core
Interface for rate-limiting strategies.
Rbac() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Rbac
 
RbacRateLimiter - Class in com.rale4j.sb.security
Rate-limiting strategy based on Role-Based Access Control (RBAC).
RbacRateLimiter() - Constructor for class com.rale4j.sb.security.RbacRateLimiter
 
Redis() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Redis
 
redisRateLimiter(RedisTemplate<String, String>) - Method in class com.rale4j.sb.config.RateLimitConfig
Creates a Redis-based rate limiter bean.
RedisRateLimiter - Class in com.rale4j.sb.core
Rate limiter implementation using Redis.
RedisRateLimiter(RedisTemplate<String, String>) - Constructor for class com.rale4j.sb.core.RedisRateLimiter
Constructor for RedisRateLimiter.
registerWebSocketHandlers(WebSocketHandlerRegistry) - Method in class com.rale4j.sb.config.WebSocketConfig
Registers WebSocket handlers.
Resilience4j() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Resilience4j
 
resilience4jRateLimiter() - Method in class com.rale4j.sb.config.RateLimitConfig
Creates a Resilience4j-based rate limiter bean.
Resilience4jRateLimiter - Class in com.rale4j.sb.core
Rate limiter implementation using Resilience4j.
Resilience4jRateLimiter() - Constructor for class com.rale4j.sb.core.Resilience4jRateLimiter
 

S

Security() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Security
 
setApiKey(RateLimitProperties.ApiKey) - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Sets the API key security configuration.
setBucket4j(RateLimitProperties.Bucket4j) - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Sets the Bucket4j rate limiting strategy configuration.
setDefaultLimit(RateLimitProperties.Default) - Method in class com.rale4j.sb.config.RateLimitProperties.Limits
Sets the default rate limiting configuration.
setDuration(int) - Method in class com.rale4j.sb.config.RateLimitProperties.Default
Sets the default rate limit duration.
setDuration(int) - Method in class com.rale4j.sb.config.RateLimitProperties.Metrics
Sets the metrics rate limit duration.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.ApiKey
Sets the API key security enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Bucket4j
Sets the Bucket4j rate limiting strategy enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Grafana
Sets the Grafana observability enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Guava
Sets the Guava rate limiting strategy enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Jwt
Sets the JWT security enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.OAuth2
Sets the OAuth2 security enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Prometheus
Sets the Prometheus observability enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Rbac
Sets the RBAC security enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Redis
Sets the Redis rate limiting strategy enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.Resilience4j
Sets the Resilience4j rate limiting strategy enabled state.
setEnabled(boolean) - Method in class com.rale4j.sb.config.RateLimitProperties.TokenBucket
Sets the TokenBucket rate limiting strategy enabled state.
setGrafana(RateLimitProperties.Grafana) - Method in class com.rale4j.sb.config.RateLimitProperties.Observability
Sets the Grafana observability configuration.
setGuava(RateLimitProperties.Guava) - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Sets the Guava rate limiting strategy configuration.
setHost(String) - Method in class com.rale4j.sb.config.RateLimitProperties.Redis
Sets the Redis host.
setJwt(OAuth2ResourceServerProperties.Jwt) - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Sets the JWT security configuration.
setLimit(int) - Method in class com.rale4j.sb.config.RateLimitProperties.Default
Sets the default rate limit.
setLimit(int) - Method in class com.rale4j.sb.config.RateLimitProperties.Metrics
Sets the metrics rate limit.
setLimits(RateLimitProperties.Limits) - Method in class com.rale4j.sb.config.RateLimitProperties
Sets the limits configuration.
setMetrics(RateLimitProperties.Metrics) - Method in class com.rale4j.sb.config.RateLimitProperties.Limits
Sets the metrics rate limiting configuration.
setOauth2(RateLimitProperties.OAuth2) - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Sets the OAuth2 security configuration.
setObservability(RateLimitProperties.Observability) - Method in class com.rale4j.sb.config.RateLimitProperties
Sets the observability configuration.
setPort(int) - Method in class com.rale4j.sb.config.RateLimitProperties.Redis
Sets the Redis port.
setPrometheus(RateLimitProperties.Prometheus) - Method in class com.rale4j.sb.config.RateLimitProperties.Observability
Sets the Prometheus observability configuration.
setRbac(RateLimitProperties.Rbac) - Method in class com.rale4j.sb.config.RateLimitProperties.Security
Sets the RBAC security configuration.
setRedis(RateLimitProperties.Redis) - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Sets the Redis rate limiting strategy configuration.
setResilience4j(RateLimitProperties.Resilience4j) - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Sets the Resilience4j rate limiting strategy configuration.
setSecurity(RateLimitProperties.Security) - Method in class com.rale4j.sb.config.RateLimitProperties
Sets the security configuration.
setStrategies(RateLimitProperties.Strategies) - Method in class com.rale4j.sb.config.RateLimitProperties
Sets the strategies configuration.
setTokenBucket(RateLimitProperties.TokenBucket) - Method in class com.rale4j.sb.config.RateLimitProperties.Strategies
Sets the TokenBucket rate limiting strategy configuration.
Strategies() - Constructor for class com.rale4j.sb.config.RateLimitProperties.Strategies
 
strategy() - Element in annotation interface com.rale4j.sb.annotation.Rale4j
The rate-limiting strategy to use (e.g., "guava", "redis").

T

TokenBucket() - Constructor for class com.rale4j.sb.config.RateLimitProperties.TokenBucket
 
tokenBucketRateLimiter() - Method in class com.rale4j.sb.config.RateLimitConfig
Creates a token bucket-based rate limiter bean.
TokenBucketRateLimiter - Class in com.rale4j.sb.core
Rate limiter implementation using the Token Bucket algorithm.
TokenBucketRateLimiter() - Constructor for class com.rale4j.sb.core.TokenBucketRateLimiter
 

W

WebSocketConfig - Class in com.rale4j.sb.config
Configuration class for WebSocket endpoints.
WebSocketConfig(MyWebSocketHandler) - Constructor for class com.rale4j.sb.config.WebSocketConfig
Constructor for WebSocketConfig.
WebSocketRateLimitAspect - Class in com.rale4j.sb.websocket
Aspect for enforcing rate limits on WebSocket messages.
WebSocketRateLimitAspect() - Constructor for class com.rale4j.sb.websocket.WebSocketRateLimitAspect
 
A B C D E G H I J K L M O P R S T W 
All Classes and Interfaces|All Packages|Serialized Form