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()); }
/** * 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; }
/** * 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(); }