a-blog cms PHP API Reference

RateLimiter extends Facade
in package

Class RateLimiter

POST の連投防止を担う PostRateLimiter へのアクセスポイント。

Table of Contents

Properties

$container  : Container
$instance  : mixed
$resolvedFacades  : mixed
alias → 解決済みファサードクラス名の逆引き表。

Methods

__callStatic()  : mixed
clearInstance()  : void
テスト用: ファサードがキャッシュしている解決済みインスタンスを破棄する。
getInstance()  : mixed
get service instance
logLockPost()  : void
setContainer()  : void
swap()  : void
テスト用: サービスインスタンスをスタブ等へ差し替える。
validateLockPost()  : bool
getServiceAlias()  : string
getServiceInstance()  : mixed
isCache()  : bool

Properties

$resolvedFacades

alias → 解決済みファサードクラス名の逆引き表。

protected static mixed $resolvedFacades = []

どのサブクラスも再宣言していないため、全ファサード共通で Facade 基底の 1 テーブルを共有する。bind 変更時にどのファサードの static $instance を 破棄すべきか特定するのに使う。値は class-string => true の連想配列にして 重複登録を自然に排除する。

Methods

__callStatic()

public static __callStatic(string $method, array<string|int, mixed> $arguments) : mixed
Parameters
$method : string
$arguments : array<string|int, mixed>

clearInstance()

テスト用: ファサードがキャッシュしている解決済みインスタンスを破棄する。

public static clearInstance() : void

isCache() が true のファサードは解決済みインスタンスを静的プロパティ $instance に 保持するため、コンテナ側だけを差し替えても反映されない。本メソッドでキャッシュを 無効化し、次回アクセスでコンテナから再解決させる。

getInstance()

get service instance

public static getInstance() : mixed

logLockPost()

public static logLockPost(string $lockKey) : void

試行を記録する

Parameters
$lockKey : string

swap()

テスト用: サービスインスタンスをスタブ等へ差し替える。

public static swap(object $instance) : void

DI コンテナのエイリアスを差し替えたうえで、ファサードがキャッシュしている解決済み インスタンス(isCache() が true の場合)を破棄し、次回アクセス時に差し替え後の インスタンスを再解決させる。テスト後は元のインスタンスを渡して再度呼び出し復元する。

Parameters
$instance : object

validateLockPost()

public static validateLockPost(string $lockKey[, int $trialTime = = '5' ][, int $trialNumber = = '5' ][, int $lockTime = = '15' ][, bool $remoteAddr = = 'true' ]) : bool

試行回数の上限内か判定し、超過していればロックする

Parameters
$lockKey : string
$trialTime : int = = '5'
$trialNumber : int = = '5'
$lockTime : int = = '15'
$remoteAddr : bool = = 'true'
Return values
bool

getServiceAlias()

protected static getServiceAlias() : string
Return values
string

getServiceInstance()

protected static getServiceInstance(string $alias) : mixed
Parameters
$alias : string

isCache()

protected static isCache() : bool
Return values
bool

        
On this page

Search results