class RateLimiter (View source)

Methods

void
__construct( Repository $cache)

Create a new rate limiter instance.

bool
tooManyAttempts( string $key, int $maxAttempts, int $decayMinutes = 1)

Determine if the given key has been "accessed" too many times.

int
hit( string $key, int $decayMinutes = 1)

Increment the counter for a given key for a given decay time.

mixed
attempts( string $key)

Get the number of attempts for the given key.

mixed
resetAttempts( string $key)

Reset the number of attempts for the given key.

int
retriesLeft( string $key, int $maxAttempts)

Get the number of retries left for the given key.

void
clear( string $key)

Clear the hits and lockout for the given key.

int
availableIn( string $key)

Get the number of seconds until the "key" is accessible again.

Details

at line line 22
void __construct( Repository $cache)

Create a new rate limiter instance.

Parameters

Repository $cache

Return Value

void

at line line 35
bool tooManyAttempts( string $key, int $maxAttempts, int $decayMinutes = 1)

Determine if the given key has been "accessed" too many times.

Parameters

string $key
int $maxAttempts
int $decayMinutes

Return Value

bool

at line line 59
int hit( string $key, int $decayMinutes = 1)

Increment the counter for a given key for a given decay time.

Parameters

string $key
int $decayMinutes

Return Value

int

at line line 72
mixed attempts( string $key)

Get the number of attempts for the given key.

Parameters

string $key

Return Value

mixed

at line line 83
mixed resetAttempts( string $key)

Reset the number of attempts for the given key.

Parameters

string $key

Return Value

mixed

at line line 95
int retriesLeft( string $key, int $maxAttempts)

Get the number of retries left for the given key.

Parameters

string $key
int $maxAttempts

Return Value

int

at line line 108
void clear( string $key)

Clear the hits and lockout for the given key.

Parameters

string $key

Return Value

void

at line line 121
int availableIn( string $key)

Get the number of seconds until the "key" is accessible again.

Parameters

string $key

Return Value

int