| @@ 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 | } |
|