You are here

public function EntityRepositoryInterface::getActive in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Entity/EntityRepositoryInterface.php \Drupal\Core\Entity\EntityRepositoryInterface::getActive()

Retrieves the active entity variant matching the specified context.

If an entity type is revisionable and/or translatable, which entity variant should be handled depends on the context in which the manipulation happens. Based on the specified contextual information, revision and translation negotiation needs to be performed to return the active variant, that is the most up-to-date entity variant in the context scope. This may or may not be an entity variant intended for unprivileged user consumption, in fact it might be a work in progress containing yet to be published information. The active variant should always be retrieved when editing an entity, both in form and in REST workflows, or previewing the related changes.

The negotiation process will not perform any access check, so it is the responsibility of the caller to verify that the user manipulating the entity variant is actually allowed to do so.

Parameters

string $entity_type_id: The entity type identifier.

int|string $entity_id: An entity identifier.

\Drupal\Core\Plugin\Context\ContextInterface[] $contexts: (optional) An associative array of objects representing the contexts the entity will be edited in keyed by fully qualified context ID. Defaults to the currently available contexts.

Return value

\Drupal\Core\Entity\EntityInterface|null An entity object variant or NULL if the entity does not exist.

2 methods override EntityRepositoryInterface::getActive()
EntityManager::getActive in core/lib/Drupal/Core/Entity/EntityManager.php
EntityRepository::getActive in core/lib/Drupal/Core/Entity/EntityRepository.php
Retrieves the active entity variant matching the specified context.

File

core/lib/Drupal/Core/Entity/EntityRepositoryInterface.php, line 103

Class

EntityRepositoryInterface
Provides an interface for an entity repository.

Namespace

Drupal\Core\Entity

Code

public function getActive($entity_type_id, $entity_id, array $contexts = NULL);