interface RevisionableInterface
Same name in other branches
- 8.9.x core/lib/Drupal/Core/Entity/RevisionableInterface.php \Drupal\Core\Entity\RevisionableInterface
- 10 core/lib/Drupal/Core/Entity/RevisionableInterface.php \Drupal\Core\Entity\RevisionableInterface
- 11.x core/lib/Drupal/Core/Entity/RevisionableInterface.php \Drupal\Core\Entity\RevisionableInterface
Provides methods for an entity to support revisions.
Classes implementing this interface do not necessarily support revisions.
To detect whether an entity type supports revisions, call EntityTypeInterface::isRevisionable().
Many entity interfaces are composed of numerous other interfaces such as this one, which allow implementations to pick and choose which features to. support through stub implementations of various interface methods. This means that even if an entity class implements RevisionableInterface, it might only have a stub implementation and not a functional one.
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\RevisionableInterface 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 RevisionableInterface
All classes that implement RevisionableInterface
See also
\Drupal\Core\Entity\EntityTypeInterface::isRevisionable()
https://www.drupal.org/docs/8/api/entity-api/structure-of-an-entity-ann…
https://www.drupal.org/docs/8/api/entity-api/making-an-entity-revisiona…
Related topics
16 files declare their use of RevisionableInterface
- BulkForm.php in core/
modules/ views/ src/ Plugin/ views/ field/ BulkForm.php - EntityAccessChecker.php in core/
modules/ jsonapi/ src/ Access/ EntityAccessChecker.php - EntityOperations.php in core/
modules/ workspaces/ src/ EntityOperations.php - EntityResource.php in core/
modules/ jsonapi/ src/ Controller/ EntityResource.php - EntityUrlTest.php in core/
tests/ Drupal/ Tests/ Core/ Entity/ EntityUrlTest.php
File
-
core/
lib/ Drupal/ Core/ Entity/ RevisionableInterface.php, line 25
Namespace
Drupal\Core\EntityView source
interface RevisionableInterface extends EntityInterface {
/**
* Determines whether a new revision should be created on save.
*
* @return bool
* TRUE if a new revision should be created.
*
* @see \Drupal\Core\Entity\EntityInterface::setNewRevision()
*/
public function isNewRevision();
/**
* Enforces an entity to be saved as a new revision.
*
* @param bool $value
* (optional) Whether a new revision should be saved.
*
* @throws \LogicException
* Thrown if the entity does not support revisions.
*
* @see \Drupal\Core\Entity\EntityInterface::isNewRevision()
*/
public function setNewRevision($value = TRUE);
/**
* Gets the revision identifier of the entity.
*
* @return int|null|string
* The revision identifier of the entity, or NULL if the entity does not
* have a revision identifier.
*/
public function getRevisionId();
/**
* Gets the loaded Revision ID of the entity.
*
* @return int
* The loaded Revision identifier of the entity, or NULL if the entity
* does not have a revision identifier.
*/
public function getLoadedRevisionId();
/**
* Updates the loaded Revision ID with the revision ID.
*
* This method should not be used, it could unintentionally cause the original
* revision ID property value to be lost.
*
* @internal
*
* @return $this
*/
public function updateLoadedRevisionId();
/**
* Checks if this entity is the default revision.
*
* @param bool $new_value
* (optional) A Boolean to (re)set the isDefaultRevision flag.
*
* @return bool
* TRUE if the entity is the default revision, FALSE otherwise. If
* $new_value was passed, the previous value is returned.
*/
public function isDefaultRevision($new_value = NULL);
/**
* Checks whether the entity object was a default revision when it was saved.
*
* @return bool
* TRUE if the entity object was a revision, FALSE otherwise.
*/
public function wasDefaultRevision();
/**
* Checks if this entity is the latest revision.
*
* @return bool
* TRUE if the entity is the latest revision, FALSE otherwise.
*/
public function isLatestRevision();
/**
* Acts on a revision before it gets saved.
*
* @param EntityStorageInterface $storage
* The entity storage object.
* @param object $record
* The revision object.
*/
public function preSaveRevision(EntityStorageInterface $storage, \stdClass $record);
}
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 |
RevisionableInterface::getLoadedRevisionId | public | function | Gets the loaded Revision ID of the entity. | |
RevisionableInterface::getRevisionId | public | function | Gets the revision identifier of the entity. | |
RevisionableInterface::isDefaultRevision | public | function | Checks if this entity is the default revision. | |
RevisionableInterface::isLatestRevision | public | function | Checks if this entity is the latest revision. | |
RevisionableInterface::isNewRevision | public | function | Determines whether a new revision should be created on save. | |
RevisionableInterface::preSaveRevision | public | function | Acts on a revision before it gets saved. | |
RevisionableInterface::setNewRevision | public | function | Enforces an entity to be saved as a new revision. | |
RevisionableInterface::updateLoadedRevisionId | public | function | Updates the loaded Revision ID with the revision ID. | |
RevisionableInterface::wasDefaultRevision | public | function | Checks whether the entity object was a default revision when it was saved. |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.