Skip to content
This repository
Fetching contributors…

Cannot retrieve contributors at this time

file 74 lines (64 sloc) 1.637 kb
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
<?php

namespace DoctrineORMModule\Options;

use InvalidArgumentException;
use Zend\Stdlib\AbstractOptions;

class EntityResolver extends AbstractOptions
{
    /**
* Set the configuration key for the EventManager. Event manager key
* is assembled as "doctrine.eventmanager.{key}" and pulled from
* service locator.
*
* @var string
*/
    protected $eventManager = 'orm_default';

    /**
* An array that maps a class name (or interface name) to another class
* name
*
* @var array
*/
    protected $resolvers = array();

    /**
* @param string $eventManager
* @return self
*/
    public function setEventManager($eventManager)
    {
        $this->eventManager = $eventManager;

        return $this;
    }

    /**
* @return string
*/
    public function getEventManager()
    {
        return "doctrine.eventmanager.{$this->eventManager}";
    }

    /**
* @param array $resolvers
* @throws InvalidArgumentException
*/
    public function setResolvers(array $resolvers)
    {
        foreach ($resolvers as $old => $new) {
            if (!class_exists($new)) {
                throw new InvalidArgumentException(
                    sprintf(
                        '%s is resolved to the entity %s, which does not exist',
                        $old,
                        $new
                    )
                );
            }

            $this->resolvers[$old] = $new;
        }
    }

    /**
* @return array
*/
    public function getResolvers()
    {
        return $this->resolvers;
    }
}
Something went wrong with that request. Please try again.