diff --git a/DependencyInjection/PayumExtension.php b/DependencyInjection/PayumExtension.php index f997b6a8..28b9a684 100644 --- a/DependencyInjection/PayumExtension.php +++ b/DependencyInjection/PayumExtension.php @@ -20,6 +20,11 @@ use Symfony\Component\HttpKernel\Kernel; use Symfony\Component\HttpKernel\DependencyInjection\Extension; use Symfony\Component\Config\FileLocator; +use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\CustomStorageFactory; +use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\Propel1StorageFactory; +use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\Propel2StorageFactory; +use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\DoctrineStorageFactory; +use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\FilesystemStorageFactory; class PayumExtension extends Extension implements PrependExtensionInterface { @@ -33,6 +38,12 @@ class PayumExtension extends Extension implements PrependExtensionInterface */ public function load(array $configs, ContainerBuilder $container) { + $this->addStorageFactory(new FilesystemStorageFactory); + $this->addStorageFactory(new DoctrineStorageFactory); + $this->addStorageFactory(new CustomStorageFactory); + $this->addStorageFactory(new Propel1StorageFactory); + $this->addStorageFactory(new Propel2StorageFactory); + $mainConfig = $this->getConfiguration($configs, $container); $config = $this->processConfiguration($mainConfig, $configs); diff --git a/PayumBundle.php b/PayumBundle.php index e49ad44e..6552e8b7 100644 --- a/PayumBundle.php +++ b/PayumBundle.php @@ -6,12 +6,6 @@ use Payum\Bundle\PayumBundle\DependencyInjection\Compiler\BuildGatewayFactoriesPass; use Payum\Bundle\PayumBundle\DependencyInjection\Compiler\BuildGatewaysPass; use Payum\Bundle\PayumBundle\DependencyInjection\Compiler\BuildStoragesPass; -use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\CustomStorageFactory; -use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\Propel1StorageFactory; -use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\Propel2StorageFactory; -use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\DoctrineStorageFactory; -use Payum\Bundle\PayumBundle\DependencyInjection\Factory\Storage\FilesystemStorageFactory; -use Payum\Bundle\PayumBundle\DependencyInjection\PayumExtension; use Symfony\Component\HttpKernel\Bundle\Bundle; use Symfony\Component\DependencyInjection\ContainerBuilder; @@ -21,15 +15,6 @@ public function build(ContainerBuilder $container) { parent::build($container); - /** @var $extension PayumExtension */ - $extension = $container->getExtension('payum'); - - $extension->addStorageFactory(new FilesystemStorageFactory); - $extension->addStorageFactory(new DoctrineStorageFactory); - $extension->addStorageFactory(new CustomStorageFactory); - $extension->addStorageFactory(new Propel1StorageFactory); - $extension->addStorageFactory(new Propel2StorageFactory); - $container->addCompilerPass(new BuildConfigsPass()); $container->addCompilerPass(new BuildGatewaysPass); $container->addCompilerPass(new BuildStoragesPass); diff --git a/Tests/Functional/DependencyInjection/PayumExtensionTest.php b/Tests/Functional/DependencyInjection/PayumExtensionTest.php index 1f7306b9..02174afe 100644 --- a/Tests/Functional/DependencyInjection/PayumExtensionTest.php +++ b/Tests/Functional/DependencyInjection/PayumExtensionTest.php @@ -46,7 +46,6 @@ public function shouldAddGatewayTagWithCorrectGatewayAndFactoryNamesSet() $containerBuilder->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $containerBuilder); @@ -91,7 +90,6 @@ public function shouldUsePayumBuilderServiceToBuildPayumService() $containerBuilder->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $containerBuilder); @@ -140,7 +138,6 @@ public function shouldSetGatewayConfigStorageToPayumBuilderIfConfigured() $containerBuilder->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $containerBuilder); @@ -192,7 +189,6 @@ public function shouldWrapGatewayConfigStorageByEncryptionDecoratorWhenDefuseEnc $container->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $container); @@ -246,7 +242,6 @@ public function shouldConfigureSonataAdminClassForGatewayConfigModelSetInStorage $containerBuilder->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $containerBuilder); @@ -303,7 +298,6 @@ public function shouldInjectCypherToForGatewayConfigAdmin() $containerBuilder->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $containerBuilder); @@ -354,7 +348,6 @@ public function shouldNotConfigureSonataAdminClassForGatewayConfigIfDisabled() $containerBuilder->setParameter('kernel.debug', false); $extension = new PayumExtension; - $extension->addStorageFactory(new FilesystemStorageFactory); $extension->load($configs, $containerBuilder);