/** * Resolve a handler. * * @param mixed $handler * * @return ErrorHandlerInterface|callable */ public function resolve($handler) { if (!is_string($handler)) { return $handler; } $handler = $this->container->resolve($handler); if (!is_callable($handler) && !$handler instanceof ErrorHandlerInterface) { $type = is_object($handler) ? get_class($handler) : gettype($handler); throw new \UnexpectedValueException("Resolved error handler is not a valid handler - must be callable or an instance of Autarky\\Errors\\ErrorHandlerInterface, {$type} given"); } return $handler; }
protected function resolveLoader($extension) { if (!isset($this->loaderClasses[$extension])) { throw new LoadException("No loader registered for extension: {$extension}"); } $this->loaders[$extension] = $this->container->resolve($this->loaderClasses[$extension]); }
protected function makeMemcachedHandler() { return new MemcachedSessionHandler($this->container->resolve('Memcached'), $this->config->get('session.handler_options', [])); }
/** * Resolve a listener. * * @param string $handler * * @return object */ public function resolve($handler) { return $this->container->resolve($handler); }