X-Git-Url: https://yaffs.net/gitweb/?a=blobdiff_plain;f=vendor%2Fbehat%2Fbehat%2Fsrc%2FBehat%2FTestwork%2FTranslator%2FServiceContainer%2FTranslatorExtension.php;fp=vendor%2Fbehat%2Fbehat%2Fsrc%2FBehat%2FTestwork%2FTranslator%2FServiceContainer%2FTranslatorExtension.php;h=0000000000000000000000000000000000000000;hb=af6d1fb995500ae68849458ee10d66abbdcfb252;hp=39de237cfbf8d974ee7b98113cb2be55ce993309;hpb=680c79a86e3ed402f263faeac92e89fb6d9edcc0;p=yaffs-website diff --git a/vendor/behat/behat/src/Behat/Testwork/Translator/ServiceContainer/TranslatorExtension.php b/vendor/behat/behat/src/Behat/Testwork/Translator/ServiceContainer/TranslatorExtension.php deleted file mode 100644 index 39de237cf..000000000 --- a/vendor/behat/behat/src/Behat/Testwork/Translator/ServiceContainer/TranslatorExtension.php +++ /dev/null @@ -1,155 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Behat\Testwork\Translator\ServiceContainer; - -use Behat\Testwork\Cli\ServiceContainer\CliExtension; -use Behat\Testwork\ServiceContainer\Extension; -use Behat\Testwork\ServiceContainer\ExtensionManager; -use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition; -use Symfony\Component\DependencyInjection\ContainerBuilder; -use Symfony\Component\DependencyInjection\Definition; -use Symfony\Component\DependencyInjection\Reference; - -/** - * Provides translator service. - * - * @author Konstantin Kudryashov - */ -final class TranslatorExtension implements Extension -{ - /* - * Available services - */ - const TRANSLATOR_ID = 'translator'; - - /** - * {@inheritdoc} - */ - public function getConfigKey() - { - return 'translation'; - } - - /** - * {@inheritdoc} - */ - public function initialize(ExtensionManager $extensionManager) - { - } - - /** - * {@inheritdoc} - */ - public function configure(ArrayNodeDefinition $builder) - { - $defaultLanguage = $this->getDefaultLanguage() ?: 'en'; - - $builder - ->addDefaultsIfNotSet() - ->children() - ->scalarNode('locale') - ->info('Sets output locale for the tester') - ->defaultValue($defaultLanguage) - ->end() - ->scalarNode('fallback_locale') - ->info('Sets fallback output locale for the tester') - ->defaultValue('en') - ->end() - ->end(); - } - - /** - * {@inheritdoc} - */ - public function load(ContainerBuilder $container, array $config) - { - $this->loadTranslator($container, $config['locale'], $config['fallback_locale']); - $this->loadController($container); - } - - /** - * {@inheritdoc} - */ - public function process(ContainerBuilder $container) - { - } - - /** - * Loads translator service. - * - * @param ContainerBuilder $container - * @param string $locale - * @param string $fallbackLocale - */ - private function loadTranslator(ContainerBuilder $container, $locale, $fallbackLocale) - { - $definition = new Definition('Symfony\Component\Translation\Translator', array($locale)); - $container->setDefinition(self::TRANSLATOR_ID, $definition); - - $definition->addMethodCall('setFallbackLocales', array(array($fallbackLocale))); - $definition->addMethodCall( - 'addLoader', array( - 'xliff', - new Definition('Symfony\Component\Translation\Loader\XliffFileLoader') - ) - ); - $definition->addMethodCall( - 'addLoader', array( - 'yaml', - new Definition('Symfony\Component\Translation\Loader\YamlFileLoader') - ) - ); - $definition->addMethodCall( - 'addLoader', array( - 'php', - new Definition('Symfony\Component\Translation\Loader\PhpFileLoader') - ) - ); - $definition->addMethodCall( - 'addLoader', array( - 'array', - new Definition('Symfony\Component\Translation\Loader\ArrayLoader') - ) - ); - $container->setDefinition(self::TRANSLATOR_ID, $definition); - } - - /** - * Loads translator controller. - * - * @param ContainerBuilder $container - */ - private function loadController(ContainerBuilder $container) - { - $definition = new Definition('Behat\Testwork\Translator\Cli\LanguageController', array( - new Reference(self::TRANSLATOR_ID) - )); - $definition->addTag(CliExtension::CONTROLLER_TAG, array('priority' => 800)); - $container->setDefinition(CliExtension::CONTROLLER_TAG . '.translator', $definition); - } - - /** - * Tries to guess default user cli language. - * - * @return null|string - */ - private function getDefaultLanguage() - { - $defaultLanguage = null; - if (($locale = getenv('LANG')) && preg_match('/^([a-z]{2})/', $locale, $matches)) { - $defaultLanguage = $matches[1]; - - return $defaultLanguage; - } - - return $defaultLanguage; - } -}