private function getContext(Request $request) : array { $context = ['title' => $this->title, 'description' => $this->description, 'formats' => $this->formats, 'shortName' => null, 'operationId' => null]; if (!$request->isMethodSafe(false) || null === ($resourceClass = $request->attributes->get('_api_resource_class'))) { return $context; } $metadata = $this->resourceMetadataFactory->create($resourceClass); $context['shortName'] = $metadata->getShortName(); if (null !== ($collectionOperationName = $request->attributes->get('_api_collection_operation_name'))) { $context['operationId'] = sprintf('%s%sCollection', $collectionOperationName, $context['shortName']); } elseif (null !== ($itemOperationName = $request->attributes->get('_api_item_operation_name'))) { $context['operationId'] = sprintf('%s%sItem', $itemOperationName, $context['shortName']); } return $context; }