示例#1
0
 /**
  * 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;
 }
示例#2
0
 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', []));
 }
示例#4
0
 /**
  * Resolve a listener.
  *
  * @param  string $handler
  *
  * @return object
  */
 public function resolve($handler)
 {
     return $this->container->resolve($handler);
 }