SessionManager
class SessionManager extends Manager mixin Store
Traits
Constants
| DEFAULT_REDIS_CONNECTION |
|
Properties
| protected Repository | $config | The configuration repository instance. |
from Manager |
| protected Closure> | $customCreators | The registered custom driver creators. |
from Manager |
| protected array<array-key, mixed> | $drivers | The array of created "drivers". |
from Manager |
Methods
Get the default session driver name.
Get the name of the manager's creator method for the given driver.
Call a custom driver creator.
Dynamically call the default driver instance.
Create an instance of the "null" session driver.
Create an instance of the "array" session driver.
Create an instance of the "cookie" session driver.
Create an instance of the file session driver.
Create an instance of the file session driver.
Create an instance of the database session driver.
Create an instance of the Redis session driver.
Determine if the configured driver supports user session management.
Get a user-scoped session repository.
Determine if requests for the same session should wait for each to finish before executing.
Get the name of the cache store / driver that should be used to acquire session locks.
Get the maximum number of seconds the session lock should be held for.
Get the maximum number of seconds to wait while attempting to acquire a route block session lock.
Get the session configuration.
Set the default session driver name.
Details
in
RebindsCallbacksToSelf at line 18
protected Closure|null
bindCallbackToSelf(Closure $callback)
Bind the provided callback to the class instance.
at line 286
string|null
getDefaultDriver()
Get the default session driver name.
in
Manager at line 60
mixed
driver(UnitEnum|string|null $driver = null)
Get a driver instance.
in
Manager at line 92
protected mixed
createDriver(string $driver)
Create a new driver instance.
in
Manager at line 113
protected string|null
getCreatorMethod(string $driver)
Get the name of the manager's creator method for the given driver.
at line 31
protected mixed
callCustomCreator(string $driver)
Call a custom driver creator.
in
Manager at line 140
Manager
extend(string $driver, Closure $callback)
Register a custom driver creator Closure.
Anonymous closures run in this manager's class scope; non-static closures also receive the manager as $this.
The callback persists in the singleton's customCreators array for the worker lifetime and applies to every subsequent driver resolution.
in
Manager at line 160
array
getDrivers()
Get all of the created "drivers".
in
Manager at line 182
Manager
setContainer(Container $container)
Set the container instance used by the manager.
Swaps the singleton's container and configuration references; per-request use races across coroutines and breaks every concurrent driver resolution through this manager.
in
Manager at line 199
Manager
forgetDrivers()
Forget all of the resolved driver instances.
Clears the singleton's driver cache; concurrent coroutines may already hold references that next resolution will not share.
in
Manager at line 210
mixed
__call(string $method, array $parameters)
Dynamically call the default driver instance.
at line 39
protected Store
createNullDriver()
Create an instance of the "null" session driver.
at line 47
protected Store
createArrayDriver()
Create an instance of the "array" session driver.
at line 57
protected Store
createCookieDriver()
Create an instance of the "cookie" session driver.
at line 69
protected Store
createFileDriver()
Create an instance of the file session driver.
at line 77
protected Store
createNativeDriver()
Create an instance of the file session driver.
at line 91
protected Store
createDatabaseDriver()
Create an instance of the database session driver.
at line 113
protected Store
createRedisDriver()
Create an instance of the Redis session driver.
at line 137
protected Store
buildSession(SessionHandlerInterface $handler)
Build the session instance.
at line 152
protected EncryptedStore
buildEncryptedSession(SessionHandlerInterface $handler)
Build the encrypted session instance.
at line 166
bool
supportsUserSessionManagement()
Determine if the configured driver supports user session management.
at line 179
UserSessions
forUser(Authenticatable|int|string $user, UnitEnum|string|null $guard = null)
Get a user-scoped session repository.
at line 246
bool
shouldBlock()
Determine if requests for the same session should wait for each to finish before executing.
at line 254
string|null
blockDriver()
Get the name of the cache store / driver that should be used to acquire session locks.
at line 262
int
defaultRouteBlockLockSeconds()
Get the maximum number of seconds the session lock should be held for.
at line 270
int
defaultRouteBlockWaitSeconds()
Get the maximum number of seconds to wait while attempting to acquire a route block session lock.
at line 278
array
getSessionConfig()
Get the session configuration.
at line 296
void
setDefaultDriver(UnitEnum|string $name)
Set the default session driver name.
Mutates process-global config; per-request use races across coroutines.