public MemoryCacheIpPolicyStore( IMemoryCache cache, IRateLimitLoader Loader) : base(cache) { _options = Loader.GetIpRateLimitOptions(); _policies = Loader.GetIpRateLimitPolicies(); }
public RedisCacheClientPolicyStore( IRedisCache cache, IRateLimitLoader Loader) : base(cache) { _options = Loader.GetClientRateLimitOptions(); _policies = Loader.GetClientRateLimitPolicies(); }
public ClientRateLimitMiddleware(RequestDelegate next, IRateLimitLoader Loader, IRateLimitCounterStore counterStore, IClientPolicyStore policyStore, IRateLimitConfiguration config, ILogger <ClientRateLimitMiddleware> logger) : base(next, Loader.GetClientRateLimitOptions(), new ClientRateLimitProcessor(Loader.GetClientRateLimitOptions(), counterStore, policyStore, config), config) { _logger = logger; }
public RateLimitConfiguration( IHttpContextAccessor httpContextAccessor, IRateLimitLoader Loader) { IpRateLimitOptions = Loader.GetIpRateLimitOptions(); ClientRateLimitOptions = Loader.GetClientRateLimitOptions(); HttpContextAccessor = httpContextAccessor; ClientResolvers = new List<IClientResolveContributor>(); IpResolvers = new List<IIpResolveContributor>(); RegisterResolvers(); }