Example #1
0
 /**
  * Führt den Request aus
  * 
  * Gibt die Ausgabe des Calls vom Controller zurück
  * wenn man den Request nicht selbst erstellen will, kann man
  *
  * \Psc\URL\Service\Request::infer();
  *
  * benutzen.
  */
 public function process(Request $request)
 {
     // required
     $service = $this->getRegisteredService($request->getPart(1));
     $call = new Call(mb_strtolower($request->getMethod()));
     // identifier ist optional
     if (($identifier = $request->getPart(2)) !== NULL) {
         $call->addParameter($identifier);
         /* alle Subs weitergeben als weitere Parameter */
         foreach ($request->getPartsFrom(3) as $p) {
             $call->addParameter($p);
         }
     } else {
         $call->setName('index');
     }
     if ($request->getMethod() === Request::POST || $request->getMethod() === Request::PUT) {
         $call->addParameter($request->getBody());
     }
     $this->call = $call;
     $this->service = $service;
     return $this->call();
 }