You are here

public function SessionWorkspaceNegotiator::getActiveWorkspace in Drupal 9

Same name and namespace in other branches
  1. 8 core/modules/workspaces/src/Negotiator/SessionWorkspaceNegotiator.php \Drupal\workspaces\Negotiator\SessionWorkspaceNegotiator::getActiveWorkspace()

Gets the negotiated workspace, if any.

Note that it is the responsibility of each implementation to check whether the negotiated workspace actually exists in the storage.

Parameters

\Symfony\Component\HttpFoundation\Request $request: The HTTP request.

Return value

\Drupal\workspaces\WorkspaceInterface|null The negotiated workspace or NULL if the negotiator could not determine a valid workspace.

Overrides WorkspaceNegotiatorInterface::getActiveWorkspace

1 method overrides SessionWorkspaceNegotiator::getActiveWorkspace()
QueryParameterWorkspaceNegotiator::getActiveWorkspace in core/modules/workspaces/src/Negotiator/QueryParameterWorkspaceNegotiator.php
Gets the negotiated workspace, if any.

File

core/modules/workspaces/src/Negotiator/SessionWorkspaceNegotiator.php, line 64

Class

SessionWorkspaceNegotiator
Defines the session workspace negotiator.

Namespace

Drupal\workspaces\Negotiator

Code

public function getActiveWorkspace(Request $request) {
  $workspace_id = $this->session
    ->get('active_workspace_id');
  if ($workspace_id && ($workspace = $this->workspaceStorage
    ->load($workspace_id))) {
    return $workspace;
  }
  return NULL;
}