/**
  * {@inheritdoc}
  */
 public function process(array $config, ContainerBuilder $container)
 {
     $subjects = array();
     $convertedConfig = array();
     foreach ($config['classes'] as $subject => $parameters) {
         $subjects[$subject] = $parameters;
         unset($parameters['subject']);
         foreach ($parameters as $resource => $classes) {
             $convertedConfig[$subject . '_' . $resource] = $classes;
             $convertedConfig[$subject . '_' . $resource]['subject'] = $subject;
         }
         if (!isset($config['validation_groups'][$subject]['attribute'])) {
             $config['validation_groups'][$subject]['attribute'] = array('sylius');
         }
         if (!isset($config['validation_groups'][$subject]['attribute_translation'])) {
             $config['validation_groups'][$subject]['attribute_translation'] = array('sylius');
         }
         if (!isset($config['validation_groups'][$subject]['attribute_value'])) {
             $config['validation_groups'][$subject]['attribute_value'] = array('sylius');
         }
     }
     $container->setParameter('sylius.attribute.subjects', $subjects);
     $config['classes'] = $convertedConfig;
     $convertedConfig = array();
     foreach ($config['validation_groups'] as $subject => $parameters) {
         foreach ($parameters as $resource => $validationGroups) {
             $convertedConfig[$subject . '_' . $resource] = $validationGroups;
         }
     }
     $config['validation_groups'] = $convertedConfig;
     return parent::process($config, $container);
 }
 /**
  * {@inheritdoc}
  */
 public function process(array $config, ContainerBuilder $container)
 {
     $convertedConfig = array();
     $variables = array();
     foreach ($config['classes'] as $variable => $parameters) {
         $variables[$variable] = $parameters;
         unset($parameters['variable']);
         foreach ($parameters as $resource => $classes) {
             $convertedConfig[$variable . '_' . $resource] = $classes;
             $convertedConfig[$variable . '_' . $resource]['variable'] = $variable;
         }
         $this->createvariableServices($container, $variable);
         if (!isset($config['validation_groups'][$variable]['variant'])) {
             $config['validation_groups'][$variable]['variant'] = array('sylius');
         }
         if (!isset($config['validation_groups'][$variable]['option'])) {
             $config['validation_groups'][$variable]['option'] = array('sylius');
         }
         if (!isset($config['validation_groups'][$variable]['option_translation'])) {
             $config['validation_groups'][$variable]['option_translation'] = array('sylius');
         }
         if (!isset($config['validation_groups'][$variable]['option_value'])) {
             $config['validation_groups'][$variable]['option_value'] = array('sylius');
         }
     }
     $container->setParameter('sylius.variation.variables', $variables);
     $config['classes'] = $convertedConfig;
     $convertedConfig = array();
     foreach ($config['validation_groups'] as $variable => $parameters) {
         foreach ($parameters as $resource => $validationGroups) {
             $convertedConfig[$variable . '_' . $resource] = $validationGroups;
         }
     }
     $config['validation_groups'] = $convertedConfig;
     return parent::process($config, $container);
 }
 /**
  * {@inheritdoc}
  */
 public function process(array $config, ContainerBuilder $container)
 {
     $subjects = array();
     $convertedConfig = array();
     foreach ($config['classes'] as $subject => $parameters) {
         $subjects[$subject] = $parameters;
         unset($parameters['subject'], $parameters['attribute'], $parameters['option']);
         foreach ($parameters as $resource => $classes) {
             $convertedConfig[$subject . '_' . $resource] = $classes;
             $convertedConfig[$subject . '_' . $resource]['subject'] = $subject;
         }
         $this->createSubjectServices($container, $subject);
         if (!isset($config['validation_groups'][$subject]['archetype'])) {
             $config['validation_groups'][$subject]['archetype'] = array('sylius');
         }
         if (!isset($config['validation_groups'][$subject]['archetype_translation'])) {
             $config['validation_groups'][$subject]['archetype_translation'] = array('sylius');
         }
     }
     $container->setParameter('sylius.archetype.subjects', $subjects);
     $config['classes'] = $convertedConfig;
     $config['validation_groups'] = $this->buildValidationConfig($config);
     return parent::process($config, $container);
 }
 protected function registerResources($applicationName, $driver, array $resources, ContainerBuilder $container)
 {
     parent::registerResources($applicationName, $driver, $resources, $container);
 }