KeyValueEntityStorage
class KeyValueEntityStorage extends EntityStorageBase (View source)
Provides a key value backend for entities.
Traits
Wrapper methods for \Drupal\Core\StringTranslation\TranslationInterface.
Provides dependency injection friendly methods for serialization.
Constants
| MAX_ID_LENGTH |
Length limit of the entity ID. |
Properties
| protected TranslationInterface | $stringTranslation | The string translation service. |
from StringTranslationTrait |
| protected array | $_serviceIds | An array of service IDs keyed by property name used for serialization. |
from DependencySerializationTrait |
| protected array | $_entityStorages | An array of entity type IDs keyed by the property name of their storages. |
from DependencySerializationTrait |
| protected ModuleHandlerInterface | $moduleHandler | The module handler to invoke hooks on. |
from EntityHandlerBase |
| protected string | $entityTypeId | Entity type ID for this storage. |
from EntityStorageBase |
| protected EntityTypeInterface | $entityType | Information about the entity type. |
from EntityStorageBase |
| protected string | $idKey | Name of the entity's ID field in the entity database table. |
from EntityStorageBase |
| protected string | $uuidKey | Name of entity's UUID database table field, if it supports UUIDs. |
from EntityStorageBase |
| protected string | $langcodeKey | The name of the entity langcode property. |
from EntityStorageBase |
| protected UuidInterface | $uuidService | The UUID service. |
|
| protected string | $entityClass | Name of the entity class. |
from EntityStorageBase |
| protected MemoryCacheInterface | $memoryCache | The memory cache. |
from EntityStorageBase |
| protected string | $memoryCacheTag | The memory cache cache tag. |
from EntityStorageBase |
| protected KeyValueStoreInterface | $keyValueStore | The key value store. |
|
| protected LanguageManagerInterface | $languageManager | The language manager. |
Methods
Translates a string to the current language or to a given language.
Formats a string containing a count of items.
Returns the number of plurals supported by a given language.
Gets the string translation service.
Constructs a new KeyValueEntityStorage.
Builds the cache ID for the passed in entity ID.
Loads an unchanged entity from the database.
Gets entities from the static cache.
Constructs a new entity object, without permanently saving it.
Performs storage-specific creation of entities.
Loads one or more entities.
Performs storage-specific loading of entities.
Gathers entities from a 'preload' step.
Maps from storage records to entity objects.
Load entities by their property values.
Determines if the storage contains any data.
Gets an entity query instance.
Gets an aggregated query instance.
Gets the name of the service for the query for this entity storage.
Instantiates a new instance of this entity handler.
Load a specific entity revision.
Delete a specific entity revision.
Details
protected TranslatableMarkup
t(string $string, array $args = [], array $options = [])
Translates a string to the current language or to a given language.
See \Drupal\Core\StringTranslation\TranslatableMarkup::__construct() for important security information and usage guidelines.
In order for strings to be localized, make them available in one of the ways supported by the
protected
formatPlural($count, $singular, $plural, array $args = [], array $options = [])
Formats a string containing a count of items.
protected
getNumberOfPlurals($langcode = NULL)
Returns the number of plurals supported by a given language.
protected TranslationInterface
getStringTranslation()
Gets the string translation service.
$this
setStringTranslation(TranslationInterface $translation)
Sets the string translation service to use.
__sleep()
{@inheritdoc}
__wakeup()
{@inheritdoc}
protected ModuleHandlerInterface
moduleHandler()
Gets the module handler.
$this
setModuleHandler(ModuleHandlerInterface $module_handler)
Sets the module handler for this handler.
__construct(EntityTypeInterface $entity_type, KeyValueStoreInterface $key_value_store, UuidInterface $uuid_service, LanguageManagerInterface $language_manager, MemoryCacheInterface $memory_cache = NULL)
Constructs a new KeyValueEntityStorage.
string
getEntityTypeId()
Gets the entity type ID.
EntityTypeInterface
getEntityType()
Gets the entity type definition.
protected string
buildCacheId(int $id)
Builds the cache ID for the passed in entity ID.
EntityInterface|null
loadUnchanged(mixed $id)
Loads an unchanged entity from the database.
resetCache(array $ids = NULL)
Resets the internal, static entity cache.
protected EntityInterface[]
getFromStaticCache(array $ids)
Gets entities from the static cache.
protected
setStaticCache(array $entities)
Stores entities in the static entity cache.
protected
invokeHook(string $hook, EntityInterface $entity)
Invokes a hook on behalf of the entity.
EntityInterface
create(array $values = [])
Constructs a new entity object, without permanently saving it.
EntityInterface
doCreate(array $values = [])
Performs storage-specific creation of entities.
EntityInterface|null
load(mixed $id)
Loads one entity.
EntityInterface[]
loadMultiple(array $ids = NULL)
Loads one or more entities.
EntityInterface[]
doLoadMultiple(array $ids = NULL)
Performs storage-specific loading of entities.
Override this method to add custom functionality directly after loading. This is always called, while self::postLoad() is only called when there are actual results.
protected EntityInterface[]
preLoad(array $ids = NULL)
Gathers entities from a 'preload' step.
protected
postLoad(array $entities)
Attaches data to entities upon loading.
protected EntityInterface[]
mapFromStorageRecords(array $records)
Maps from storage records to entity objects.
protected bool
has(int|string $id, EntityInterface $entity)
Determines if this entity already exists in storage.
delete(array $entities)
Deletes permanently saved entities.
doDelete(EntityInterface[] $entities)
Performs storage-specific entity deletion.
SAVED_NEW
save(EntityInterface $entity)
Saves the entity permanently.
protected int|string
doPreSave(EntityInterface $entity)
Performs presave entity processing.
protected bool|int
doSave(int|string $id, EntityInterface $entity)
Performs storage-specific saving of the entity.
protected
doPostSave(EntityInterface $entity, bool $update)
Performs post save entity processing.
restore(EntityInterface $entity)
Restores a previously saved entity.
Note that the entity is assumed to be in a valid state for the storage, so the restore process does not invoke any hooks, nor does it perform any pre or post-save operations.
protected
buildPropertyQuery(QueryInterface $entity_query, array $values)
Builds an entity query.
EntityInterface[]
loadByProperties(array $values = [])
Load entities by their property values.
bool
hasData()
Determines if the storage contains any data.
QueryInterface
getQuery(string $conjunction = 'AND')
Gets an entity query instance.
QueryAggregateInterface
getAggregateQuery(string $conjunction = 'AND')
Gets an aggregated query instance.
protected string
getQueryServiceName()
Gets the name of the service for the query for this entity storage.
static EntityHandlerInterface
createInstance(ContainerInterface $container, EntityTypeInterface $entity_type)
Instantiates a new instance of this entity handler.
This is a factory method that returns a new instance of this object. The factory should pass any needed dependencies into the constructor of this object, but not the container itself. Every call to this method must return a new instance of this object; that is, it may not implement a singleton.
EntityInterface|null
loadRevision(int|string $revision_id)
Load a specific entity revision.
deleteRevision(int $revision_id)
Delete a specific entity revision.
A revision can only be deleted if it's not the currently active one.