| Conditions | 5 | 
| Paths | 5 | 
| Total Lines | 25 | 
| Code Lines | 13 | 
| Lines | 0 | 
| Ratio | 0 % | 
| Tests | 17 | 
| 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 | 3 | ;  | 
            |
| 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 | 1 | );  | 
            |
| 41 | 1 | }  | 
            |
| 42 | 2 | }  | 
            |
| 43 | 2 | }  | 
            |
| 44 | }  | 
            ||
| 45 |