X-Git-Url: http://www.aleph1.co.uk/gitweb/?a=blobdiff_plain;ds=sidebyside;f=vendor%2Fbehat%2Fbehat%2Fsrc%2FBehat%2FBehat%2FTransformation%2FServiceContainer%2FTransformationExtension.php;fp=vendor%2Fbehat%2Fbehat%2Fsrc%2FBehat%2FBehat%2FTransformation%2FServiceContainer%2FTransformationExtension.php;h=0000000000000000000000000000000000000000;hb=af6d1fb995500ae68849458ee10d66abbdcfb252;hp=f322ee92672afd811d8654b2fd5b86ff429c4cd6;hpb=680c79a86e3ed402f263faeac92e89fb6d9edcc0;p=yaffs-website diff --git a/vendor/behat/behat/src/Behat/Behat/Transformation/ServiceContainer/TransformationExtension.php b/vendor/behat/behat/src/Behat/Behat/Transformation/ServiceContainer/TransformationExtension.php deleted file mode 100644 index f322ee926..000000000 --- a/vendor/behat/behat/src/Behat/Behat/Transformation/ServiceContainer/TransformationExtension.php +++ /dev/null @@ -1,177 +0,0 @@ - - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -namespace Behat\Behat\Transformation\ServiceContainer; - -use Behat\Behat\Context\ServiceContainer\ContextExtension; -use Behat\Behat\Definition\ServiceContainer\DefinitionExtension; -use Behat\Testwork\Call\ServiceContainer\CallExtension; -use Behat\Testwork\Environment\ServiceContainer\EnvironmentExtension; -use Behat\Testwork\ServiceContainer\Extension; -use Behat\Testwork\ServiceContainer\ExtensionManager; -use Behat\Testwork\ServiceContainer\ServiceProcessor; -use Behat\Testwork\Translator\ServiceContainer\TranslatorExtension; -use Symfony\Component\Config\Definition\Builder\ArrayNodeDefinition; -use Symfony\Component\DependencyInjection\ContainerBuilder; -use Symfony\Component\DependencyInjection\Definition; -use Symfony\Component\DependencyInjection\Reference; - -/** - * Provides definition arguments transformation functionality. - * - * @author Konstantin Kudryashov - */ -class TransformationExtension implements Extension -{ - /* - * Available services - */ - const REPOSITORY_ID = 'transformation.repository'; - - /* - * Available extension points - */ - const ARGUMENT_TRANSFORMER_TAG = 'transformation.argument_transformer'; - - /** - * @var ServiceProcessor - */ - private $processor; - - /** - * Initializes extension. - * - * @param null|ServiceProcessor $processor - */ - public function __construct(ServiceProcessor $processor = null) - { - $this->processor = $processor ?: new ServiceProcessor(); - } - - /** - * {@inheritdoc} - */ - public function getConfigKey() - { - return 'transformations'; - } - - /** - * {@inheritdoc} - */ - public function initialize(ExtensionManager $extensionManager) - { - } - - /** - * {@inheritdoc} - */ - public function configure(ArrayNodeDefinition $builder) - { - } - - /** - * {@inheritdoc} - */ - public function load(ContainerBuilder $container, array $config) - { - $this->loadDefinitionArgumentsTransformer($container); - $this->loadDefaultTransformers($container); - $this->loadAnnotationReader($container); - $this->loadRepository($container); - } - - /** - * {@inheritdoc} - */ - public function process(ContainerBuilder $container) - { - $this->processArgumentsTransformers($container); - } - - /** - * Loads definition arguments transformer. - * - * @param ContainerBuilder $container - */ - protected function loadDefinitionArgumentsTransformer(ContainerBuilder $container) - { - $definition = new Definition('Behat\Behat\Transformation\Call\Filter\DefinitionArgumentsTransformer'); - $definition->addTag(CallExtension::CALL_FILTER_TAG, array('priority' => 200)); - $container->setDefinition($this->getDefinitionArgumentTransformerId(), $definition); - } - - /** - * Loads default transformers. - * - * @param ContainerBuilder $container - */ - protected function loadDefaultTransformers(ContainerBuilder $container) - { - $definition = new Definition('Behat\Behat\Transformation\Transformer\RepositoryArgumentTransformer', array( - new Reference(self::REPOSITORY_ID), - new Reference(CallExtension::CALL_CENTER_ID), - new Reference(DefinitionExtension::PATTERN_TRANSFORMER_ID), - new Reference(TranslatorExtension::TRANSLATOR_ID) - )); - $definition->addTag(self::ARGUMENT_TRANSFORMER_TAG, array('priority' => 50)); - $container->setDefinition(self::ARGUMENT_TRANSFORMER_TAG . '.repository', $definition); - } - - /** - * Loads transformation context annotation reader. - * - * @param ContainerBuilder $container - */ - protected function loadAnnotationReader(ContainerBuilder $container) - { - $definition = new Definition('Behat\Behat\Transformation\Context\Annotation\TransformationAnnotationReader'); - $definition->addTag(ContextExtension::ANNOTATION_READER_TAG, array('priority' => 50)); - $container->setDefinition(ContextExtension::ANNOTATION_READER_TAG . '.transformation', $definition); - } - - /** - * Loads transformations repository. - * - * @param ContainerBuilder $container - */ - protected function loadRepository(ContainerBuilder $container) - { - $definition = new Definition('Behat\Behat\Transformation\TransformationRepository', array( - new Reference(EnvironmentExtension::MANAGER_ID) - )); - $container->setDefinition(self::REPOSITORY_ID, $definition); - } - - /** - * Processes all available argument transformers. - * - * @param ContainerBuilder $container - */ - protected function processArgumentsTransformers(ContainerBuilder $container) - { - $references = $this->processor->findAndSortTaggedServices($container, self::ARGUMENT_TRANSFORMER_TAG); - $definition = $container->getDefinition($this->getDefinitionArgumentTransformerId()); - - foreach ($references as $reference) { - $definition->addMethodCall('registerArgumentTransformer', array($reference)); - } - } - - /** - * Returns definition argument transformer service id. - * - * @return string - */ - protected function getDefinitionArgumentTransformerId() - { - return CallExtension::CALL_FILTER_TAG . '.definition_argument_transformer'; - } -}