interface ConfigEntityInterface
Same name in other branches
- 8.9.x core/lib/Drupal/Core/Config/Entity/ConfigEntityInterface.php \Drupal\Core\Config\Entity\ConfigEntityInterface
- 10 core/lib/Drupal/Core/Config/Entity/ConfigEntityInterface.php \Drupal\Core\Config\Entity\ConfigEntityInterface
- 11.x core/lib/Drupal/Core/Config/Entity/ConfigEntityInterface.php \Drupal\Core\Config\Entity\ConfigEntityInterface
Defines a common interface for configuration entities.
Hierarchy
- interface \Drupal\Core\Config\Entity\ThirdPartySettingsInterface; 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\Config\Entity\ConfigEntityInterface extends \Drupal\Core\Entity\EntityInterface \Drupal\Core\Config\Entity\ThirdPartySettingsInterface \Drupal\Core\Entity\SynchronizableInterface
Expanded class hierarchy of ConfigEntityInterface
All classes that implement ConfigEntityInterface
Related topics
64 files declare their use of ConfigEntityInterface
- Action.php in core/
modules/ system/ src/ Entity/ Action.php - ActionConfigEntityInterface.php in core/
modules/ system/ src/ ActionConfigEntityInterface.php - AdminPathConfigEntityConverter.php in core/
lib/ Drupal/ Core/ ParamConverter/ AdminPathConfigEntityConverter.php - AssertConfigEntityImportTrait.php in core/
modules/ config/ tests/ src/ Traits/ AssertConfigEntityImportTrait.php - Block.php in core/
modules/ block/ src/ Entity/ Block.php
File
-
core/
lib/ Drupal/ Core/ Config/ Entity/ ConfigEntityInterface.php, line 14
Namespace
Drupal\Core\Config\EntityView source
interface ConfigEntityInterface extends EntityInterface, ThirdPartySettingsInterface, SynchronizableInterface {
/**
* Enables the configuration entity.
*
* @return $this
*/
public function enable();
/**
* Disables the configuration entity.
*
* @return $this
*/
public function disable();
/**
* Sets the status of the configuration entity.
*
* @param bool $status
* The status of the configuration entity.
*
* @return $this
*/
public function setStatus($status);
/**
* Returns whether the configuration entity is enabled.
*
* Status implementations for configuration entities should follow these
* general rules:
* - Status does not affect the loading of entities. I.e. Disabling
* configuration entities should only have UI/access implications.
* - It should only take effect when a 'status' key is explicitly declared
* in the entity_keys info of a configuration entity's annotation data.
* - Each entity implementation (entity/controller) is responsible for
* checking and managing the status.
*
* @return bool
* Whether the entity is enabled or not.
*/
public function status();
/**
* Returns whether this entity is being changed during the uninstall process.
*
* 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
* configuration change (whether related to this configuration entity, another
* configuration entity, or non-entity configuration) or your code would
* result in a change to this entity itself, you need to check and see if this
* entity change is part of an uninstall process, and skip executing your code
* if that is the case.
*
* For example, \Drupal\language\Entity\ConfigurableLanguage::preDelete()
* prevents the API from deleting the default language. However during an
* uninstall of the language module it is expected that the default language
* should be deleted.
*
* @return bool
*/
public function isUninstalling();
/**
* Returns the value of a property.
*
* @param string $property_name
* The name of the property that should be returned.
*
* @return mixed
* The property if it exists, or NULL otherwise.
*/
public function get($property_name);
/**
* Sets the value of a property.
*
* @param string $property_name
* The name of the property that should be set.
* @param mixed $value
* The value the property should be set to.
*
* @return $this
*/
public function set($property_name, $value);
/**
* Calculates dependencies and stores them in the dependency property.
*
* @return $this
*
* @see \Drupal\Core\Config\Entity\ConfigDependencyManager
*/
public function calculateDependencies();
/**
* Informs the entity that entities it depends on will be deleted.
*
* This method allows configuration entities to remove dependencies instead
* of being deleted themselves. Configuration entities can use this method to
* avoid being unnecessarily deleted during an extension uninstallation.
* For example, entity displays remove references to widgets and formatters if
* the plugin that supplies them depends on a module that is being
* uninstalled.
*
* If this method returns TRUE then the entity needs to be re-saved by the
* caller for the changes to take effect. Implementations should not save the
* entity.
*
* @param array $dependencies
* An array of dependencies that will be deleted keyed by dependency type.
* Dependency types are, for example, entity, module and theme.
*
* @return bool
* TRUE if the entity has been changed as a result, FALSE if not.
*
* @see \Drupal\Core\Config\Entity\ConfigDependencyManager
* @see \Drupal\Core\Config\ConfigEntityBase::preDelete()
* @see \Drupal\Core\Config\ConfigManager::uninstall()
* @see \Drupal\Core\Entity\EntityDisplayBase::onDependencyRemoval()
*/
public function onDependencyRemoval(array $dependencies);
/**
* Gets the configuration dependencies.
*
* @return array
* An array of dependencies, keyed by $type.
*
* @see \Drupal\Core\Config\Entity\ConfigDependencyManager
*/
public function getDependencies();
/**
* Checks whether this entity is installable.
*
* For example, a default view might not be installable if the base table
* doesn't exist.
*
* @return bool
* TRUE if the entity is installable, FALSE otherwise.
*/
public function isInstallable();
/**
* Sets that the data should be trusted.
*
* If the data is trusted then dependencies will not be calculated on save and
* schema will not be used to cast the values. Generally this is only used
* during module and theme installation. Once the config entity has been saved
* the data will no longer be marked as trusted. This is an optimization for
* creation of configuration during installation.
*
* @return $this
*
* @see \Drupal\Core\Config\ConfigInstaller::createConfiguration()
*/
public function trustData();
/**
* Gets whether on not the data is trusted.
*
* @return bool
* TRUE if the configuration data is trusted, FALSE if not.
*/
public function hasTrustedData();
}
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 |
ConfigEntityInterface::calculateDependencies | public | function | Calculates dependencies and stores them in the dependency property. | 2 |
ConfigEntityInterface::disable | public | function | Disables the configuration entity. | 2 |
ConfigEntityInterface::enable | public | function | Enables the configuration entity. | 2 |
ConfigEntityInterface::get | public | function | Returns the value of a property. | 2 |
ConfigEntityInterface::getDependencies | public | function | Gets the configuration dependencies. | 2 |
ConfigEntityInterface::hasTrustedData | public | function | Gets whether on not the data is trusted. | 2 |
ConfigEntityInterface::isInstallable | public | function | Checks whether this entity is installable. | 2 |
ConfigEntityInterface::isUninstalling | public | function | Returns whether this entity is being changed during the uninstall process. | 2 |
ConfigEntityInterface::onDependencyRemoval | public | function | Informs the entity that entities it depends on will be deleted. | 2 |
ConfigEntityInterface::set | public | function | Sets the value of a property. | 2 |
ConfigEntityInterface::setStatus | public | function | Sets the status of the configuration entity. | 2 |
ConfigEntityInterface::status | public | function | Returns whether the configuration entity is enabled. | 2 |
ConfigEntityInterface::trustData | public | function | Sets that the data should be trusted. | 2 |
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 |
ThirdPartySettingsInterface::getThirdPartyProviders | public | function | Gets the list of third parties that store information. | 5 |
ThirdPartySettingsInterface::getThirdPartySetting | public | function | Gets the value of a third-party setting. | 5 |
ThirdPartySettingsInterface::getThirdPartySettings | public | function | Gets all third-party settings of a given module. | 5 |
ThirdPartySettingsInterface::setThirdPartySetting | public | function | Sets the value of a third-party setting. | 5 |
ThirdPartySettingsInterface::unsetThirdPartySetting | public | function | Unsets a third-party setting. | 5 |
Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.