protected function determineLanguageCodesForUpdate($initialLanguageCode, array $structFields, $existingLanguages)
{
$languageCodes = array_fill_keys($existingLanguages, true);
if ($initialLanguageCode !== null) {
$languageCodes[$initialLanguageCode] = true;
}
foreach ($structFields as $field) {
if ($field->languageCode === null || isset($languageCodes[$field->languageCode])) {
continue;
}
$languageCodes[$field->languageCode] = true;
}
return array_keys($languageCodes);
}