class EntityContext
Class to provide a specific entity context.
Hierarchy
- class \Drupal\Component\Plugin\Context\Context implements \Drupal\Component\Plugin\Context\ContextInterface- class \Drupal\Core\Plugin\Context\Context implements \Drupal\Core\Plugin\Context\ContextInterface uses \Drupal\Core\TypedData\TypedDataTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait extends \Drupal\Component\Plugin\Context\Context- class \Drupal\Core\Plugin\Context\EntityContext extends \Drupal\Core\Plugin\Context\Context
 
 
- class \Drupal\Core\Plugin\Context\Context implements \Drupal\Core\Plugin\Context\ContextInterface uses \Drupal\Core\TypedData\TypedDataTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait extends \Drupal\Component\Plugin\Context\Context
Expanded class hierarchy of EntityContext
18 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 
File
- 
              core/lib/ Drupal/ Core/ Plugin/ Context/ EntityContext.php, line 11 
Namespace
Drupal\Core\Plugin\ContextView 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
| Title Sort descending | Modifiers | Object type | Summary | Overriden Title | 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 | 2 | ||
| DependencySerializationTrait::__wakeup | public | function | #[\ReturnTypeWillChange] | 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 | 
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.
