/**
  * @param SilexApplication $app
  * @return ControllerCollection
  */
 public function connect(SilexApplication $app)
 {
     $this->collection = Application::getControllersFactory();
     $this->collection->setCallbackPrefix($this->controller_id);
     $app[$this->controller_id] = $app->share(function ($app) {
         $class = $this->controller_class;
         return new $class($app);
     });
     $this->configureRoutes($this->collection);
     return $this->collection;
 }