/**
  * Constructs a ContentEntityDatabaseStorage object.
  *
  * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type
  *   The entity type definition.
  * @param \Drupal\Core\Database\Connection $database
  *   The database connection to be used.
  * @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager
  *   The entity manager.
  * @param \Drupal\Core\Cache\CacheBackendInterface $cache_backend
  *   The cache backend to be used.
  */
 public function __construct(EntityTypeInterface $entity_type, Connection $database, EntityManagerInterface $entity_manager, CacheBackendInterface $cache)
 {
     parent::__construct($entity_type);
     $this->database = $database;
     $this->entityManager = $entity_manager;
     $this->cacheBackend = $cache;
     // @todo Remove table names from the entity type definition in
     //   https://drupal.org/node/2232465
     $this->baseTable = $this->entityType->getBaseTable() ?: $this->entityTypeId;
     $revisionable = $this->entityType->isRevisionable();
     if ($revisionable) {
         $this->revisionKey = $this->entityType->getKey('revision') ?: 'revision_id';
         $this->revisionTable = $this->entityType->getRevisionTable() ?: $this->entityTypeId . '_revision';
     }
     // @todo Remove the data table check once all entity types are using
     // entity query and we have a views data controller. See:
     // - https://drupal.org/node/2068325
     // - https://drupal.org/node/1740492
     $translatable = $this->entityType->isTranslatable() && $this->entityType->getDataTable();
     if ($translatable) {
         $this->dataTable = $this->entityType->getDataTable() ?: $this->entityTypeId . '_field_data';
         $this->langcodeKey = $this->entityType->getKey('langcode') ?: 'langcode';
         $this->defaultLangcodeKey = $this->entityType->getKey('default_langcode') ?: 'default_langcode';
     }
     if ($revisionable && $translatable) {
         $this->revisionDataTable = $this->entityType->getRevisionDataTable() ?: $this->entityTypeId . '_field_revision';
     }
 }
Esempio n. 2
0
 /**
  * Constructs a SqlContentEntityStorage object.
  *
  * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type
  *   The entity type definition.
  * @param \Drupal\Core\Database\Connection $database
  *   The database connection to be used.
  * @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager
  *   The entity manager.
  * @param \Drupal\Core\Cache\CacheBackendInterface $cache_backend
  *   The cache backend to be used.
  * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager
  *   The language manager.
  */
 public function __construct(EntityTypeInterface $entity_type, Connection $database, EntityManagerInterface $entity_manager, CacheBackendInterface $cache, LanguageManagerInterface $language_manager)
 {
     parent::__construct($entity_type, $entity_manager, $cache);
     $this->database = $database;
     $this->languageManager = $language_manager;
     $this->initTableLayout();
 }
 /**
  * Initialize the storage backend.
  *
  * @param \Drupal\Core\Entity\EntityTypeInterface $entity_type
  *    The entity type this storage is about.
  * @param \Drupal\rdf_entity\Database\Driver\sparql\Connection $sparql
  *    The connection object.
  * @param \Drupal\Core\Entity\EntityManagerInterface $entity_manager
  *    The entity manager service.
  * @param \Drupal\Core\Entity\EntityTypeManagerInterface $entity_type_manager
  *    The entity type manager service.
  * @param \Drupal\Core\Cache\CacheBackendInterface $cache
  *    The cache backend service.
  * @param \Drupal\Core\Language\LanguageManagerInterface $language_manager
  *    The language manager service.
  * @param \Drupal\Core\Extension\ModuleHandlerInterface $module_handler
  *    The module handler service.
  * @param \Drupal\rdf_entity\RdfGraphHandler $rdf_graph_handler
  *    The rdf graph helper service.
  * @param \Drupal\rdf_entity\RdfMappingHandler $rdf_mapping_handler
  *    The rdf mapping helper service.
  */
 public function __construct(EntityTypeInterface $entity_type, Connection $sparql, EntityManagerInterface $entity_manager, EntityTypeManagerInterface $entity_type_manager, CacheBackendInterface $cache, LanguageManagerInterface $language_manager, ModuleHandlerInterface $module_handler, RdfGraphHandler $rdf_graph_handler, RdfMappingHandler $rdf_mapping_handler)
 {
     parent::__construct($entity_type, $entity_manager, $cache);
     $this->sparql = $sparql;
     $this->languageManager = $language_manager;
     $this->entityTypeManager = $entity_type_manager;
     $this->moduleHandler = $module_handler;
     $this->graphHandler = $rdf_graph_handler;
     $this->mappingHandler = $rdf_mapping_handler;
 }