Example #1
0
 public function testSettingDebugMode()
 {
     $config = new Configuration();
     $config->setDebugMode(true);
     $this->assertTrue($config->inDebugMode());
     $config->setDebugMode(false);
     $this->assertFalse($config->inDebugMode());
     $config->setDebugMode('string');
     $this->assertTrue($config->inDebugMode());
 }
Example #2
0
 /**
  * Dispatch a REST request
  * @param  object     $request     - Framework request object
  * @param  object     $response    - Framework response object
  * @param  string     $namedRoute  - Define the named Route to be dispatch - by passes the internal router
  * @param  array      $routeParams - Route parameters to be used when dispatching a namedRoute request
  * @return Response   $response - returns a Drest response object which can be sent calling toString()
  * @throws \Exception - Upon failure
  */
 public function dispatch($request = null, $response = null, $namedRoute = null, array $routeParams = array())
 {
     $this->setRequest(Request::create($request, $this->config->getRegisteredRequestAdapterClasses()));
     $this->setResponse(Response::create($response, $this->config->getRegisteredResponseAdapterClasses()));
     // Register routes for lookup
     $this->registerRoutes();
     // trigger preDispatch event
     $this->getEventManager()->dispatchEvent(Event\Events::PRE_DISPATCH, new Event\PreDispatchArgs($this->service));
     $rethrowException = false;
     try {
         $this->execute($namedRoute, $routeParams);
     } catch (\Exception $e) {
         if ($this->config->inDebugMode()) {
             $rethrowException = $e;
         } else {
             $this->handleError($e);
         }
     }
     // trigger a postDispatch event
     $this->getEventManager()->dispatchEvent(Event\Events::POST_DISPATCH, new Event\PostDispatchArgs($this->service));
     if ($rethrowException) {
         throw $rethrowException;
     }
     return $this->response;
 }
Example #3
0
 /**
  * Dispatch a REST request
  * @param  object     $request     - Framework request object
  * @param  object     $response    - Framework response object
  * @param  string     $namedRoute  - Define the named Route to be dispatch - by passes the internal router
  * @param  array      $routeParams - Route parameters to be used when dispatching a namedRoute request
  * @return Response   $response - returns a Drest response object which can be sent calling toString()
  * @throws \Exception - Upon failure
  */
 public function dispatch($request = null, $response = null, $namedRoute = null, array $routeParams = [])
 {
     $this->setUpHttp($request, $response, $this->getConfiguration());
     // Save the named route to the object (overwritten on each dispatch)
     $this->named_route = $namedRoute;
     $this->route_params = $routeParams;
     // Register routes for lookup
     $this->metadataManager->registerRoutes($this->router);
     // trigger preDispatch event
     $this->triggerPreDispatchEvent($this->service);
     try {
         $this->execute();
     } catch (\Exception $e) {
         if ($this->config->inDebugMode()) {
             // trigger a postDispatch event
             $this->triggerPostDispatchEvent($this->service);
             throw $e;
         }
         $this->handleError($e);
     }
     // trigger a postDispatch event
     $this->triggerPostDispatchEvent($this->service);
     return $this->getResponse();
 }