AuthenticationChain
in package
implements
AuthenticationChainContract
Uses
Microable, Containable
Authentication chain.
This class is responsible for managing the authentication backends in the application.
It will be run on every request to authenticate the user by the kernel
Table of Contents
Interfaces
Properties
- $context : ContainerInterface|Container|null
- Application container context
- $macros : array<string|int, mixed>
- $application : PioniaApplication
- $authentications : Arrayable
Methods
- __call() : mixed
- Dynamically handle calls to the class.
- __callStatic() : mixed
- Dynamically handle calls to the class.
- __construct() : mixed
- addAfter() : static
- Add an authentication after another
- addAuthenticationBackend() : static
- Adds an authentication backend to the chain
- addBefore() : static
- Add an authentication backend before another
- flushMacros() : void
- Remove all the macros we had registered
- getAuthentications() : array<string|int, mixed>
- Get the authentications in chain
- getOrDefault() : mixed
- Get a value from the container or return a default value
- getOrFail() : mixed
- getSilently() : mixed
- hasMacro() : bool
- Check if we have a method in the balonables
- isAuthenticationContract() : bool
- macro() : void
- Add a new mixable to the macros
- mixin() : void
- Mix another object into the class.
- next() : void
- Run the next authentication backend in the chain.
- run() : void
- Run the authentication chain on a request
- set() : void
- Set a value in the container
- contextHas() : bool
- canRunOnCurrentService() : bool
Properties
$context
Application container context
public
ContainerInterface|Container|null
$context
$macros
protected
static array<string|int, mixed>
$macros
= []
$application
private
PioniaApplication
$application
$authentications
private
Arrayable
$authentications
Methods
__call()
Dynamically handle calls to the class.
public
__call(string $method, array<string|int, mixed> $parameters) : mixed
Parameters
- $method : string
- $parameters : array<string|int, mixed>
Tags
__callStatic()
Dynamically handle calls to the class.
public
static __callStatic(string $method, array<string|int, mixed> $parameters) : mixed
Parameters
- $method : string
- $parameters : array<string|int, mixed>
Tags
__construct()
public
__construct(PioniaApplication $application) : mixed
Parameters
- $application : PioniaApplication
addAfter()
Add an authentication after another
public
addAfter(string $authToPoint, string $authToAdd) : static
Parameters
- $authToPoint : string
- $authToAdd : string
Return values
staticaddAuthenticationBackend()
Adds an authentication backend to the chain
public
addAuthenticationBackend(string $authenticationContract) : static
Parameters
- $authenticationContract : string
Return values
staticaddBefore()
Add an authentication backend before another
public
addBefore(string $authToPoint, string $authToAdd) : static
Parameters
- $authToPoint : string
- $authToAdd : string
Return values
staticflushMacros()
Remove all the macros we had registered
public
static flushMacros() : void
getAuthentications()
Get the authentications in chain
public
getAuthentications() : array<string|int, mixed>
Return values
array<string|int, mixed>getOrDefault()
Get a value from the container or return a default value
public
getOrDefault(string $key, mixed $default) : mixed
Parameters
- $key : string
- $default : mixed
getOrFail()
public
getOrFail(mixed $key) : mixed
Parameters
- $key : mixed
Tags
getSilently()
public
getSilently(mixed $key) : mixed
Parameters
- $key : mixed
hasMacro()
Check if we have a method in the balonables
public
static hasMacro(string $name) : bool
Parameters
- $name : string
Return values
boolisAuthenticationContract()
public
isAuthenticationContract(string $authenticationContract) : bool
Parameters
- $authenticationContract : string
Return values
boolmacro()
Add a new mixable to the macros
public
static macro(string $key, $value) : void
Parameters
mixin()
Mix another object into the class.
public
static mixin(object $mixin[, bool $replace = true ]) : void
Parameters
- $mixin : object
- $replace : bool = true
Tags
next()
Run the next authentication backend in the chain.
public
next(Request $request, AuthenticationContract $next) : void
Parameters
- $request : Request
- $next : AuthenticationContract
run()
Run the authentication chain on a request
public
run(Request $request) : void
Parameters
- $request : Request
set()
Set a value in the container
public
set(string $name, mixed $value) : void
Parameters
- $name : string
- $value : mixed
contextHas()
protected
contextHas(string $key) : bool
Parameters
- $key : string
Return values
boolcanRunOnCurrentService()
private
canRunOnCurrentService(AuthenticationBackend $auth, string|null $currentService) : bool
Parameters
- $auth : AuthenticationBackend
- $currentService : string|null