class SessionManager implements SessionManagerInterface (View source)

Session Manager

Properties

protected SessionInterface $currentSession
protected array $remoteSessions
protected VariableFrontend $metaDataCache

Meta data cache used by sessions

protected VariableFrontend $storageCache

Storage cache for by sessions

protected float $garbageCollectionProbability
protected int $garbageCollectionMaximumPerRun
protected int $inactivityTimeout
protected LoggerInterface $logger

Methods

getCurrentSession()

Returns the currently active session which stores session data for the current HTTP request on this local system.

bool
initializeCurrentSessionFromCookie(Cookie $cookie)

No description

bool
createCurrentSessionFromCookie(Cookie $cookie)

No description

getSession(string $sessionIdentifier)

Returns the specified session. If no session with the given identifier exists, NULL is returned.

getActiveSessions()

Returns all active sessions, even remote ones.

array
getSessionsByTag(string $tag)

Returns all sessions which are tagged by the specified tag.

int
destroySessionsByTag(string $tag, string $reason = '')

Destroys all sessions which are tagged with the specified tag.

int|null
collectGarbage()

Iterates over all existing sessions and removes their data if the inactivity timeout was reached.

void
shutdownObject()

Shuts down this session

Details

SessionInterface getCurrentSession()

Returns the currently active session which stores session data for the current HTTP request on this local system.

Return Value

SessionInterface

bool initializeCurrentSessionFromCookie(Cookie $cookie)

No description

Parameters

Cookie $cookie

Return Value

bool

bool createCurrentSessionFromCookie(Cookie $cookie)

No description

Parameters

Cookie $cookie

Return Value

bool

SessionInterface|null getSession(string $sessionIdentifier)

Returns the specified session. If no session with the given identifier exists, NULL is returned.

Parameters

string $sessionIdentifier

The session identifier

Return Value

SessionInterface|null

Session[] getActiveSessions()

Returns all active sessions, even remote ones.

Return Value

Session[]

array getSessionsByTag(string $tag)

Returns all sessions which are tagged by the specified tag.

Parameters

string $tag

A valid Cache Frontend tag

Return Value

array

A collection of Session objects or an empty array if tag did not match

int destroySessionsByTag(string $tag, string $reason = '')

Destroys all sessions which are tagged with the specified tag.

Parameters

string $tag

A valid Cache Frontend tag

string $reason

A reason to mention in log output for why the sessions have been destroyed. For example: "The corresponding account was deleted"

Return Value

int

Number of sessions which have been destroyed

int|null collectGarbage()

Iterates over all existing sessions and removes their data if the inactivity timeout was reached.

Return Value

int|null

The number of outdated entries removed or NULL if no such information could be determined

void shutdownObject()

Shuts down this session

This method must not be called manually – it is invoked by Flow's object management.