Skip to content

Commit d3475e5

Browse files
committed
DX: throw an exception when a filter is not found in a parameter
1 parent 67fbe51 commit d3475e5

File tree

1 file changed

+4
-2
lines changed

1 file changed

+4
-2
lines changed

src/Doctrine/Orm/Extension/ParameterExtension.php

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,9 +50,11 @@ private function applyFilter(QueryBuilder $queryBuilder, QueryNameGeneratorInter
5050
}
5151

5252
$filter = $this->filterLocator->has($filterId) ? $this->filterLocator->get($filterId) : null;
53-
if ($filter instanceof FilterInterface) {
54-
$filter->apply($queryBuilder, $queryNameGenerator, $resourceClass, $operation, ['filters' => $values, 'parameter' => $parameter] + $context);
53+
if (!$filter instanceof FilterInterface) {
54+
throw new \InvalidArgumentException(sprintf('Could not find filter "%s" for parameter "%s" in operation "%s" for resource "%s".', $filterId, $parameter->getName(), $operation?->getShortName(), $resourceClass));
5555
}
56+
57+
$filter->apply($queryBuilder, $queryNameGenerator, $resourceClass, $operation, ['filters' => $values, 'parameter' => $parameter] + $context);
5658
}
5759
}
5860

0 commit comments

Comments
 (0)