| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051 |
- <?php
- declare(strict_types=1);
- namespace App\Doctrine;
- use ApiPlatform\Doctrine\Orm\Extension\QueryCollectionExtensionInterface;
- use ApiPlatform\Doctrine\Orm\Extension\QueryItemExtensionInterface;
- use ApiPlatform\Doctrine\Orm\Util\QueryNameGeneratorInterface;
- use ApiPlatform\Metadata\Operation;
- use Doctrine\ORM\QueryBuilder;
- use Exception;
- /**
- * Classe ... qui ...
- */
- abstract class AbstractExtension implements QueryCollectionExtensionInterface, QueryItemExtensionInterface
- {
- /**
- * @param QueryBuilder $queryBuilder
- * @param QueryNameGeneratorInterface $queryNameGenerator
- * @param string $resourceClass
- * @param Operation|null $operation
- * @param mixed[] $context
- * @return void
- * @throws Exception
- */
- public function applyToCollection(QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, string $resourceClass, Operation $operation = null, array $context = []): void
- {
- $this->addWhere($queryBuilder, $resourceClass);
- }
- /**
- * @param QueryBuilder $queryBuilder
- * @param QueryNameGeneratorInterface $queryNameGenerator
- * @param string $resourceClass
- * @param list<int> $identifiers
- * @param Operation|null $operation
- * @param mixed[] $context
- * @return void
- * @throws Exception
- */
- public function applyToItem(QueryBuilder $queryBuilder, QueryNameGeneratorInterface $queryNameGenerator, string $resourceClass, array $identifiers, Operation $operation = null, array $context = []): void
- {
- $this->addWhere($queryBuilder, $resourceClass);
- }
- protected function addWhere(QueryBuilder $queryBuilder, string $resourceClass): void
- {
- throw new Exception('need override addWhere function', 500);
- }
- }
|