class RateLimiter extends Facade

Properties

static protected Container|null $app

The application instance being facaded.

from  Facade
static protected array $resolvedInstance

The resolved object instances.

from  Facade
static protected bool $cached

Indicates if the resolved instance should be cached.

from  Facade

Methods

static void
resolved(Closure $callback)

Run a Closure when the facade has been resolved.

from  Facade
static MockInterface|null
spy()

Convert the facade into a Mockery spy.

from  Facade
static MockInterface
partialMock()

Initiate a partial mock on the facade.

from  Facade
static CompositeExpectation|Expectation|HigherOrderMessage
shouldReceive()

Initiate a mock expectation on the facade.

from  Facade
static CompositeExpectation|Expectation|ExpectsHigherOrderMessage
expects()

Initiate a mock expectation on the facade.

from  Facade
static MockInterface
createFreshMockInstance()

Create a fresh mock instance for the given class.

from  Facade
static MockInterface
createMock()

Create a fresh mock instance for the given class.

from  Facade
static bool
isMock()

Determines whether a mock is set as the instance of the facade.

from  Facade
static string|null
getMockableClass()

Get the mockable class for the bound instance.

from  Facade
static void
swap(mixed $instance)

Hotswap the underlying instance behind the facade.

from  Facade
static bool
isFake()

Determines whether a "fake" has been set as the facade instance.

from  Facade
static mixed
getFacadeRoot()

Get the root object behind the facade.

from  Facade
static string
getFacadeAccessor()

Get the registered name of the component.

static mixed
resolveFacadeInstance(string $name)

Resolve the facade root instance from the container.

from  Facade
static void
clearResolvedInstance(string|null $name = null)

Clear a resolved facade instance.

from  Facade
static void
clearResolvedInstances()

Clear all of the resolved instances.

from  Facade
static Collection
defaultAliases()

Get the application default aliases.

from  Facade
static Container|null
getFacadeApplication()

Get the application instance behind the facade.

from  Facade
static void
setFacadeApplication(Container|null $app)

Set the application instance.

from  Facade
static mixed
__callStatic(string $method, array $args)

Handle dynamic, static calls to the object.

from  Facade
static RateLimiter
extend(string $name, Closure $callback)

No description

static void
flushMacros()

No description

static void
flushState()

No description

static RateLimiter
for(UnitEnum|string $name, Closure $callback, UnitEnum|string|null $store = 'null')

No description

static RateLimiter
forgetInstance(array|string|null $name = 'null')

No description

static string
getDefaultInstance()

No description

static array
getInstanceConfig(string $name)

No description

static bool
hasMacro(string $name)

No description

static mixed
instance(string|null $name = 'null')

No description

static Closure|null
limiter(UnitEnum|string $name)

No description

static string|null
limiterStore(UnitEnum|string $name)

No description

static void
macro(string $name, callable|object $macro)

No description

static mixed
macroCall(string $method, array $parameters)

No description

static void
mixin(object $mixin, bool $replace = 'true')

No description

static void
purge(string|null $name = 'null')

No description

static void
resolveKeyScopeUsing(Closure $resolver)

No description

static RateLimiter
setApplication(Application $app)

No description

static void
setDefaultInstance(string $name)

No description

static Limiter
store(UnitEnum|string|null $name = 'null')

No description

static mixed
attempt(AdmissionPolicy $policy, Closure $callback, UnitEnum|string|null $limiterName = 'null')

No description

static CooldownResult
block(Cooldown $cooldown, int $seconds, UnitEnum|string|null $limiterName = 'null')

No description

static bool
clear(Cooldown $policy, UnitEnum|string|null $limiterName = 'null')

No description

static LimitResult
consume(AdmissionPolicy $policy, UnitEnum|string|null $limiterName = 'null')

No description

static void
array()

<int, \Hypervel\RateLimiter\LimitResult> consumeMany(array<int, \Hypervel\RateLimiter\AdmissionPolicy> $policies, \UnitEnum|string|null $limiterName = 'null')

static Store
getStore()

No description

void
static()

($policy is \Hypervel\RateLimiter\Backoff ? \Hypervel\RateLimiter\BackoffResult : ($policy is \Hypervel\RateLimiter\Cooldown ? \Hypervel\RateLimiter\CooldownResult : \Hypervel\RateLimiter\LimitResult)) inspect(\Hypervel\RateLimiter\AdmissionPolicy|\Hypervel\RateLimiter\Backoff|\Hypervel\RateLimiter\Cooldown $policy, \UnitEnum|string|null $limiterName = 'null')

static BackoffResult
recordFailure(Backoff $backoff, UnitEnum|string|null $limiterName = 'null')

No description

Details

in Facade at line 61
static void resolved(Closure $callback)

Run a Closure when the facade has been resolved.

Boot-only. The callback is registered on the worker-global container and runs for every subsequent resolution of the facade accessor.

Parameters

Closure $callback

Return Value

void

in Facade at line 81
static MockInterface|null spy()

Convert the facade into a Mockery spy.

Tests only. Swaps the resolved facade instance for the worker lifetime.

Return Value

MockInterface|null

in Facade at line 99
static MockInterface partialMock()

Initiate a partial mock on the facade.

Tests only. Swaps the resolved facade instance for the worker lifetime.

Return Value

MockInterface

in Facade at line 115
static CompositeExpectation|Expectation|HigherOrderMessage shouldReceive()

Initiate a mock expectation on the facade.

Tests only. Swaps the resolved facade instance for the worker lifetime.

Return Value

CompositeExpectation|Expectation|HigherOrderMessage

in Facade at line 131
static CompositeExpectation|Expectation|ExpectsHigherOrderMessage expects()

Initiate a mock expectation on the facade.

Tests only. Swaps the resolved facade instance for the worker lifetime.

Return Value

CompositeExpectation|Expectation|ExpectsHigherOrderMessage

in Facade at line 145
static protected MockInterface createFreshMockInstance()

Create a fresh mock instance for the given class.

Return Value

MockInterface

in Facade at line 157
static protected MockInterface createMock()

Create a fresh mock instance for the given class.

Return Value

MockInterface

in Facade at line 167
static protected bool isMock()

Determines whether a mock is set as the instance of the facade.

Return Value

bool

in Facade at line 178
static protected string|null getMockableClass()

Get the mockable class for the bound instance.

Return Value

string|null

in Facade at line 194
static void swap(mixed $instance)

Hotswap the underlying instance behind the facade.

Tests only. Replaces the worker-wide resolved facade instance and container binding; runtime use races across coroutines and changes every subsequent facade call.

Parameters

mixed $instance

Return Value

void

in Facade at line 206
static bool isFake()

Determines whether a "fake" has been set as the facade instance.

Return Value

bool

in Facade at line 217
static mixed getFacadeRoot()

Get the root object behind the facade.

Return Value

mixed

at line 46
static protected string getFacadeAccessor()

Get the registered name of the component.

Return Value

string

in Facade at line 233
static protected mixed resolveFacadeInstance(string $name)

Resolve the facade root instance from the container.

Parameters

string $name

Return Value

mixed

in Facade at line 256
static void clearResolvedInstance(string|null $name = null)

Clear a resolved facade instance.

Boot or tests only. Clears a worker-wide facade cache entry; concurrent coroutines may still hold the previous resolved instance.

Parameters

string|null $name

Return Value

void

in Facade at line 267
static void clearResolvedInstances()

Clear all of the resolved instances.

Boot or tests only. Clears the worker-wide facade cache; concurrent coroutines may still hold previously resolved instances.

Return Value

void

in Facade at line 275
static Collection defaultAliases()

Get the application default aliases.

Return Value

Collection

in Facade at line 335
static Container|null getFacadeApplication()

Get the application instance behind the facade.

Return Value

Container|null

in Facade at line 346
static void setFacadeApplication(Container|null $app)

Set the application instance.

Boot or tests only. Replaces the worker-wide facade application reference; runtime use races across coroutines and breaks every facade lookup.

Parameters

Container|null $app

Return Value

void

in Facade at line 356
static mixed __callStatic(string $method, array $args)

Handle dynamic, static calls to the object.

Parameters

string $method
array $args

Return Value

mixed

Exceptions

RuntimeException

at line 41
static RateLimiter extend(string $name, Closure $callback)

No description

Parameters

string $name
Closure $callback

Return Value

RateLimiter

at line 41
static void flushMacros()

No description

Return Value

void

at line 41
static void flushState()

No description

Return Value

void

at line 41
static RateLimiter for(UnitEnum|string $name, Closure $callback, UnitEnum|string|null $store = 'null')

No description

Parameters

UnitEnum|string $name
Closure $callback
UnitEnum|string|null $store

Return Value

RateLimiter

at line 41
static RateLimiter forgetInstance(array|string|null $name = 'null')

No description

Parameters

array|string|null $name

Return Value

RateLimiter

at line 41
static string getDefaultInstance()

No description

Return Value

string

at line 41
static array getInstanceConfig(string $name)

No description

Parameters

string $name

Return Value

array

at line 41
static bool hasMacro(string $name)

No description

Parameters

string $name

Return Value

bool

at line 41
static mixed instance(string|null $name = 'null')

No description

Parameters

string|null $name

Return Value

mixed

at line 41
static Closure|null limiter(UnitEnum|string $name)

No description

Parameters

UnitEnum|string $name

Return Value

Closure|null

at line 41
static string|null limiterStore(UnitEnum|string $name)

No description

Parameters

UnitEnum|string $name

Return Value

string|null

at line 41
static void macro(string $name, callable|object $macro)

No description

Parameters

string $name
callable|object $macro

Return Value

void

at line 41
static mixed macroCall(string $method, array $parameters)

No description

Parameters

string $method
array $parameters

Return Value

mixed

at line 41
static void mixin(object $mixin, bool $replace = 'true')

No description

Parameters

object $mixin
bool $replace

Return Value

void

at line 41
static void purge(string|null $name = 'null')

No description

Parameters

string|null $name

Return Value

void

at line 41
static void resolveKeyScopeUsing(Closure $resolver)

No description

Parameters

Closure $resolver

Return Value

void

at line 41
static RateLimiter setApplication(Application $app)

No description

Parameters

Application $app

Return Value

RateLimiter

at line 41
static void setDefaultInstance(string $name)

No description

Parameters

string $name

Return Value

void

at line 41
static Limiter store(UnitEnum|string|null $name = 'null')

No description

Parameters

UnitEnum|string|null $name

Return Value

Limiter

at line 41
static mixed attempt(AdmissionPolicy $policy, Closure $callback, UnitEnum|string|null $limiterName = 'null')

No description

Parameters

AdmissionPolicy $policy
Closure $callback
UnitEnum|string|null $limiterName

Return Value

mixed

at line 41
static CooldownResult block(Cooldown $cooldown, int $seconds, UnitEnum|string|null $limiterName = 'null')

No description

Parameters

Cooldown $cooldown
int $seconds
UnitEnum|string|null $limiterName

Return Value

CooldownResult

at line 41
static bool clear(Cooldown $policy, UnitEnum|string|null $limiterName = 'null')

No description

Parameters

Cooldown $policy
UnitEnum|string|null $limiterName

Return Value

bool

at line 41
static LimitResult consume(AdmissionPolicy $policy, UnitEnum|string|null $limiterName = 'null')

No description

Parameters

AdmissionPolicy $policy
UnitEnum|string|null $limiterName

Return Value

LimitResult

at line 41
static void array()

<int, \Hypervel\RateLimiter\LimitResult> consumeMany(array<int, \Hypervel\RateLimiter\AdmissionPolicy> $policies, \UnitEnum|string|null $limiterName = 'null')

Return Value

void

at line 41
static Store getStore()

No description

Return Value

Store

at line 41
void static()

($policy is \Hypervel\RateLimiter\Backoff ? \Hypervel\RateLimiter\BackoffResult : ($policy is \Hypervel\RateLimiter\Cooldown ? \Hypervel\RateLimiter\CooldownResult : \Hypervel\RateLimiter\LimitResult)) inspect(\Hypervel\RateLimiter\AdmissionPolicy|\Hypervel\RateLimiter\Backoff|\Hypervel\RateLimiter\Cooldown $policy, \UnitEnum|string|null $limiterName = 'null')

Return Value

void

at line 41
static BackoffResult recordFailure(Backoff $backoff, UnitEnum|string|null $limiterName = 'null')

No description

Parameters

Backoff $backoff
UnitEnum|string|null $limiterName

Return Value

BackoffResult