Open2

Symfony - @ApiResource.collectionOperations.get

ta.toshiota.toshio
CollectionDataProvider.php:59, ApiPlatform\Core\Bridge\Doctrine\Orm\CollectionDataProvider->getCollection()
TraceableChainCollectionDataProvider.php:65, ApiPlatform\Core\Bridge\Symfony\Bundle\DataProvider\TraceableChainCollectionDataProvider->getCollection()
OperationDataProviderTrait.php:52, ApiPlatform\Core\EventListener\ReadListener->getCollectionData()
ReadListener.php:87, ApiPlatform\Core\EventListener\ReadListener->onKernelRequest()
WrappedListener.php:117, Symfony\Component\EventDispatcher\Debug\WrappedListener->__invoke()
EventDispatcher.php:230, Symfony\Component\EventDispatcher\EventDispatcher->callListeners()
EventDispatcher.php:59, Symfony\Component\EventDispatcher\EventDispatcher->dispatch()
TraceableEventDispatcher.php:151, Symfony\Component\HttpKernel\Debug\TraceableEventDispatcher->dispatch()
HttpKernel.php:133, Symfony\Component\HttpKernel\HttpKernel->handleRaw()
HttpKernel.php:79, Symfony\Component\HttpKernel\HttpKernel->handle()
Kernel.php:195, App\Kernel->handle()
index.php:37, {main}()
ta.toshiota.toshio

ApiPlatform\Core\Bridge\Doctrine\Orm\CollectionDataProvider.php

 /**
  * {@inheritdoc}
  *
  * @throws RuntimeException
  */
public function getCollection(string $resourceClass, string $operationName = null, array $context = [])
{
    /** @var EntityManagerInterface $manager */
    $manager = $this->managerRegistry->getManagerForClass($resourceClass);

    $repository = $manager->getRepository($resourceClass);
    if (!method_exists($repository, 'createQueryBuilder')) {
        throw new RuntimeException('The repository class must have a "createQueryBuilder" method.');
    }

    $queryBuilder = $repository->createQueryBuilder('o');
    $queryNameGenerator = new QueryNameGenerator();
    foreach ($this->collectionExtensions as $extension) {
        $extension->applyToCollection($queryBuilder, $queryNameGenerator, $resourceClass, $operationName, $context);

        if ($extension instanceof QueryResultCollectionExtensionInterface && $extension->supportsResult($resourceClass, $operationName, $context)) {
            return $extension->getResult($queryBuilder, $resourceClass, $operationName, $context);
        }
    }

    return $queryBuilder->getQuery()->getResult();
}