Merge pull request #645 from ogizanagi/dunglas/filters_collection_only

Only display filters on collections GET services
This commit is contained in:
William Durand 2015-06-08 14:24:59 +02:00
commit a679eb8089

View File

@ -19,6 +19,7 @@ use Dunglas\ApiBundle\Mapping\ClassMetadataFactoryInterface;
use Nelmio\ApiDocBundle\Annotation\ApiDoc;
use Nelmio\ApiDocBundle\Extractor\AnnotationsProviderInterface;
use Nelmio\ApiDocBundle\Parser\DunglasApiParser;
use Symfony\Component\HttpFoundation\Request;
/**
* Creates ApiDoc annotations for DunglasApiBundle.
@ -125,10 +126,12 @@ class DunglasApiProvider implements AnnotationsProviderInterface
$data['output'] = sprintf('%s:%s', DunglasApiParser::OUT_PREFIX, $entityClass);
}
$data['filters'] = [];
foreach ($resource->getFilters() as $filter) {
foreach ($filter->getDescription($resource) as $name => $definition) {
$data['filters'][] = ['name' => $name] + $definition;
if (Request::METHOD_GET === $method && $collection) {
$data['filters'] = [];
foreach ($resource->getFilters() as $filter) {
foreach ($filter->getDescription($resource) as $name => $definition) {
$data['filters'][] = ['name' => $name] + $definition;
}
}
}