Skip to content

Commit

Permalink
Fix ORM driver with generic entity repository
Browse files Browse the repository at this point in the history
  • Loading branch information
loic425 committed Feb 14, 2025
1 parent 5dd7383 commit ec2e558
Showing 1 changed file with 2 additions and 7 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -59,27 +59,22 @@ protected function addRepository(ContainerBuilder $container, MetadataInterface
$definition = new Definition($repositoryClass);
$definition->setPublic(true);
$definition->addTag('sylius.repository');
$container->setDefinition($serviceId, $definition);

if ($repositoryClass === EntityRepository::class) {
/** @var string $entityClass */
$entityClass = $metadata->getClass('model');

$definition->setFactory([$managerReference, 'getRepository']);
$definition->setArguments([$entityClass]);

$container->setDefinition($serviceId, $definition);
$definition->setArguments([$managerReference, $this->getClassMetadataDefinition($metadata)]);

$genericEntities[] = $entityClass;
} else {
if (is_a($repositoryClass, ServiceEntityRepository::class, true)) {
$definition->setArguments([new Reference('doctrine')]);
$container->setDefinition($serviceId, $definition);
} else {
$definition->setArguments([$managerReference, $this->getClassMetadataDefinition($metadata)]);
}

$container->setDefinition($serviceId, $definition);

$doctrineDefinition = new Definition($repositoryClass);
$doctrineDefinition->addTag(ServiceRepositoryCompilerPass::REPOSITORY_SERVICE_TAG);
$doctrineDefinition->setFactory([new Reference('service_container'), 'get']);
Expand Down

0 comments on commit ec2e558

Please sign in to comment.