summaryrefslogtreecommitdiff
path: root/vendor/doctrine/orm/src/Mapping/Builder/OneToManyAssociationBuilder.php
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/doctrine/orm/src/Mapping/Builder/OneToManyAssociationBuilder.php')
-rw-r--r--vendor/doctrine/orm/src/Mapping/Builder/OneToManyAssociationBuilder.php46
1 files changed, 46 insertions, 0 deletions
diff --git a/vendor/doctrine/orm/src/Mapping/Builder/OneToManyAssociationBuilder.php b/vendor/doctrine/orm/src/Mapping/Builder/OneToManyAssociationBuilder.php
new file mode 100644
index 0000000..077c558
--- /dev/null
+++ b/vendor/doctrine/orm/src/Mapping/Builder/OneToManyAssociationBuilder.php
@@ -0,0 +1,46 @@
1<?php
2
3declare(strict_types=1);
4
5namespace Doctrine\ORM\Mapping\Builder;
6
7/**
8 * OneToMany Association Builder
9 *
10 * @link www.doctrine-project.com
11 */
12class OneToManyAssociationBuilder extends AssociationBuilder
13{
14 /**
15 * @psalm-param array<string, string> $fieldNames
16 *
17 * @return $this
18 */
19 public function setOrderBy(array $fieldNames): static
20 {
21 $this->mapping['orderBy'] = $fieldNames;
22
23 return $this;
24 }
25
26 /** @return $this */
27 public function setIndexBy(string $fieldName): static
28 {
29 $this->mapping['indexBy'] = $fieldName;
30
31 return $this;
32 }
33
34 public function build(): ClassMetadataBuilder
35 {
36 $mapping = $this->mapping;
37 if ($this->joinColumns) {
38 $mapping['joinColumns'] = $this->joinColumns;
39 }
40
41 $cm = $this->builder->getClassMetadata();
42 $cm->mapOneToMany($mapping);
43
44 return $this->builder;
45 }
46}