diff --git a/CHANGELOG.md b/CHANGELOG.md index 47df3d53557..aa00b184c1b 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,7 @@ ## 2.7.0 * **BC**: Change `api_platform.listener.request.add_format` priority from 7 to 28 to execute it before firewall (priority 8) (#3599) +* **BC**: Use `@final` annotation in ORM filters (#4109) * Doctrine: Better exception to find which resource is linked to an exception (#3965) * Doctrine: Allow mixed type value for date filter (notice if invalid) (#3870) * Doctrine: Add `nulls_always_first` and `nulls_always_last` to `nulls_comparison` in order filter (#4103) diff --git a/src/Bridge/Doctrine/Orm/Filter/BooleanFilter.php b/src/Bridge/Doctrine/Orm/Filter/BooleanFilter.php index 3203f18b976..8c136c2c155 100644 --- a/src/Bridge/Doctrine/Orm/Filter/BooleanFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/BooleanFilter.php @@ -29,6 +29,8 @@ * * @author Amrouche Hamza * @author Teoh Han Hui + * + * @final */ class BooleanFilter extends AbstractContextAwareFilter { diff --git a/src/Bridge/Doctrine/Orm/Filter/DateFilter.php b/src/Bridge/Doctrine/Orm/Filter/DateFilter.php index 9970eadf3b4..b6010170f90 100644 --- a/src/Bridge/Doctrine/Orm/Filter/DateFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/DateFilter.php @@ -25,6 +25,8 @@ * * @author Kévin Dunglas * @author Théo FIDRY + * + * @final */ class DateFilter extends AbstractContextAwareFilter implements DateFilterInterface { diff --git a/src/Bridge/Doctrine/Orm/Filter/ExistsFilter.php b/src/Bridge/Doctrine/Orm/Filter/ExistsFilter.php index 209adbef92a..24f86d31a35 100644 --- a/src/Bridge/Doctrine/Orm/Filter/ExistsFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/ExistsFilter.php @@ -37,6 +37,8 @@ * Interpretation: filter products which have a brand * * @author Teoh Han Hui + * + * @final */ class ExistsFilter extends AbstractContextAwareFilter implements ExistsFilterInterface { @@ -74,7 +76,7 @@ protected function filterProperty(string $property, $value, QueryBuilder $queryB if (\func_num_args() > 6) { $context = func_get_arg(6); } else { - if (__CLASS__ !== static::class) { + if (__CLASS__ !== static::class) { /** @phpstan-ignore-line The class was not final before */ $r = new \ReflectionMethod($this, __FUNCTION__); if (__CLASS__ !== $r->getDeclaringClass()->getName()) { @trigger_error(sprintf('Method %s() will have a seventh `$context` argument in version API Platform 3.0. Not defining it is deprecated since API Platform 2.5.', __FUNCTION__), \E_USER_DEPRECATED); diff --git a/src/Bridge/Doctrine/Orm/Filter/NumericFilter.php b/src/Bridge/Doctrine/Orm/Filter/NumericFilter.php index eb5f0a692e7..1cbf3e2c507 100644 --- a/src/Bridge/Doctrine/Orm/Filter/NumericFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/NumericFilter.php @@ -28,6 +28,8 @@ * * @author Amrouche Hamza * @author Teoh Han Hui + * + * @final */ class NumericFilter extends AbstractContextAwareFilter { diff --git a/src/Bridge/Doctrine/Orm/Filter/OrderFilter.php b/src/Bridge/Doctrine/Orm/Filter/OrderFilter.php index e9829396abc..7eecd52d7b1 100644 --- a/src/Bridge/Doctrine/Orm/Filter/OrderFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/OrderFilter.php @@ -36,6 +36,8 @@ * * @author Kévin Dunglas * @author Théo FIDRY + * + * @final */ class OrderFilter extends AbstractContextAwareFilter implements OrderFilterInterface { diff --git a/src/Bridge/Doctrine/Orm/Filter/RangeFilter.php b/src/Bridge/Doctrine/Orm/Filter/RangeFilter.php index 394c65f9bc1..ead733e20e2 100644 --- a/src/Bridge/Doctrine/Orm/Filter/RangeFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/RangeFilter.php @@ -22,6 +22,8 @@ * Filters the collection by range. * * @author Lee Siong Chan + * + * @final */ class RangeFilter extends AbstractContextAwareFilter implements RangeFilterInterface { diff --git a/src/Bridge/Doctrine/Orm/Filter/SearchFilter.php b/src/Bridge/Doctrine/Orm/Filter/SearchFilter.php index 858406d421e..4ce6cd4ab75 100644 --- a/src/Bridge/Doctrine/Orm/Filter/SearchFilter.php +++ b/src/Bridge/Doctrine/Orm/Filter/SearchFilter.php @@ -35,6 +35,8 @@ * Filter the collection by given properties. * * @author Kévin Dunglas + * + * @final */ class SearchFilter extends AbstractContextAwareFilter implements SearchFilterInterface {