@@ 171-178 (lines=8) @@ | ||
168 | $updateData['$unset'][$mapping['name']] = true; |
|
169 | ||
170 | // Update existing embedded document |
|
171 | } else { |
|
172 | $update = $this->prepareUpdateData($new); |
|
173 | foreach ($update as $cmd => $values) { |
|
174 | foreach ($values as $key => $value) { |
|
175 | $updateData[$cmd][$mapping['name'] . '.' . $key] = $value; |
|
176 | } |
|
177 | } |
|
178 | } |
|
179 | ||
180 | // @ReferenceMany, @EmbedMany |
|
181 | } elseif (isset($mapping['association']) && $mapping['type'] === 'many' && $new) { |
|
@@ 264-272 (lines=9) @@ | ||
261 | // If we have a new embedded document then lets set the whole thing |
|
262 | if ($new && $this->uow->isScheduledForInsert($new)) { |
|
263 | $updateData['$set'][$mapping['name']] = $this->prepareEmbeddedDocumentValue($mapping, $new); |
|
264 | } elseif ($new) { |
|
265 | // Update existing embedded document |
|
266 | $update = $this->prepareUpsertData($new); |
|
267 | foreach ($update as $cmd => $values) { |
|
268 | foreach ($values as $key => $value) { |
|
269 | $updateData[$cmd][$mapping['name'] . '.' . $key] = $value; |
|
270 | } |
|
271 | } |
|
272 | } |
|
273 | ||
274 | // @ReferenceOne |
|
275 | } elseif (isset($mapping['association']) && $mapping['association'] === ClassMetadata::REFERENCE_ONE) { |