You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2013/07/24 07:43:27 UTC

[3/4] git commit: ISIS-476: added guard to DataNucleusSimplePersistAlgorithm

ISIS-476: added guard to DataNucleusSimplePersistAlgorithm


Project: http://git-wip-us.apache.org/repos/asf/isis/repo
Commit: http://git-wip-us.apache.org/repos/asf/isis/commit/51690aab
Tree: http://git-wip-us.apache.org/repos/asf/isis/tree/51690aab
Diff: http://git-wip-us.apache.org/repos/asf/isis/diff/51690aab

Branch: refs/heads/master
Commit: 51690aab0b67c216c5aa59fde74a579e6a2fb782
Parents: a5ad5dc
Author: Dan Haywood <da...@apache.org>
Authored: Tue Jul 23 06:08:20 2013 +0100
Committer: Dan Haywood <da...@apache.org>
Committed: Tue Jul 23 06:08:20 2013 +0100

----------------------------------------------------------------------
 .../persistence/spi/DataNucleusSimplePersistAlgorithm.java       | 4 ++++
 1 file changed, 4 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/isis/blob/51690aab/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/DataNucleusSimplePersistAlgorithm.java
----------------------------------------------------------------------
diff --git a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/DataNucleusSimplePersistAlgorithm.java b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/DataNucleusSimplePersistAlgorithm.java
index 80a0dc2..0443d01 100644
--- a/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/DataNucleusSimplePersistAlgorithm.java
+++ b/component/objectstore/jdo/jdo-datanucleus/src/main/java/org/apache/isis/objectstore/jdo/datanucleus/persistence/spi/DataNucleusSimplePersistAlgorithm.java
@@ -60,6 +60,10 @@ public class DataNucleusSimplePersistAlgorithm extends PersistAlgorithmAbstract
             LOG.info("persist " + adapter);
         }
         CallbackUtils.callCallback(adapter, PersistingCallbackFacet.class);
+        // the callback might have caused the adapter to become persistent.
+        if (alreadyPersistedOrNotPersistable(adapter)) {
+            return;
+        }
         toPersistObjectSet.addCreateObjectCommand(adapter);
     }