/** * @param GetResponseForControllerResultEvent $event * @return \BiteCodes\RestApiGeneratorBundle\Api\Actions\Action|bool */ protected function getAction(GetResponseForControllerResultEvent $event) { $apiResourceName = $event->getRequest()->attributes->get('_api_resource'); $controllerName = $event->getRequest()->attributes->get('_controller'); $apiResource = $this->manager->getResource($apiResourceName); return $apiResource ? $apiResource->getAction(ApiHelper::getActionClassFromControllerName($controllerName)) : false; }
/** * @param $routeName * @param ApiResource $resource * @return string */ private function getSection($routeName, ApiResource $resource) { $prefixPos = strlen($resource->getBundlePrefix() . '.'); $nextDot = strpos($routeName, '.', $prefixPos); $resourceName = substr($routeName, $prefixPos, $nextDot - $prefixPos); $parentResource = $this->manager->getResource($resourceName); return ucwords($parentResource->getName()); }
/** * @param Request $request * @return ApiResource|bool */ protected function getApiResource(Request $request) { $apiResourceName = $request->attributes->get('_api_resource'); return $this->manager->getResource($apiResourceName); }