share(function (PhraseaApplication $app) { return (new V3Controller($app)); }); } public function boot(Application $app) { } public function connect(Application $app) { if (! $this->isApiEnabled($app)) { return $app['controllers_factory']; } /** @var ControllerCollection $controllers */ $controllers = $app['controllers_factory']; $controllers->before(new OAuthListener()); $controllers->get('/stories/{databox_id}/{record_id}/', 'controller.api.v3:getStoryAction') ->before('controller.api.v1:ensureCanAccessToRecord') ->assert('databox_id', '\d+') ->assert('record_id', '\d+'); $controllers->match('/search/', 'controller.api.v3:searchAction'); return $controllers; } }