You are here

class EntityContext in Drupal 8

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Core/Plugin/Context/EntityContext.php \Drupal\Core\Plugin\Context\EntityContext

Class to provide a specific entity context.

Hierarchy

Expanded class hierarchy of EntityContext

17 files declare their use of EntityContext
ConditionTestDualUserTest.php in core/tests/Drupal/KernelTests/Core/Plugin/Condition/ConditionTestDualUserTest.php
ContextDefinitionTest.php in core/tests/Drupal/KernelTests/Core/Plugin/ContextDefinitionTest.php
ContextHandlerTest.php in core/tests/Drupal/KernelTests/Core/Plugin/ContextHandlerTest.php
CurrentUserContext.php in core/modules/user/src/ContextProvider/CurrentUserContext.php
DefaultsSectionStorage.php in core/modules/layout_builder/src/Plugin/SectionStorage/DefaultsSectionStorage.php

... See full list

File

core/lib/Drupal/Core/Plugin/Context/EntityContext.php, line 11

Namespace

Drupal\Core\Plugin\Context
View source
class EntityContext extends Context {

  /**
   * Gets a context from an entity type ID.
   *
   * @param string $entity_type_id
   *   Entity type ID from which a definition will be derived.
   * @param string $label
   *   (optional) The label of the context.
   *
   * @return static
   */
  public static function fromEntityTypeId($entity_type_id, $label = NULL) {
    $entity_type = \Drupal::entityTypeManager()
      ->getDefinition($entity_type_id);
    return static::fromEntityType($entity_type, $label);
  }

  /**
   * Gets a context from an entity type.
   *
   * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type
   *   Entity type from which a definition will be derived.
   * @param string $label
   *   (optional) The label of the context.
   *
   * @return static
   */
  public static function fromEntityType(EntityTypeInterface $entity_type, $label = NULL) {
    $definition = EntityContextDefinition::fromEntityType($entity_type);
    if ($label) {
      $definition
        ->setLabel($label);
    }
    return new static($definition);
  }

  /**
   * Gets a context object from an entity.
   *
   * @param \Drupal\Core\Entity\EntityInterface $entity
   *   Entity that provides a context.
   * @param string $label
   *   (optional) The label of the context.
   *
   * @return static
   */
  public static function fromEntity(EntityInterface $entity, $label = NULL) {
    $context = static::fromEntityType($entity
      ->getEntityType(), $label);
    $context
      ->setContextValue($entity);
    return $context;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
Context::$cacheabilityMetadata protected property The cacheability metadata.
Context::$contextData protected property The data associated with the context.
Context::$contextDefinition protected property The definition to which a context must conform. Overrides Context::$contextDefinition
Context::$contextValue protected property The value of the context.
Context::addCacheableDependency public function Adds a dependency on an object: merges its cacheability metadata. Overrides ContextInterface::addCacheableDependency
Context::createFromContext public static function Creates a new context with a different value. Overrides ContextInterface::createFromContext
Context::getCacheContexts public function The cache contexts associated with this object. Overrides CacheableDependencyInterface::getCacheContexts
Context::getCacheMaxAge public function The maximum age for which this object may be cached. Overrides CacheableDependencyInterface::getCacheMaxAge
Context::getCacheTags public function The cache tags associated with this object. Overrides CacheableDependencyInterface::getCacheTags
Context::getConstraints public function Gets a list of validation constraints. Overrides Context::getConstraints
Context::getContextData public function Gets the context value as typed data object. Overrides ContextInterface::getContextData
Context::getContextDefinition public function Gets the provided definition that the context must conform to. Overrides Context::getContextDefinition
Context::getContextValue public function Gets the context value. Overrides Context::getContextValue
Context::hasContextValue public function Returns whether the context has a value. Overrides Context::hasContextValue
Context::setContextValue protected function Sets the context value.
Context::validate public function Validates the set context value. Overrides Context::validate
Context::__construct public function Create a context object. Overrides Context::__construct
DependencySerializationTrait::$_entityStorages protected property An array of entity type IDs keyed by the property name of their storages.
DependencySerializationTrait::$_serviceIds protected property An array of service IDs keyed by property name used for serialization.
DependencySerializationTrait::__sleep public function 1
DependencySerializationTrait::__wakeup public function 2
EntityContext::fromEntity public static function Gets a context object from an entity.
EntityContext::fromEntityType public static function Gets a context from an entity type.
EntityContext::fromEntityTypeId public static function Gets a context from an entity type ID.
TypedDataTrait::$typedDataManager protected property The typed data manager used for creating the data types.
TypedDataTrait::getTypedDataManager public function Gets the typed data manager. 2
TypedDataTrait::setTypedDataManager public function Sets the typed data manager. 2