function gathercontent_update_8505 in GatherContent 8.5
Update gc_id to gc_file_id field on file entity.
File
- ./
gathercontent.install, line 296 - Install and uninstall script for GatherContent module.
Code
function gathercontent_update_8505() {
/** @var \Drupal\Core\Entity\EntityFieldManager $entityFieldManager */
$entityFieldManager = \Drupal::service('entity_field.manager');
/** @var \Drupal\Core\Field\FieldStorageDefinitionListener $fieldStorageDefinitionListener */
$fieldStorageDefinitionListener = \Drupal::service('field_storage_definition.listener');
$definition = $entityFieldManager
->getFieldStorageDefinitions('file')['gc_file_id'];
if (!empty($definition)) {
$fieldStorageDefinitionListener
->onFieldStorageDefinitionCreate($definition);
}
/** @var \Drupal\Core\Database\Connection $connection */
$connection = \Drupal::service('database');
$connection
->query('UPDATE file_managed SET gc_file_id = gc_id')
->execute();
$updateManager = \Drupal::entityDefinitionUpdateManager();
$entityFieldStorage = $updateManager
->getFieldStorageDefinition('gc_id', 'file');
if (!empty($entityFieldStorage)) {
$updateManager
->uninstallFieldStorageDefinition($entityFieldStorage);
}
}