interface SynchronizableInterface
Same name in other branches
- 9 core/lib/Drupal/Core/Entity/SynchronizableInterface.php \Drupal\Core\Entity\SynchronizableInterface
- 8.9.x core/lib/Drupal/Core/Entity/SynchronizableInterface.php \Drupal\Core\Entity\SynchronizableInterface
- 10 core/lib/Drupal/Core/Entity/SynchronizableInterface.php \Drupal\Core\Entity\SynchronizableInterface
Defines methods for an entity that supports synchronization.
Hierarchy
- interface \Drupal\Core\Access\AccessibleInterface; interface \Drupal\Core\Cache\CacheableDependencyInterface; interface \Drupal\Core\Cache\RefinableCacheableDependencyInterface extends \Drupal\Core\Cache\CacheableDependencyInterface
- interface \Drupal\Core\Entity\EntityInterface extends \Drupal\Core\Access\AccessibleInterface \Drupal\Core\Cache\CacheableDependencyInterface \Drupal\Core\Cache\RefinableCacheableDependencyInterface
- interface \Drupal\Core\Entity\SynchronizableInterface extends \Drupal\Core\Entity\EntityInterface
- interface \Drupal\Core\Entity\EntityInterface extends \Drupal\Core\Access\AccessibleInterface \Drupal\Core\Cache\CacheableDependencyInterface \Drupal\Core\Cache\RefinableCacheableDependencyInterface
Expanded class hierarchy of SynchronizableInterface
All classes that implement SynchronizableInterface
4 files declare their use of SynchronizableInterface
- ChangedItem.php in core/
lib/ Drupal/ Core/ Field/ Plugin/ Field/ FieldType/ ChangedItem.php - ConfigEntityInterface.php in core/
lib/ Drupal/ Core/ Config/ Entity/ ConfigEntityInterface.php - InlineBlockEntityOperations.php in core/
modules/ layout_builder/ src/ InlineBlockEntityOperations.php - InlineBlockEntityOperationsTest.php in core/
modules/ layout_builder/ tests/ src/ Unit/ InlineBlockEntityOperationsTest.php
File
-
core/
lib/ Drupal/ Core/ Entity/ SynchronizableInterface.php, line 8
Namespace
Drupal\Core\EntityView source
interface SynchronizableInterface extends EntityInterface {
/**
* Sets the status of the synchronization flag.
*
* @param bool $status
* The status of the synchronization flag.
*
* @return $this
*/
public function setSyncing($status);
/**
* Returns whether this entity is being changed as part of a synchronization.
*
* If you are writing code that responds to a change in this entity (insert,
* update, delete, presave, etc.), and your code would result in a change to
* this entity itself, a configuration change (whether related to this entity,
* another entity, or non-entity configuration), you need to check and see if
* this entity change is part of a synchronization process, and skip executing
* your code if that is the case.
*
* For example, \Drupal\node\Entity\NodeType::postSave() adds the default body
* field to newly created node type configuration entities, which is a
* configuration change. You would not want this code to run during an import,
* because imported entities were already given the body field when they were
* originally created, and the imported configuration includes all of their
* currently-configured fields. On the other hand,
* \Drupal\field\Entity\FieldStorageConfig::preSave() and the methods it calls
* make sure that the storage tables are created or updated for the field
* storage configuration entity, which is not a configuration change, and it
* must be done whether due to an import or not. So, the first method should
* check $entity->isSyncing() and skip executing if it returns TRUE, and the
* second should not perform this check.
*
* @return bool
* TRUE if the configuration entity is being created, updated, or deleted
* through a synchronization process.
*/
public function isSyncing();
}
Members
Title Sort descending | Modifiers | Object type | Summary | Overrides |
---|---|---|---|---|
AccessibleInterface::access | public | function | Checks data value access. | 9 |
CacheableDependencyInterface::getCacheContexts | public | function | The cache contexts associated with this object. | 34 |
CacheableDependencyInterface::getCacheMaxAge | public | function | The maximum age for which this object may be cached. | 34 |
CacheableDependencyInterface::getCacheTags | public | function | The cache tags associated with this object. | 27 |
EntityInterface::bundle | public | function | Gets the bundle of the entity. | 2 |
EntityInterface::create | public static | function | Constructs a new entity object, without permanently saving it. | 2 |
EntityInterface::createDuplicate | public | function | Creates a duplicate of the entity. | 2 |
EntityInterface::delete | public | function | Deletes an entity permanently. | 2 |
EntityInterface::enforceIsNew | public | function | Enforces an entity to be new. | 2 |
EntityInterface::getCacheTagsToInvalidate | public | function | Returns the cache tags that should be used to invalidate caches. | 2 |
EntityInterface::getConfigDependencyKey | public | function | Gets the key that is used to store configuration dependencies. | 2 |
EntityInterface::getConfigDependencyName | public | function | Gets the configuration dependency name. | 2 |
EntityInterface::getConfigTarget | public | function | Gets the configuration target identifier for the entity. | 2 |
EntityInterface::getEntityType | public | function | Gets the entity type definition. | 2 |
EntityInterface::getEntityTypeId | public | function | Gets the ID of the type of the entity. | 2 |
EntityInterface::getOriginalId | public | function | Gets the original ID. | 2 |
EntityInterface::getTypedData | public | function | Gets a typed data object for this entity object. | 2 |
EntityInterface::hasLinkTemplate | public | function | Indicates if a link template exists for a given key. | 2 |
EntityInterface::id | public | function | Gets the identifier. | 2 |
EntityInterface::isNew | public | function | Determines whether the entity is new. | 2 |
EntityInterface::label | public | function | Gets the label of the entity. | 2 |
EntityInterface::language | public | function | Gets the language of the entity. | 2 |
EntityInterface::load | public static | function | Loads an entity. | 2 |
EntityInterface::loadMultiple | public static | function | Loads one or more entities. | 2 |
EntityInterface::postCreate | public | function | Acts on a created entity before hooks are invoked. | 2 |
EntityInterface::postDelete | public static | function | Acts on deleted entities before the delete hook is invoked. | 2 |
EntityInterface::postLoad | public static | function | Acts on loaded entities. | 3 |
EntityInterface::postSave | public | function | Acts on a saved entity before the insert or update hook is invoked. | 2 |
EntityInterface::preCreate | public static | function | Changes the values of an entity before it is created. | 2 |
EntityInterface::preDelete | public static | function | Acts on entities before they are deleted and before hooks are invoked. | 2 |
EntityInterface::preSave | public | function | Acts on an entity before the presave hook is invoked. | 2 |
EntityInterface::referencedEntities | public | function | Gets a list of entities referenced by this entity. | 2 |
EntityInterface::save | public | function | Saves an entity permanently. | 2 |
EntityInterface::setOriginalId | public | function | Sets the original ID. | 2 |
EntityInterface::toArray | public | function | Gets an array of all property values. | 3 |
EntityInterface::toLink | public | function | Generates the HTML for a link to this entity. | 2 |
EntityInterface::toUrl | public | function | Gets the URL object for the entity. | 2 |
EntityInterface::uriRelationships | public | function | Gets a list of URI relationships supported by this entity. | 2 |
EntityInterface::uuid | public | function | Gets the entity UUID (Universally Unique Identifier). | 2 |
RefinableCacheableDependencyInterface::addCacheableDependency | public | function | Adds a dependency on an object: merges its cacheability metadata. | 1 |
RefinableCacheableDependencyInterface::addCacheContexts | public | function | Adds cache contexts. | 1 |
RefinableCacheableDependencyInterface::addCacheTags | public | function | Adds cache tags. | 1 |
RefinableCacheableDependencyInterface::mergeCacheMaxAge | public | function | Merges the maximum age (in seconds) with the existing maximum age. | 1 |
SynchronizableInterface::isSyncing | public | function | Returns whether this entity is being changed as part of a synchronization. | 1 |
SynchronizableInterface::setSyncing | public | function | Sets the status of the synchronization flag. | 1 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.