Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. EntityContext.php

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 extends \Drupal\Component\Plugin\Context\Context implements \Drupal\Core\Plugin\Context\ContextInterface uses \Drupal\Core\TypedData\TypedDataTrait, \Drupal\Core\DependencyInjection\DependencySerializationTrait
      • class \Drupal\Core\Plugin\Context\EntityContext extends \Drupal\Core\Plugin\Context\Context

Expanded class hierarchy of EntityContext

7 files declare their use of EntityContext
CurrentUserContext.php in core/modules/user/src/ContextProvider/CurrentUserContext.php
DefaultsSectionStorage.php in core/modules/layout_builder/src/Plugin/SectionStorage/DefaultsSectionStorage.php
LayoutBuilderEntityViewDisplay.php in core/modules/layout_builder/src/Entity/LayoutBuilderEntityViewDisplay.php
LayoutEntityHelperTrait.php in core/modules/layout_builder/src/LayoutEntityHelperTrait.php
NodeRouteContext.php in core/modules/node/src/ContextProvider/NodeRouteContext.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

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
DependencySerializationTrait::$_serviceIds protected property
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

API Navigation

  • Drupal Core 11.1.x
  • Topics
  • Classes
  • Functions
  • Constants
  • Globals
  • Files
  • Namespaces
  • Deprecated
  • Services
RSS feed
Powered by Drupal