/** * @param $abstract * @param array $args * * @return mixed */ protected function resolveAbstract($abstract, array $args) { if (is_callable($abstract)) { return $this->container->call($abstract, $args); } else { if (is_object($abstract)) { return $abstract; } else { if (class_exists($abstract)) { return $this->getClass(new ClassDefinition($abstract, null), $args); } } } return null; }
/** * @param callable $handler * @param $command * * @return mixed */ protected function invokeHandler(callable $handler, $command) { return $this->container->call($handler, ['command' => $command, 'task' => $command]); }
/** * @param $resolver * @param $parameter * * @return mixed */ public function invoke($resolver, $parameter) { return $this->container->call($resolver, ['parameter' => $parameter]); }
/** * @param $callable * @param IRouter $router */ public function invoke($callable, IRouter $router) { $this->container->call($callable, ['router' => $router]); }
/** * @param callable $subscriber * @param IEvent $event */ protected function invokeSubscriber(callable $subscriber, IEvent $event) { $this->container->call($subscriber, ['event' => $event]); }
/** * @param IRoute $route * @param IContainer $container * * @return mixed */ public function invoke(IRoute $route, IContainer $container) { return $container->call($route->getAction(), $route->getParameters()); }
/** * @param $filter * @param IRoute $route * * @return bool */ public function invoke($filter, IRoute $route) { return $this->container->call($filter, ['route' => $route]); }