@@ 78-99 (lines=22) @@ | ||
75 | if (!array_key_exists($foreignType, $this->relations)) { |
|
76 | continue; |
|
77 | } |
|
78 | foreach ($raw as $dependentProperty => $dependentPayload) { |
|
79 | if ($keyName == $dependentPayload['local']) { |
|
80 | $dependentMult = $dependentPayload['multiplicity']; |
|
81 | // generate forward and reverse relations |
|
82 | list($forward, $reverse) = $this->calculateRoundTripRelationsGenForwardReverse( |
|
83 | $principalType, |
|
84 | $principalMult, |
|
85 | $principalProperty, |
|
86 | $dependentType, |
|
87 | $dependentMult, |
|
88 | $dependentProperty |
|
89 | ); |
|
90 | if (!in_array($forward, $result)) { |
|
91 | // add forward relation |
|
92 | $result[] = $forward; |
|
93 | } |
|
94 | if (!in_array($reverse, $result)) { |
|
95 | // add reverse relation |
|
96 | $result[] = $reverse; |
|
97 | } |
|
98 | } |
|
99 | } |
|
100 | } |
|
101 | } |
|
102 | } |
|
@@ 139-160 (lines=22) @@ | ||
136 | if ($targType != $principalType) { |
|
137 | continue; |
|
138 | } |
|
139 | foreach ($interDeets as $dependentProperty => $finalDeets) { |
|
140 | if ($keyName !== $finalDeets['local']) { |
|
141 | continue; |
|
142 | } |
|
143 | $dependentMult = $finalDeets['multiplicity']; |
|
144 | list($forward, $reverse) = $this->calculateRoundTripRelationsGenForwardReverse( |
|
145 | $principalType, |
|
146 | $principalMult, |
|
147 | $principalProperty, |
|
148 | $dependentType, |
|
149 | $dependentMult, |
|
150 | $dependentProperty |
|
151 | ); |
|
152 | if (!in_array($forward, $result)) { |
|
153 | // add forward relation |
|
154 | $result[] = $forward; |
|
155 | } |
|
156 | if (!in_array($reverse, $result)) { |
|
157 | // add reverse relation |
|
158 | $result[] = $reverse; |
|
159 | } |
|
160 | } |
|
161 | } |
|
162 | } |
|
163 | } |