| Conditions | 5 | 
| Paths | 5 | 
| Total Lines | 25 | 
| Code Lines | 13 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Tests | 13 | 
| CRAP Score | 5 | 
| Changes | 1 | ||
| Bugs | 0 | Features | 0 | 
| 1 | <?php | ||
| 19 | 4 | public function process(ContainerBuilder $container) | |
| 20 |     { | ||
| 21 | 4 |         if (!$container->has('gbprod.doctrine_specification_handler')) { | |
| 22 | 1 |             throw new \Exception('Missing gbprod.doctrine_specification_handler definition'); | |
| 23 | } | ||
| 24 | |||
| 25 | $handler = $container | ||
| 26 | 3 |             ->findDefinition('gbprod.doctrine_specification_handler') | |
| 27 | ; | ||
| 28 | |||
| 29 | 3 |         $builders = $container->findTaggedServiceIds('doctrine.query_factory'); | |
| 30 | |||
| 31 | 3 |         foreach ($builders as $id => $tags) { | |
| 32 | 2 |             foreach ($tags as $attributes) { | |
| 33 | 2 |                 if (!isset($attributes['specification'])) { | |
| 34 | 1 |                     throw new \Exception('The doctrine.query_factory tag must always have a "specification" attribute'); | |
| 35 | } | ||
| 36 | |||
| 37 | 1 | $handler->addMethodCall( | |
| 38 | 1 | 'registerFactory', | |
| 39 | 1 | [$attributes['specification'], new Reference($id)] | |
| 40 | ); | ||
| 41 | } | ||
| 42 | } | ||
| 43 | 2 | } | |
| 44 | } | ||
| 45 |