/** * Adds a rule that restricts access according to the {@link Role} of the * current authenticated {@link User}. Each role is defined a limit in terms * of requests by period of time, in any other case the access is forbidden. * * @param period * The period of time. * @param periodUnit * Period time unit associated to the rule. * @param limitsPerRole * The limit assigned per role's name. */ public void addRolesPeriodicCounter(int period, TimeUnit periodUnit, Map<String, Integer> limitsPerRole) { addRolesPeriodicCounter(period, periodUnit, limitsPerRole, 0); }
/** * Adds a rule that restricts access according to the {@link Role} of the * current authenticated {@link User}. Each role is defined a limit in terms * of requests by period of time, in any other case the access is forbidden. * * @param period * The period of time. * @param periodUnit * Period time unit associated to the rule. * @param limitsPerRole * The limit assigned per role's name. */ public void addRolesPeriodicCounter(int period, TimeUnit periodUnit, Map<String, Integer> limitsPerRole) { addRolesPeriodicCounter(period, periodUnit, limitsPerRole, 0); }
/** * Adds a rule that restricts access according to the {@link Role} of the * current authenticated {@link User}. Each role is defined a limit in terms * of requests by period of time, in any other case the access is forbidden. * * @param period * The period of time. * @param periodUnit * Period time unit associated to the rule. * @param limitsPerRole * The limit assigned per role's name. */ public void addRolesPeriodicCounter(int period, TimeUnit periodUnit, Map<String, Integer> limitsPerRole) { addRolesPeriodicCounter(period, periodUnit, limitsPerRole, 0); }
/** * Adds a rule that restricts access according to the {@link Role} of the * current authenticated {@link User}. Each role is defined a limit in terms * of requests by period of time, in any other case the access is forbidden. * * @param period * The period of time. * @param periodUnit * Period time unit associated to the rule. * @param limitsPerRole * The limit assigned per role's name. */ public void addRolesPeriodicCounter(int period, TimeUnit periodUnit, Map<String, Integer> limitsPerRole) { addRolesPeriodicCounter(period, periodUnit, limitsPerRole, 0); }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }
private void addRateLimitationRules(FirewallSettings firewallSettings, FirewallConfig firewallConfig) { if (firewallSettings.getRateLimits() != null) { List<FirewallRateLimit> rateLimits = firewallSettings .getRateLimits(); Map<Integer, Collection<FirewallRateLimit>> rateLimitsByPeriod = sortRateLimitsByPeriod(rateLimits); for (Integer period : rateLimitsByPeriod.keySet()) { Map<String, Integer> limitsPerRole = new HashMap<>(); int defaultRateLimit = Integer.MAX_VALUE; for (FirewallRateLimit firewallRateLimit : rateLimitsByPeriod .get(period)) { if (firewallRateLimit.isDefaultRateLimit()) { defaultRateLimit = firewallRateLimit.getRateLimit(); } else { limitsPerRole.put(firewallRateLimit.getGroup(), firewallRateLimit.getRateLimit()); } } firewallConfig.addRolesPeriodicCounter(period, TimeUnit.SECONDS, limitsPerRole, defaultRateLimit); } } }