public class RateLimiter
extends java.lang.Object
[Schluessel = RateLimit
als CSV]
Aenderungen an der Keystore-Datei loesen zur Laufzeit im Refresh-Intervall
einen Abgleich gegen die Laufzeit-Werte aus.validate(String, String, RateLimit, RateLimit)
,
RateLimit.RateLimit(String)
,
RateLimit
,
RateLimitFilter
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
KEY_BLOCKED |
static java.lang.String |
KEY_DEFAULT |
Constructor and Description |
---|
RateLimiter(Log log) |
RateLimiter(Log log,
java.io.File backupFile,
long refreshInterval,
int backupTrigger,
long maxIdle) |
RateLimiter(Log log,
java.io.File backupFile,
long refreshInterval,
int backupTrigger,
long maxIdle,
java.io.File keystoreFile) |
RateLimiter(Log log,
java.io.File backupFile,
long refreshInterval,
int backupTrigger,
long maxIdle,
Props keystore) |
public static final java.lang.String KEY_DEFAULT
public static final java.lang.String KEY_BLOCKED
public RateLimiter(Log log)
public RateLimiter(Log log, java.io.File backupFile, long refreshInterval, int backupTrigger, long maxIdle)
public RateLimiter(Log log, java.io.File backupFile, long refreshInterval, int backupTrigger, long maxIdle, Props keystore)
public RateLimiter(Log log, java.io.File backupFile, long refreshInterval, int backupTrigger, long maxIdle, java.io.File keystoreFile)
public final RateLimiter start()
public final void shutdown()
public final int validate(java.lang.String anonKey, java.lang.String authkey, RateLimit defaultLimit, RateLimit blockedLimit)
anonKey
- String anonyme Adresse, z.B. IP, NULLABLEauthkey
- String Anmelde-Schluessel, z.B. API-KEY, NULLABLEdefaultLimit
- RateLimit
Vorlage, NULLABLEblockedLimit
- RateLimit
Vorlage fuer Sperrung, NULLABLERateLimit.KEY_AUTHFAILED
RateLimit.validate()
,
RateLimiter