Skip to content

Commit 14a2cf2

Browse files
committed
Merge branch '2.x' into 'master'
* Add missing assocation_many_to_one_owning and assocation_many_to_one_unidirectional blocks
2 parents 83e1caf + 94c1f58 commit 14a2cf2

File tree

2 files changed

+55
-27
lines changed

2 files changed

+55
-27
lines changed

src/EntityGenerator/EntityGenerator.php

Lines changed: 47 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -22,8 +22,12 @@
2222
use Doctrine\ORM\Mapping\ClassMetadata;
2323
use Doctrine\ORM\Mapping\EmbeddedClassMapping;
2424
use Doctrine\ORM\Mapping\FieldMapping;
25-
use Doctrine\ORM\Mapping\InverseSideMapping;
26-
use Doctrine\ORM\Mapping\OwningSideMapping;
25+
use Doctrine\ORM\Mapping\ManyToManyInverseSideMapping;
26+
use Doctrine\ORM\Mapping\ManyToManyOwningSideMapping;
27+
use Doctrine\ORM\Mapping\ManyToOneAssociationMapping;
28+
use Doctrine\ORM\Mapping\OneToManyAssociationMapping;
29+
use Doctrine\ORM\Mapping\OneToOneInverseSideMapping;
30+
use Doctrine\ORM\Mapping\OneToOneOwningSideMapping;
2731
use Doctrine\Persistence\ManagerRegistry;
2832
use Ecommit\DoctrineEntitiesGeneratorBundle\Attribute\GenerateEntityTemplate;
2933
use Ecommit\DoctrineEntitiesGeneratorBundle\Entity\EntityInitializerInterface;
@@ -314,53 +318,69 @@ protected function addEmbedded(GenerateEntityRequest $request, string $fieldName
314318

315319
protected function addAssociation(GenerateEntityRequest $request, AssociationMapping $associationMapping): void
316320
{
317-
if ($associationMapping->type() & ClassMetadata::TO_ONE && $associationMapping instanceof InverseSideMapping) {
318-
$this->addAssociationToOne(
319-
$request,
320-
$associationMapping,
321-
'assocation_one_to_one_reverse',
322-
$this->buildMethodName(self::TYPE_SET, $associationMapping->mappedBy)
323-
);
324-
} elseif ($associationMapping->type() & ClassMetadata::TO_ONE && $associationMapping instanceof OwningSideMapping) {
325-
$this->addAssociationToOne(
326-
$request,
327-
$associationMapping,
328-
'assocation_one_to_one_owning',
329-
null
330-
);
331-
} elseif ($associationMapping->type() & ClassMetadata::TO_ONE) {
332-
$this->addAssociationToOne(
333-
$request,
334-
$associationMapping,
335-
'assocation_one_to_one_unidirectional',
336-
null
337-
);
321+
if ($associationMapping->type() & ClassMetadata::TO_ONE) {
322+
if ($associationMapping instanceof OneToOneInverseSideMapping) {
323+
$this->addAssociationToOne(
324+
$request,
325+
$associationMapping,
326+
'assocation_one_to_one_reverse',
327+
$this->buildMethodName(self::TYPE_SET, $associationMapping->mappedBy)
328+
);
329+
} elseif ($associationMapping instanceof OneToOneOwningSideMapping && $associationMapping->inversedBy) {
330+
$this->addAssociationToOne(
331+
$request,
332+
$associationMapping,
333+
'assocation_one_to_one_owning',
334+
null
335+
);
336+
} elseif ($associationMapping instanceof OneToOneOwningSideMapping) {
337+
$this->addAssociationToOne(
338+
$request,
339+
$associationMapping,
340+
'assocation_one_to_one_unidirectional',
341+
null
342+
);
343+
} elseif ($associationMapping instanceof ManyToOneAssociationMapping && $associationMapping->inversedBy) {
344+
$this->addAssociationToOne(
345+
$request,
346+
$associationMapping,
347+
'assocation_many_to_one_owning',
348+
null
349+
);
350+
} elseif ($associationMapping instanceof ManyToOneAssociationMapping) {
351+
$this->addAssociationToOne(
352+
$request,
353+
$associationMapping,
354+
'assocation_many_to_one_unidirectional',
355+
null
356+
);
357+
}
338358
} elseif ($associationMapping->type() & ClassMetadata::TO_MANY) {
339-
if ($associationMapping->type() & ClassMetadata::ONE_TO_MANY && $associationMapping instanceof InverseSideMapping) {
359+
if ($associationMapping instanceof OneToManyAssociationMapping) {
340360
$this->addAssociationToMany(
341361
$request,
342362
$associationMapping,
343363
'assocation_one_to_many_reverse',
344364
$this->buildMethodName(self::TYPE_SET, $associationMapping->mappedBy),
345365
$this->buildMethodName(self::TYPE_SET, $associationMapping->mappedBy)
346366
);
347-
} elseif ($associationMapping->type() & ClassMetadata::MANY_TO_MANY && $associationMapping instanceof InverseSideMapping) {
367+
} elseif ($associationMapping instanceof ManyToManyInverseSideMapping) {
348368
$this->addAssociationToMany(
349369
$request,
350370
$associationMapping,
351371
'assocation_many_to_many_reverse',
352372
$this->buildMethodName(self::TYPE_ADD, $associationMapping->mappedBy),
353373
$this->buildMethodName(self::TYPE_REMOVE, $associationMapping->mappedBy)
354374
);
355-
} elseif ($associationMapping->type() & ClassMetadata::MANY_TO_MANY && $associationMapping instanceof OwningSideMapping) {
375+
} elseif ($associationMapping instanceof ManyToManyOwningSideMapping && $associationMapping->inversedBy) {
356376
$this->addAssociationToMany(
357377
$request,
358378
$associationMapping,
359379
'assocation_many_to_many_owning',
360380
null,
361381
null
362382
);
363-
} elseif ($associationMapping->type() & ClassMetadata::MANY_TO_MANY) {
383+
} elseif ($associationMapping instanceof ManyToManyOwningSideMapping) {
364384
$this->addAssociationToMany(
365385
$request,
366386
$associationMapping,

templates/Theme/base.php.twig

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -130,6 +130,14 @@
130130
}
131131
{% endblock %}
132132

133+
{%- block assocation_many_to_one_owning_set -%}
134+
{{ block('assocation_one_to_one_unidirectional_set') }}
135+
{%- endblock -%}
136+
137+
{%- block assocation_many_to_one_unidirectional_set -%}
138+
{{ block('assocation_one_to_one_unidirectional_set') }}
139+
{%- endblock -%}
140+
133141
{# Associations To Many #}
134142

135143
{% block assocation_to_many_get %}

0 commit comments

Comments
 (0)