You are here

private function YamlFileLoader::validate in Service Container 7

Same name in this branch
  1. 7 lib/Drupal/Core/DependencyInjection/YamlFileLoader.php \Drupal\Core\DependencyInjection\YamlFileLoader::validate()
  2. 7 modules/providers/service_container_symfony/lib/Symfony/Component/DependencyInjection/Loader/YamlFileLoader.php \Symfony\Component\DependencyInjection\Loader\YamlFileLoader::validate()
Same name and namespace in other branches
  1. 7.2 lib/Drupal/Core/DependencyInjection/YamlFileLoader.php \Drupal\Core\DependencyInjection\YamlFileLoader::validate()

Validates a YAML file.

Parameters

mixed $content:

string $file:

Return value

array

Throws

InvalidArgumentException When service file is not valid

1 call to YamlFileLoader::validate()
YamlFileLoader::loadFile in lib/Drupal/Core/DependencyInjection/YamlFileLoader.php
Loads a YAML file.

File

lib/Drupal/Core/DependencyInjection/YamlFileLoader.php, line 316
Contains \Drupal\Core\DependencyInjection\YamlFileLoader.

Class

YamlFileLoader
YamlFileLoader loads YAML files service definitions.

Namespace

Drupal\Core\DependencyInjection

Code

private function validate($content, $file) {
  if (null === $content) {
    return $content;
  }
  if (!is_array($content)) {
    throw new InvalidArgumentException(sprintf('The service file "%s" is not valid. It should contain an array. Check your YAML syntax.', $file));
  }
  if ($invalid_keys = array_diff_key($content, array(
    'parameters' => 1,
    'services' => 1,
  ))) {
    throw new InvalidArgumentException(sprintf('The service file "%s" is not valid: it contains invalid keys %s. Services have to be added under "services" and Parameters under "parameters".', $file, $invalid_keys));
  }
  return $content;
}