Skip to content

Commit 5cbc3ab

Browse files
committed
Merge pull request #306 from Soullivaneuh/factory
Fix deprecated factory definition
2 parents bbce533 + cbe6c77 commit 5cbc3ab

File tree

3 files changed

+25
-2
lines changed

3 files changed

+25
-2
lines changed

DependencyInjection/FOSOAuthServerExtension.php

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@
1212
namespace FOS\OAuthServerBundle\DependencyInjection;
1313

1414
use Symfony\Component\Config\Definition\Processor;
15+
use Symfony\Component\DependencyInjection\Reference;
1516
use Symfony\Component\HttpKernel\DependencyInjection\Extension;
1617
use Symfony\Component\DependencyInjection\Loader\XmlFileLoader;
1718
use Symfony\Component\DependencyInjection\ContainerBuilder;
@@ -74,9 +75,31 @@ public function load(array $configs, ContainerBuilder $container)
7475
}
7576
}
7677

78+
// Entity manager factory definition
79+
// TODO: Go back to xml configuration when bumping the requirement to Symfony >=2.6
80+
if ('orm' === $config['db_driver']) {
81+
$ormEntityManagerDefinition = $container->getDefinition('fos_oauth_server.entity_manager');
82+
if (method_exists($ormEntityManagerDefinition, 'setFactory')) {
83+
$ormEntityManagerDefinition->setFactory(array(new Reference('doctrine'), 'getManager'));
84+
} else {
85+
$ormEntityManagerDefinition->setFactoryService('doctrine');
86+
$ormEntityManagerDefinition->setFactoryMethod('getManager');
87+
}
88+
}
89+
7790
if (!empty($config['authorize'])) {
7891
$this->loadAuthorize($config['authorize'], $container, $loader);
7992
}
93+
94+
// Authorize form factory definition
95+
// TODO: Go back to xml configuration when bumping the requirement to Symfony >=2.6
96+
$authorizeFormDefinition = $container->getDefinition('fos_oauth_server.authorize.form');
97+
if (method_exists($authorizeFormDefinition, 'setFactory')) {
98+
$authorizeFormDefinition->setFactory(array(new Reference('form.factory'), 'createNamed'));
99+
} else {
100+
$authorizeFormDefinition->setFactoryService('form.factory');
101+
$authorizeFormDefinition->setFactoryMethod('createNamed');
102+
}
80103
}
81104

82105
/**

Resources/config/authorize.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
xsi:schemaLocation="http://symfony.com/schema/dic/services http://symfony.com/schema/dic/services/services-1.0.xsd">
66

77
<services>
8-
<service id="fos_oauth_server.authorize.form" factory-method="createNamed" factory-service="form.factory" class="Symfony\Component\Form\Form">
8+
<service id="fos_oauth_server.authorize.form" class="Symfony\Component\Form\Form">
99
<argument>%fos_oauth_server.authorize.form.name%</argument>
1010
<argument>%fos_oauth_server.authorize.form.type%</argument>
1111
<argument>null</argument>

Resources/config/orm.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
<argument>%fos_oauth_server.model.auth_code.class%</argument>
2626
</service>
2727

28-
<service id="fos_oauth_server.entity_manager" factory-service="doctrine" factory-method="getManager" class="Doctrine\ORM\EntityManager" public="false">
28+
<service id="fos_oauth_server.entity_manager" class="Doctrine\ORM\EntityManager" public="false">
2929
<argument>%fos_oauth_server.model_manager_name%</argument>
3030
</service>
3131
</services>

0 commit comments

Comments
 (0)