Skip to content

Commit

Permalink
minor tweak
Browse files Browse the repository at this point in the history
  • Loading branch information
lsmith77 committed Mar 12, 2012
1 parent a34288d commit cfa35f5
Showing 1 changed file with 12 additions and 13 deletions.
25 changes: 12 additions & 13 deletions lib/Doctrine/ODM/PHPCR/UnitOfWork.php
Expand Up @@ -787,14 +787,13 @@ private function computeChangeSet(ClassMetadata $class, $document)
}

$oid = spl_object_hash($document);
if (!isset($this->originalData[$oid])) {
$isNew = !isset($this->originalData[$oid]);

if ($isNew) {
// Document is New and should be inserted
$this->originalData[$oid] = $actualData;
$this->documentChangesets[$oid] = $actualData;
$this->scheduledInserts[$oid] = $document;
$computeChanges = false;
} else {
$computeChanges = true;
}

if ($class->parentMapping && isset($actualData[$class->parentMapping])) {
Expand Down Expand Up @@ -831,15 +830,7 @@ private function computeChangeSet(ClassMetadata $class, $document)
}
}

foreach ($class->referrersMappings as $name => $referrerMapping) {
if ($this->originalData[$oid][$name]) {
foreach ($this->originalData[$oid][$name] as $referrer) {
$this->computeReferrerChanges($referrer);
}
}
}

if ($computeChanges) {
if (!$isNew) {
if (isset($this->originalData[$oid][$class->nodename])
&& isset($actualData[$class->nodename])
&& $this->originalData[$oid][$class->nodename] !== $actualData[$class->nodename]
Expand Down Expand Up @@ -894,6 +885,14 @@ private function computeChangeSet(ClassMetadata $class, $document)
$this->documentChangesets[$oid] = $actualData;
$this->scheduledUpdates[$oid] = $document;
}

foreach ($class->referrersMappings as $name => $referrerMapping) {
if ($this->originalData[$oid][$name]) {
foreach ($this->originalData[$oid][$name] as $referrer) {
$this->computeReferrerChanges($referrer);
}
}
}
}
}

Expand Down

0 comments on commit cfa35f5

Please sign in to comment.