diff --git a/core/core.services.yml b/core/core.services.yml index 1f8214b..c818c8a 100644 --- a/core/core.services.yml +++ b/core/core.services.yml @@ -522,9 +522,6 @@ services: # @todo Remove this tag in https://www.drupal.org/node/2549143. tags: - { name: plugin_manager_cache_clear } - entity.revisionable_schema_converter: - class: Drupal\Core\Entity\RevisionableSchemaConverter - arguments: ['@entity.last_installed_schema.repository', '@entity_type.manager', '@entity.definition_update_manager', '@entity_field.manager', '@database'] entity_type.manager: class: Drupal\Core\Entity\EntityTypeManager arguments: ['@container.namespaces', '@module_handler', '@cache.discovery', '@string_translation', '@class_resolver'] diff --git a/core/lib/Drupal/Core/Entity/RevisionableSchemaConverter.php b/core/lib/Drupal/Core/Entity/RevisionableSchemaConverter.php index ddd5e4c..cd7fe68 100644 --- a/core/lib/Drupal/Core/Entity/RevisionableSchemaConverter.php +++ b/core/lib/Drupal/Core/Entity/RevisionableSchemaConverter.php @@ -6,6 +6,12 @@ use Drupal\Core\Field\BaseFieldDefinition; use Drupal\Core\StringTranslation\TranslatableMarkup; +/** + * Convert an entity to be revisionable. + * + * @internal + * This class should only be used via core update hooks. + */ class RevisionableSchemaConverter implements RevisionableSchemaConverterInterface { /** diff --git a/core/modules/shortcut/shortcut.install b/core/modules/shortcut/shortcut.install index 450c4ea..dbed0f5 100644 --- a/core/modules/shortcut/shortcut.install +++ b/core/modules/shortcut/shortcut.install @@ -72,10 +72,21 @@ function shortcut_uninstall() { * Convert Shortcut entity schema. */ function shortcut_update_8001() { - \Drupal::service('entity.revisionable_schema_converter')->convertSchema('shortcut', [ + $schema_converter = new \Drupal\Core\Entity\RevisionableSchemaConverter( + \Drupal::service('entity.last_installed_schema.repository'), + \Drupal::service('entity_type.manager'), + \Drupal::service('entity.definition_update_manager'), + \Drupal::service('entity_field.manager'), + \Drupal::service('database') + ); + $schema_converter->convertSchema('shortcut', [ 'revision' => 'revision_id', 'revision_table' => 'shortcut_revision', 'revision_data_table' => 'shortcut_field_revision', + 'revision_created' => 'revision_created', + 'revision_user' => 'revision_user', + 'revision_log_message' => 'revision_log_message', + 'langcode' => 'langcode', ]); } @@ -84,5 +95,12 @@ function shortcut_update_8001() { */ function shortcut_update_8002(&$sandbox) { $entity_type = \Drupal::entityDefinitionUpdateManager()->getEntityType('shortcut'); - \Drupal::service('entity.revisionable_schema_converter')->copyData($entity_type, $sandbox); + $schema_converter = new \Drupal\Core\Entity\RevisionableSchemaConverter( + \Drupal::service('entity.last_installed_schema.repository'), + \Drupal::service('entity_type.manager'), + \Drupal::service('entity.definition_update_manager'), + \Drupal::service('entity_field.manager'), + \Drupal::service('database') + ); + $schema_converter->copyData($entity_type, $sandbox); }