/**
  * Tests RestRequestItem->getUrl()
  */
 public function testGetUrl()
 {
     $this->assertEquals("/people/@viewer/@self", $this->RestRequestItem->getUrl());
 }
 private function getResponseItem(RestRequestItem $requestItem)
 {
     $path = $this->getRouteFromParameter($requestItem->getUrl());
     $class = false;
     switch ($path) {
         case 'people':
             $class = 'PeopleHandler';
             break;
         case 'activities':
             $class = 'ActivitiesHandler';
             break;
         case 'appdata':
             $class = 'AppDataHandler';
             break;
         case 'messages':
             $class = 'MessagesHandler';
             break;
             //TODO add 'groups' and 'messages' here
         //TODO add 'groups' and 'messages' here
         default:
             $response = new ResponseItem(NOT_IMPLEMENTED, "{$path} is not implemented");
             break;
     }
     if ($class && class_exists($class, true)) {
         $class = new $class(null);
         $response = $class->handleMethod($requestItem);
     }
     if ($response->getError() != null && !$this->isJsonBatchUrl() && !$this->isBatchProxyUrl()) {
         // Can't use http error codes in batch mode, instead we return the error code in the response item
         $this->outputError($response);
     }
     return $response;
 }