public function handleRequest() { $result = null; $response = new RESTApiResponse(); try { $request = new RESTApiRequest(); $request->init(); $response->setRequest($request); try { $access = OAuth\AuthAccessHandler::getAccessSchema($request); $access->checkRequest(); } catch (OAuth\AuthUnauthorized $access_exception) { throw new RESTUnauthorized($access_exception->getMessage()); } catch (OAuth\AuthBadRequest $access_exception) { throw new RESTBadRequest($access_exception->getMessage()); } catch (OAuth\AuthForbidden $access_exception) { throw new RESTForbidden($access_exception->getMessage()); } $session = $access->getSession(); \User::getInstance($session['uid']); $target_resolver = new RESTApiTargetResolver(); $target = $target_resolver->getTarget($request); $result = $target->execute($request); } catch (\Exception $e) { $response->setError($e); } $response->setBody($result); $response->send(); }
public function setRequest(RESTApiRequest $request) { $this->request = $request; $this->setContentType($request->getAcceptType()); }