injections[$name] = $object; } public function __construct() { $this->init(); } protected function init() { } public function prepare() { } protected function getInjection($name) { return $this->injections[$name] ?? $this->$name ?? null; } protected function addDependency($name) { $this->dependencyList[] = $name; } protected function addDependencyList(array $list) { foreach ($list as $item) { $this->addDependency($item); } } public function getDependencyList() { return $this->dependencyList; } protected function getEntityManager() { return $this->getInjection('entityManager'); } protected function getConfig() { return $this->getInjection('config'); } protected function getUser() { return $this->getInjection('user'); } protected function getServiceFactory() { return $this->getInjection('serviceFactory'); } }