X-Git-Url: http://www.aleph1.co.uk/gitweb/?p=yaffs-website;a=blobdiff_plain;f=web%2Fcore%2Fmodules%2Fmigrate%2Fsrc%2FPlugin%2Fmigrate%2Fdestination%2FEntityFieldStorageConfig.php;fp=web%2Fcore%2Fmodules%2Fmigrate%2Fsrc%2FPlugin%2Fmigrate%2Fdestination%2FEntityFieldStorageConfig.php;h=0b9714a79b11e1de973ee63d3253456f185ec090;hp=80ea9f628b8b3cdb253b22d36f5decb5e333965e;hb=0bf8d09d2542548982e81a441b1f16e75873a04f;hpb=74df008bdbb3a11eeea356744f39b802369bda3c diff --git a/web/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php b/web/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php index 80ea9f628..0b9714a79 100644 --- a/web/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php +++ b/web/core/modules/migrate/src/Plugin/migrate/destination/EntityFieldStorageConfig.php @@ -58,6 +58,10 @@ class EntityFieldStorageConfig extends EntityConfigBase { public function getIds() { $ids['entity_type']['type'] = 'string'; $ids['field_name']['type'] = 'string'; + // @todo: Remove conditional. https://www.drupal.org/node/3004574 + if ($this->isTranslationDestination()) { + $ids['langcode']['type'] = 'string'; + } return $ids; } @@ -65,8 +69,18 @@ class EntityFieldStorageConfig extends EntityConfigBase { * {@inheritdoc} */ public function rollback(array $destination_identifier) { - $destination_identifier = implode('.', $destination_identifier); - parent::rollback([$destination_identifier]); + if ($this->isTranslationDestination()) { + $language = $destination_identifier['langcode']; + unset($destination_identifier['langcode']); + $destination_identifier = [ + implode('.', $destination_identifier), + 'langcode' => $language, + ]; + } + else { + $destination_identifier = [implode('.', $destination_identifier)]; + } + parent::rollback($destination_identifier); } }