ResolveTargetEntityExtension::addSubscribers()   A
last analyzed

Complexity

Conditions 2
Paths 2

Size

Total Lines 12

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
nc 2
nop 3
dl 0
loc 12
rs 9.8666
c 0
b 0
f 0
1
<?php
2
declare(strict_types=1);
3
4
namespace Tfboe\FmLib\Listeners;
5
6
use Doctrine\Common\Annotations\Reader;
7
use Doctrine\Common\EventManager;
8
use Doctrine\ORM\EntityManagerInterface;
9
use Doctrine\ORM\Tools\ResolveTargetEntityListener;
10
use LaravelDoctrine\ORM\Extensions\Extension;
11
12
/**
13
 * Class ResolveTargetEntityExtension
14
 * @package Tfboe\FmLib\Listeners
15
 */
16
class ResolveTargetEntityExtension implements Extension
17
{
18
//<editor-fold desc="Public Methods">
19
  /**
20
   * @param EventManager $manager
21
   * @param EntityManagerInterface $em
22
   * @param Reader|null $reader
23
   */
24
  public function addSubscribers(EventManager $manager, EntityManagerInterface $em, Reader $reader = null)
25
  {
26
    $resolveTargetEntityListener = new ResolveTargetEntityListener();
27
28
    foreach (config('fm-lib.entityMaps', []) as $interface => $concrete) {
29
      $resolveTargetEntityListener->addResolveTargetEntity($interface, $concrete, []);
30
    }
31
32
    $manager->addEventSubscriber(
33
      $resolveTargetEntityListener
34
    );
35
  }
36
37
  /**
38
   * @return array
39
   */
40
  public function getFilters()
41
  {
42
    return [];
43
  }
44
//</editor-fold desc="Public Methods">
45
}