MultiversionStorageSchemaConverterFactory.php in Multiversion 8.2
File
src/Entity/Storage/Sql/MultiversionStorageSchemaConverterFactory.php
View source
<?php
namespace Drupal\multiversion\Entity\Storage\Sql;
use Drupal\Core\Database\Connection;
use Drupal\Core\Entity\EntityDefinitionUpdateManagerInterface;
use Drupal\Core\Entity\EntityFieldManagerInterface;
use Drupal\Core\Entity\EntityLastInstalledSchemaRepositoryInterface;
use Drupal\Core\Entity\EntityTypeManagerInterface;
use Drupal\Core\KeyValueStore\KeyValueFactoryInterface;
use Drupal\multiversion\MultiversionManagerInterface;
use Drupal\workspaces\WorkspaceManagerInterface;
class MultiversionStorageSchemaConverterFactory implements MultiversionStorageSchemaConverterFactoryInterface {
protected $entityTypeManager;
protected $entityDefinitionUpdateManager;
protected $lastInstalledSchemaRepository;
protected $keyValueFactory;
protected $database;
protected $entityFieldManager;
protected $multiversionManager;
protected $workspaceManager;
public function __construct(EntityTypeManagerInterface $entity_type_manager, EntityDefinitionUpdateManagerInterface $entity_definition_update_manager, EntityLastInstalledSchemaRepositoryInterface $last_installed_schema_repository, KeyValueFactoryInterface $key_value_factory, Connection $database, EntityFieldManagerInterface $entity_field_manager, MultiversionManagerInterface $multiversion_manager, WorkspaceManagerInterface $workspace_manager) {
$this->entityTypeManager = $entity_type_manager;
$this->entityDefinitionUpdateManager = $entity_definition_update_manager;
$this->lastInstalledSchemaRepository = $last_installed_schema_repository;
$this->keyValueFactory = $key_value_factory;
$this->database = $database;
$this->entityFieldManager = $entity_field_manager;
$this->multiversionManager = $multiversion_manager;
$this->workspaceManager = $workspace_manager;
}
public function getStorageSchemaConverter($entity_type_id) {
return new MultiversionStorageSchemaConverter($entity_type_id, $this->entityTypeManager, $this->entityDefinitionUpdateManager, $this->lastInstalledSchemaRepository, $this->keyValueFactory
->get('entity.storage_schema.sql'), $this->database, $this->entityFieldManager, $this->multiversionManager, $this->workspaceManager);
}
}