You are here

public function LocaleDefaultConfigStorage::read in Zircon Profile 8

Same name and namespace in other branches
  1. 8.0 core/modules/locale/src/LocaleDefaultConfigStorage.php \Drupal\locale\LocaleDefaultConfigStorage::read()

Read a configuration from install storage or default languages.

Parameters

string $name: Configuration object name.

Return value

array Configuration data from install storage or default language.

File

core/modules/locale/src/LocaleDefaultConfigStorage.php, line 82
Contains \Drupal\locale\LocaleDefaultConfigStorage.

Class

LocaleDefaultConfigStorage
Provides access to default configuration for locale integration.

Namespace

Drupal\locale

Code

public function read($name) {
  if ($this->requiredInstallStorage
    ->exists($name)) {
    return $this->requiredInstallStorage
      ->read($name);
  }
  elseif ($this->optionalInstallStorage
    ->exists($name)) {
    return $this->optionalInstallStorage
      ->read($name);
  }
  elseif (strpos($name, 'language.entity.') === 0) {

    // Simulate default languages as if they were shipped as default
    // configuration.
    $langcode = str_replace('language.entity.', '', $name);
    $predefined_languages = $this->languageManager
      ->getStandardLanguageList();
    if (isset($predefined_languages[$langcode])) {
      $data = $this->configStorage
        ->read($name);
      $data['label'] = $predefined_languages[$langcode][0];
      return $data;
    }
  }
}