Skip to content

Commit

Permalink
use setFactory() instead of setFactoryService() when available
Browse files Browse the repository at this point in the history
  • Loading branch information
lsmith77 committed Jun 10, 2015
1 parent c9d93cf commit 10c3317
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 10 deletions.
20 changes: 18 additions & 2 deletions DependencyInjection/DoctrinePHPCRExtension.php
Expand Up @@ -126,6 +126,23 @@ private function sessionLoad($config, ContainerBuilder $container)
case 'jackrabbit':
if (empty($loaded['jackalope'])) {
$this->loader->load('jackalope.xml');

$jackalopeTransports = array('prismic', 'doctrinedbal', 'jackrabbit');
foreach ($jackalopeTransports as $transport) {
$factoryServiceId = sprintf('doctrine_phpcr.jackalope.repository.factory.service.%s', $transport);
$factoryService = $container->getDefinition(sprintf('doctrine_phpcr.jackalope.repository.factory.%s', $transport));
if (method_exists($factoryService, 'setFactory')) {
$factoryService->setFactory(array(
new Reference($factoryServiceId),
'getRepository'
));
} else {
// todo: remove when Symfony <2.6 support is dropped
$factoryService->setFactoryService($factoryServiceId);
$factoryService->setFactoryMethod('getRepository');
}
}

$loaded['jackalope'] = true;
}
$this->loadJackalopeSession($session, $container, $type);
Expand Down Expand Up @@ -273,11 +290,10 @@ private function loadJackalopeSession(array $session, ContainerBuilder $containe
new Reference($factoryServiceId),
'login'
));
$definition->setFactoryService(null);
$definition->setFactoryMethod(null);
} else {
// todo: remove when Symfony <2.6 support is dropped
$definition->setFactoryService($factoryServiceId);
$definition->setFactoryMethod('login');
}
$definition
->replaceArgument(0, new Reference(sprintf('doctrine_phpcr.%s_credentials', $session['name'])))
Expand Down
8 changes: 0 additions & 8 deletions Resources/config/jackalope.xml
Expand Up @@ -17,8 +17,6 @@

<service id="doctrine_phpcr.jackalope.repository.factory.jackrabbit"
class="Jackalope\Repository"
factory-service="doctrine_phpcr.jackalope.repository.factory.service.jackrabbit"
factory-method="getRepository"
>
<argument type="collection"/>
</service>
Expand All @@ -28,8 +26,6 @@
</service>
<service id="doctrine_phpcr.jackalope.repository.factory.doctrinedbal"
class="Jackalope\Repository"
factory-service="doctrine_phpcr.jackalope.repository.factory.service.doctrinedbal"
factory-method="getRepository"
>
<argument type="collection" />
</service>
Expand All @@ -40,16 +36,12 @@

<service id="doctrine_phpcr.jackalope.repository.factory.prismic"
class="Jackalope\Repository"
factory-service="doctrine_phpcr.jackalope.repository.factory.service.prismic"
factory-method="getRepository"
>
<argument type="collection"/>
</service>

<service id="doctrine_phpcr.jackalope.session"
class="Jackalope\Session"
factory-service="doctrine_phpcr.jackalope.repository"
factory-method="login"
abstract="true"
>
<argument /><!-- phpcr credentials service (0) -->
Expand Down

0 comments on commit 10c3317

Please sign in to comment.