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 2012/07/09 23:05:19 UTC
svn commit: r1359393 [2/3] - in /incubator/isis/trunk/framework:
core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/
core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/
core/metamodel/src/main/java/org/apache/isis/core/...
Modified: incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/ResolveState_RespondToChangesInPersistentObjectsTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/ResolveState_RespondToChangesInPersistentObjectsTest.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/ResolveState_RespondToChangesInPersistentObjectsTest.java (original)
+++ incubator/isis/trunk/framework/core/metamodel/src/test/java/org/apache/isis/core/metamodel/adapter/ResolveState_RespondToChangesInPersistentObjectsTest.java Mon Jul 9 21:05:16 2012
@@ -22,12 +22,8 @@ package org.apache.isis.core.metamodel.a
import static org.apache.isis.core.metamodel.adapter.ResolveState.DESTROYED;
import static org.apache.isis.core.metamodel.adapter.ResolveState.GHOST;
import static org.apache.isis.core.metamodel.adapter.ResolveState.NEW;
-import static org.apache.isis.core.metamodel.adapter.ResolveState.PART_RESOLVED;
import static org.apache.isis.core.metamodel.adapter.ResolveState.RESOLVED;
import static org.apache.isis.core.metamodel.adapter.ResolveState.RESOLVING;
-import static org.apache.isis.core.metamodel.adapter.ResolveState.RESOLVING_PART;
-import static org.apache.isis.core.metamodel.adapter.ResolveState.SERIALIZING_GHOST;
-import static org.apache.isis.core.metamodel.adapter.ResolveState.SERIALIZING_PART_RESOLVED;
import static org.apache.isis.core.metamodel.adapter.ResolveState.SERIALIZING_RESOLVED;
import static org.apache.isis.core.metamodel.adapter.ResolveState.SERIALIZING_TRANSIENT;
import static org.apache.isis.core.metamodel.adapter.ResolveState.TRANSIENT;
@@ -49,8 +45,14 @@ public class ResolveState_RespondToChang
@Parameters
public static Collection<Object[]> data() {
- return Arrays.asList(new Object[][] { { true, GHOST }, { false, NEW }, { true, PART_RESOLVED }, { true, RESOLVED }, { false, RESOLVING }, { false, RESOLVING_PART }, { false, TRANSIENT }, { true, DESTROYED }, { false, UPDATING }, { false, SERIALIZING_TRANSIENT },
- { false, SERIALIZING_GHOST }, { false, SERIALIZING_PART_RESOLVED }, { false, SERIALIZING_RESOLVED }, { true, VALUE }, });
+ return Arrays.asList(new Object[][] { { true, GHOST }, { false, NEW },
+ // { true, PART_RESOLVED },
+ { true, RESOLVED }, { false, RESOLVING },
+ // { false, RESOLVING_PART },
+ { false, TRANSIENT }, { true, DESTROYED }, { false, UPDATING }, { false, SERIALIZING_TRANSIENT },
+ // { false, SERIALIZING_GHOST },
+ // { false, SERIALIZING_PART_RESOLVED },
+ { false, SERIALIZING_RESOLVED }, { true, VALUE }, });
}
private final boolean whetherIs;
Modified: incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/DisabledFacetImpl.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/DisabledFacetImpl.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/DisabledFacetImpl.java (original)
+++ incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/disable/DisabledFacetImpl.java Mon Jul 9 21:05:16 2012
@@ -43,7 +43,7 @@ public class DisabledFacetImpl extends D
}
if (value() == When.UNTIL_PERSISTED) {
- return targetAdapter.isTransient() ? "Disabled until persisted" : null;
+ return targetAdapter.representsTransient() ? "Disabled until persisted" : null;
} else if (value() == When.ONCE_PERSISTED) {
return targetAdapter.isPersistent() ? "Disabled once persisted" : null;
}
Modified: incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/HiddenFacetImpl.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/HiddenFacetImpl.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/HiddenFacetImpl.java (original)
+++ incubator/isis/trunk/framework/core/progmodel/src/main/java/org/apache/isis/core/progmodel/facets/members/hide/HiddenFacetImpl.java Mon Jul 9 21:05:16 2012
@@ -43,7 +43,7 @@ public class HiddenFacetImpl extends Hid
}
if (value() == When.UNTIL_PERSISTED) {
- return targetAdapter.isTransient() ? "Hidden until persisted" : null;
+ return targetAdapter.representsTransient() ? "Hidden until persisted" : null;
} else if (value() == When.ONCE_PERSISTED) {
return targetAdapter.isPersistent() ? "Hidden once persisted" : null;
}
Modified: incubator/isis/trunk/framework/progmodels/wrapper/wrapper-metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/progmodels/wrapper/wrapper-metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/progmodels/wrapper/wrapper-metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java (original)
+++ incubator/isis/trunk/framework/progmodels/wrapper/wrapper-metamodel/src/main/java/org/apache/isis/progmodel/wrapper/metamodel/internal/DomainObjectInvocationHandler.java Mon Jul 9 21:05:16 2012
@@ -292,7 +292,7 @@ public class DomainObjectInvocationHandl
notifyListenersAndVetoIfRequired(interactionResult);
if (getExecutionMode() == ExecutionMode.EXECUTE) {
- if (targetAdapter.isTransient()) {
+ if (targetAdapter.representsTransient()) {
getObjectPersistor().makePersistent(targetAdapter);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/dflt/src/main/java/org/apache/isis/runtimes/dflt/objectstores/dflt/InMemoryObjectStore.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/dflt/src/main/java/org/apache/isis/runtimes/dflt/objectstores/dflt/InMemoryObjectStore.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/dflt/src/main/java/org/apache/isis/runtimes/dflt/objectstores/dflt/InMemoryObjectStore.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/dflt/src/main/java/org/apache/isis/runtimes/dflt/objectstores/dflt/InMemoryObjectStore.java Mon Jul 9 21:05:16 2012
@@ -260,8 +260,8 @@ public class InMemoryObjectStore impleme
if (adapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
LOG.debug("resolve " + adapter);
- PersistorUtil.start(adapter, ResolveState.RESOLVING);
- PersistorUtil.end(adapter); // moves to RESOLVED
+ PersistorUtil.startStateTransition(adapter, ResolveState.RESOLVING);
+ PersistorUtil.endStateTransition(adapter); // moves to RESOLVED
} else {
LOG.warn("resolveImmediately ignored, " + "adapter's current state is: " + adapter.getResolveState() + " ; oid: " + adapter.getOid());
}
@@ -270,8 +270,8 @@ public class InMemoryObjectStore impleme
@Override
public void resolveField(final ObjectAdapter object, final ObjectAssociation field) throws ObjectPersistenceException {
final ObjectAdapter reference = field.get(object);
- PersistorUtil.start(reference, ResolveState.RESOLVING);
- PersistorUtil.end(reference);
+ PersistorUtil.startStateTransition(reference, ResolveState.RESOLVING);
+ PersistorUtil.endStateTransition(reference);
}
@@ -325,8 +325,8 @@ public class InMemoryObjectStore impleme
private static List<ObjectAdapter> resolved(final List<ObjectAdapter> instances) {
for (ObjectAdapter adapter: instances) {
if (adapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
- PersistorUtil.start(adapter, ResolveState.RESOLVING);
- PersistorUtil.end(adapter);
+ PersistorUtil.startStateTransition(adapter, ResolveState.RESOLVING);
+ PersistorUtil.endStateTransition(adapter);
}
}
return instances;
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusObjectStore.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusObjectStore.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusObjectStore.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusObjectStore.java Mon Jul 9 21:05:16 2012
@@ -397,7 +397,7 @@ public class DataNucleusObjectStore impl
LOG.debug("resolveImmediately; oid=" + adapter.getOid().enString());
}
- if (adapter.getResolveState().isResolved()) {
+ if (adapter.isResolved()) {
if (LOG.isDebugEnabled()) {
LOG.debug("; already resolved - ignoring");
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/IsisLifecycleListener.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/IsisLifecycleListener.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/IsisLifecycleListener.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/IsisLifecycleListener.java Mon Jul 9 21:05:16 2012
@@ -278,7 +278,7 @@ public class IsisLifecycleListener imple
if(!pojo.jdoIsPersistent()) {
// make sure the adapter is transient
- if (!adapter.getResolveState().isTransient()) {
+ if (!adapter.getResolveState().representsTransient()) {
throw new IsisException(MessageFormat.format("adapter is in invalid state; should be {0} but is {1}", ResolveState.TRANSIENT, adapter.getResolveState()));
}
@@ -289,7 +289,7 @@ public class IsisLifecycleListener imple
} else {
// make sure the adapter is persistent
- if (!adapter.getResolveState().isPersistent()) {
+ if (!adapter.getResolveState().representsPersistent()) {
throw new IsisException(MessageFormat.format("adapter is in invalid state; should be in a persistent state but is {1}", ResolveState.RESOLVED, adapter.getResolveState()));
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/spi/ResolveStateUtil.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/spi/ResolveStateUtil.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/spi/ResolveStateUtil.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/main/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/persistence/spi/ResolveStateUtil.java Mon Jul 9 21:05:16 2012
@@ -19,17 +19,16 @@ public final class ResolveStateUtil {
// move to ResolveState.RESOLVED;
- if (adapter.getResolveState().isResolving()) { // either RESOLVING or
- // PART_RESOLVING
+ if (adapter.isResolving()) {
adapter.changeState(ResolveState.RESOLVED);
- } else if (adapter.getResolveState().isResolved()) {
+ } else if (adapter.isResolved()) {
// nothing to do.
- } else if (adapter.getResolveState().isPartlyResolved()) {
- adapter.changeState(ResolveState.RESOLVED);
+// } else if (adapter.getResolveState().isPartlyResolved()) {
+// adapter.changeState(ResolveState.RESOLVED);
- } else if (adapter.getResolveState().isUpdating()) {
+ } else if (adapter.isUpdating()) {
adapter.changeState(ResolveState.RESOLVED);
}
}
@@ -37,53 +36,53 @@ public final class ResolveStateUtil {
private static void moveUpToResolving(final ObjectAdapter adapter) {
// move these on so we can get to part_resolved or resolved.
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
adapter.changeState(ResolveState.RESOLVING);
- } else if (adapter.getResolveState().isNew()) {
+ } else if (adapter.isNew()) {
adapter.changeState(ResolveState.GHOST);
adapter.changeState(ResolveState.RESOLVING);
- } else if (adapter.getResolveState().isGhost()) {
+ } else if (adapter.isGhost()) {
adapter.changeState(ResolveState.RESOLVING);
}
}
public static void markAsGhost(final ObjectAdapter adapter) {
- if (adapter.getResolveState().isValue()) {
+ if (adapter.isValue()) {
// TODO: what should we do here? throw exception?
}
- if (adapter.getResolveState().isDestroyed()) {
+ if (adapter.isDestroyed()) {
// TODO: what should we do here? throw exception?
}
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isNew()) {
+ } else if (adapter.isNew()) {
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isPartlyResolved()) {
- adapter.changeState(ResolveState.RESOLVING);
- adapter.changeState(ResolveState.RESOLVED);
- adapter.changeState(ResolveState.GHOST);
+// } else if (adapter.getResolveState().isPartlyResolved()) {
+// adapter.changeState(ResolveState.RESOLVING);
+// adapter.changeState(ResolveState.RESOLVED);
+// adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isResolving()) {
+ } else if (adapter.isResolving()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isUpdating()) {
+ } else if (adapter.isUpdating()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isResolved()) {
+ } else if (adapter.isResolved()) {
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isGhost()) {
+ } else if (adapter.isGhost()) {
// nothing to do.
}
}
@@ -91,10 +90,10 @@ public final class ResolveStateUtil {
public static void markAsUpdating(final ObjectAdapter adapter) {
- if (adapter.getResolveState() == ResolveState.TRANSIENT) {
+ if (adapter.isTransient()) {
adapter.changeState(ResolveState.RESOLVED);
}
- if (adapter.getResolveState() == ResolveState.RESOLVED) {
+ if (adapter.isResolved()) {
adapter.changeState(ResolveState.UPDATING);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/test/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusPersistenceMechanismInstallerTest_persist.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/test/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusPersistenceMechanismInstallerTest_persist.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/test/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusPersistenceMechanismInstallerTest_persist.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jdo/jdo-datanucleus/src/test/java/org/apache/isis/runtimes/dflt/objectstores/datanucleus/DataNucleusPersistenceMechanismInstallerTest_persist.java Mon Jul 9 21:05:16 2012
@@ -71,7 +71,7 @@ public class DataNucleusPersistenceMecha
PrimitiveValuedEntity entity = repo.newEntity();
ObjectAdapter adapter = iswf.adapterFor(entity);
- assertThat(adapter.isTransient(), is(true));
+ assertThat(adapter.representsTransient(), is(true));
assertThat(adapter.getResolveState(), is(ResolveState.TRANSIENT));
assertThat(adapter.getOid().isTransient(), is(true));
@@ -86,7 +86,7 @@ public class DataNucleusPersistenceMecha
adapter = iswf.adapterFor(list.get(0));
assertThat(adapter.getResolveState(), is(ResolveState.GHOST));
- assertThat(adapter.isTransient(), is(false));
+ assertThat(adapter.representsTransient(), is(false));
assertThat(adapter.getOid().enString(), is("PRMV:1"));
iswf.commitTran();
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaObjectStore.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaObjectStore.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaObjectStore.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaObjectStore.java Mon Jul 9 21:05:16 2012
@@ -400,7 +400,7 @@ public class OpenJpaObjectStore implemen
LOG.debug("resolveImmediately; oid=" + adapter.getOid().enString());
}
- if (adapter.getResolveState().isResolved()) {
+ if (adapter.isResolved()) {
if (LOG.isDebugEnabled()) {
LOG.debug("; already resolved - ignoring");
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/IsisLifecycleListener.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/IsisLifecycleListener.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/IsisLifecycleListener.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/IsisLifecycleListener.java Mon Jul 9 21:05:16 2012
@@ -44,7 +44,7 @@ public class IsisLifecycleListener exten
final Oid oid = adapter.getOid();
// make sure the adapter is transient
- if (!adapter.getResolveState().isTransient()) {
+ if (!adapter.representsTransient()) {
throw new IsisException(MessageFormat.format("adapter is in invalid state; should be {0} but is {1}", ResolveState.TRANSIENT, adapter.getResolveState()));
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/spi/ResolveStateUtil.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/spi/ResolveStateUtil.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/spi/ResolveStateUtil.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/main/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/persistence/spi/ResolveStateUtil.java Mon Jul 9 21:05:16 2012
@@ -19,17 +19,16 @@ public final class ResolveStateUtil {
// move to ResolveState.RESOLVED;
- if (adapter.getResolveState().isResolving()) { // either RESOLVING or
- // PART_RESOLVING
+ if (adapter.isResolving()) {
adapter.changeState(ResolveState.RESOLVED);
- } else if (adapter.getResolveState().isResolved()) {
+ } else if (adapter.isResolved()) {
// nothing to do.
- } else if (adapter.getResolveState().isPartlyResolved()) {
- adapter.changeState(ResolveState.RESOLVED);
+// } else if (adapter.getResolveState().isPartlyResolved()) {
+// adapter.changeState(ResolveState.RESOLVED);
- } else if (adapter.getResolveState().isUpdating()) {
+ } else if (adapter.isUpdating()) {
adapter.changeState(ResolveState.RESOLVED);
}
}
@@ -37,53 +36,53 @@ public final class ResolveStateUtil {
private static void moveUpToResolving(final ObjectAdapter adapter) {
// move these on so we can get to part_resolved or resolved.
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
adapter.changeState(ResolveState.RESOLVING);
- } else if (adapter.getResolveState().isNew()) {
+ } else if (adapter.isNew()) {
adapter.changeState(ResolveState.GHOST);
adapter.changeState(ResolveState.RESOLVING);
- } else if (adapter.getResolveState().isGhost()) {
+ } else if (adapter.isGhost()) {
adapter.changeState(ResolveState.RESOLVING);
}
}
public static void markAsGhost(final ObjectAdapter adapter) {
- if (adapter.getResolveState().isValue()) {
+ if (adapter.isValue()) {
// TODO: what should we do here? throw exception?
}
- if (adapter.getResolveState().isDestroyed()) {
+ if (adapter.isDestroyed()) {
// TODO: what should we do here? throw exception?
}
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isNew()) {
+ } else if (adapter.isNew()) {
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isPartlyResolved()) {
- adapter.changeState(ResolveState.RESOLVING);
- adapter.changeState(ResolveState.RESOLVED);
- adapter.changeState(ResolveState.GHOST);
+// } else if (adapter.getResolveState().isPartlyResolved()) {
+// adapter.changeState(ResolveState.RESOLVING);
+// adapter.changeState(ResolveState.RESOLVED);
+// adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isResolving()) {
+ } else if (adapter.isResolving()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isUpdating()) {
+ } else if (adapter.isUpdating()) {
adapter.changeState(ResolveState.RESOLVED);
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isResolved()) {
+ } else if (adapter.isResolved()) {
adapter.changeState(ResolveState.GHOST);
- } else if (adapter.getResolveState().isGhost()) {
+ } else if (adapter.isGhost()) {
// nothing to do.
}
}
@@ -91,10 +90,10 @@ public final class ResolveStateUtil {
public static void markAsUpdating(final ObjectAdapter adapter) {
- if (adapter.getResolveState() == ResolveState.TRANSIENT) {
+ if (adapter.isTransient()) {
adapter.changeState(ResolveState.RESOLVED);
}
- if (adapter.getResolveState() == ResolveState.RESOLVED) {
+ if (adapter.isResolved()) {
adapter.changeState(ResolveState.UPDATING);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/test/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaPersistenceMechanismInstallerTest_persist.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/test/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaPersistenceMechanismInstallerTest_persist.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/test/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaPersistenceMechanismInstallerTest_persist.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/jpa/jpa-openjpa/src/test/java/org/apache/isis/runtimes/dflt/objectstores/jpa/openjpa/OpenJpaPersistenceMechanismInstallerTest_persist.java Mon Jul 9 21:05:16 2012
@@ -71,7 +71,7 @@ public class OpenJpaPersistenceMechanism
PrimitiveValuedEntity entity = repo.newEntity();
ObjectAdapter adapter = iswf.adapterFor(entity);
- assertThat(adapter.isTransient(), is(true));
+ assertThat(adapter.representsTransient(), is(true));
assertThat(adapter.getResolveState(), is(ResolveState.TRANSIENT));
assertThat(adapter.getOid().isTransient(), is(true));
@@ -86,7 +86,7 @@ public class OpenJpaPersistenceMechanism
adapter = iswf.adapterFor(list.get(0));
assertThat(adapter.getResolveState(), is(ResolveState.GHOST));
- assertThat(adapter.isTransient(), is(false));
+ assertThat(adapter.representsTransient(), is(false));
assertThat(adapter.getOid().enString(), is("PRMV:1"));
iswf.commitTran();
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/NoSqlObjectStore.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/NoSqlObjectStore.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/NoSqlObjectStore.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/NoSqlObjectStore.java Mon Jul 9 21:05:16 2012
@@ -179,7 +179,7 @@ public class NoSqlObjectStore implements
@Override
public void resolveField(final ObjectAdapter object, final ObjectAssociation field) {
final ObjectAdapter fieldValue = field.get(object);
- if (fieldValue != null && !fieldValue.getResolveState().isResolved() && !fieldValue.getSpecification().isParented()) {
+ if (fieldValue != null && !fieldValue.isResolved() && !fieldValue.getSpecification().isParented()) {
resolveImmediately(fieldValue);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/ObjectReader.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/ObjectReader.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/ObjectReader.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/nosql/src/main/java/org/apache/isis/runtimes/dflt/objectstores/nosql/ObjectReader.java Mon Jul 9 21:05:16 2012
@@ -139,7 +139,7 @@ public class ObjectReader {
final ObjectSpecification specification = getSpecificationLoader().lookupBySpecId(aggregatedOid.getObjectSpecId());
final ObjectAdapter fieldObject = getAdapter(specification, aggregatedOid);
- if (fieldObject.getResolveState().isGhost()) {
+ if (fieldObject.isGhost()) {
final ResolveState resolveState = ResolveState.RESOLVING;
fieldObject.changeState(resolveState);
readFields(aggregateReader, fieldObject, dataEncrypter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoCollectionMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoCollectionMapper.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoCollectionMapper.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoCollectionMapper.java Mon Jul 9 21:05:16 2012
@@ -83,33 +83,40 @@ public class AutoCollectionMapper extend
}
@Override
- public void loadInternalCollection(final DatabaseConnector connector, final ObjectAdapter parent, final boolean makeResolved) {
- final ObjectAdapter collection = field.get(parent);
- if (collection.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ public void loadInternalCollection(final DatabaseConnector connector, final ObjectAdapter parentAdapter, final boolean makeResolved) {
+ final ObjectAdapter collectionAdapter = field.get(parentAdapter);
+ if (!collectionAdapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ return;
+ }
+
+ if(LOG.isDebugEnabled()) {
LOG.debug("loading internal collection " + field);
- collection.changeState(ResolveState.RESOLVING);
+ }
+ collectionAdapter.changeState(ResolveState.RESOLVING);
- final StringBuffer sql = new StringBuffer();
- sql.append("select ");
- idMapping.appendColumnNames(sql);
- sql.append(", ");
- elementMapping.appendColumnNames(sql);
- sql.append(" from ");
- sql.append(tableName);
-
- final Results rs = connector.select(sql.toString());
- final List<ObjectAdapter> list = new ArrayList<ObjectAdapter>();
- while (rs.next()) {
- final ObjectAdapter element = ((JdbcObjectReferenceMapping) elementMapping).initializeField(rs);
+ final StringBuffer sql = new StringBuffer();
+ sql.append("select ");
+ idMapping.appendColumnNames(sql);
+ sql.append(", ");
+ elementMapping.appendColumnNames(sql);
+ sql.append(" from ");
+ sql.append(tableName);
+
+ final Results rs = connector.select(sql.toString());
+ final List<ObjectAdapter> list = new ArrayList<ObjectAdapter>();
+ while (rs.next()) {
+ final ObjectAdapter element = ((JdbcObjectReferenceMapping) elementMapping).initializeField(rs);
+ if(LOG.isDebugEnabled()) {
LOG.debug(" element " + element.getOid());
- list.add(element);
- }
- final CollectionFacet collectionFacet = collection.getSpecification().getFacet(CollectionFacet.class);
- collectionFacet.init(collection, list.toArray(new ObjectAdapter[list.size()]));
- rs.close();
- if (makeResolved) {
- PersistorUtil.end(collection);
}
+ list.add(element);
+ }
+ final CollectionFacet collectionFacet = collectionAdapter.getSpecification().getFacet(CollectionFacet.class);
+ collectionFacet.init(collectionAdapter, list.toArray(new ObjectAdapter[list.size()]));
+ rs.close();
+
+ if (makeResolved) {
+ PersistorUtil.endStateTransition(collectionAdapter);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoMapper.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoMapper.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/AutoMapper.java Mon Jul 9 21:05:16 2012
@@ -307,7 +307,7 @@ public class AutoMapper extends Abstract
}
protected void loadFields(final ObjectAdapter object, final Results rs) {
- PersistorUtil.start(object, ResolveState.RESOLVING);
+ PersistorUtil.startStateTransition(object, ResolveState.RESOLVING);
for (final FieldMapping mapping : fieldMappingByField.values()) {
mapping.initializeField(object, rs);
}
@@ -320,7 +320,7 @@ public class AutoMapper extends Abstract
* oneToManyProperties[i].get(object); }
*/
object.setVersion(versionMapping.getLock(rs));
- PersistorUtil.end(object);
+ PersistorUtil.endStateTransition(object);
}
// KAM
@@ -351,13 +351,13 @@ public class AutoMapper extends Abstract
private ObjectAdapter loadObject(final DatabaseConnector connector, final ObjectSpecification cls, final Results rs) {
final Oid oid = idMapping.recreateOid(rs, specification);
- final ObjectAdapter instance = getAdapter(cls, oid);
+ final ObjectAdapter adapter = getAdapter(cls, oid);
- if (instance.getResolveState().isValidToChangeTo(ResolveState.RESOLVING)) {
- loadFields(instance, rs);
- loadCollections(connector, instance); // KAM
+ if (adapter.getResolveState().isValidToChangeTo(ResolveState.RESOLVING)) {
+ loadFields(adapter, rs);
+ loadCollections(connector, adapter); // KAM
}
- return instance;
+ return adapter;
}
@Override
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ForeignKeyCollectionMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ForeignKeyCollectionMapper.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ForeignKeyCollectionMapper.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ForeignKeyCollectionMapper.java Mon Jul 9 21:05:16 2012
@@ -189,32 +189,36 @@ public class ForeignKeyCollectionMapper
}
@Override
- public void loadInternalCollection(final DatabaseConnector connector, final ObjectAdapter parent, final boolean makeResolved) {
+ public void loadInternalCollection(final DatabaseConnector connector, final ObjectAdapter parentAdapter, final boolean makeResolved) {
- final ObjectAdapter collection = field.get(parent);
- if (collection.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ final ObjectAdapter collectionAdapter = field.get(parentAdapter);
+ if (!collectionAdapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ return;
+ }
+
+ if(LOG.isDebugEnabled()) {
LOG.debug("loading internal collection " + field);
- PersistorUtil.start(collection, ResolveState.RESOLVING);
+ }
+ PersistorUtil.startStateTransition(collectionAdapter, ResolveState.RESOLVING);
- final List<ObjectAdapter> list = new ArrayList<ObjectAdapter>();
+ final List<ObjectAdapter> list = new ArrayList<ObjectAdapter>();
- loadCollectionIntoList(connector, parent, makeResolved, table, specification, getIdMapping(), fieldMappingByField, versionMapping, list);
+ loadCollectionIntoList(connector, parentAdapter, makeResolved, table, specification, getIdMapping(), fieldMappingByField, versionMapping, list);
- final CollectionFacet collectionFacet = collection.getSpecification().getFacet(CollectionFacet.class);
- collectionFacet.init(collection, list.toArray(new ObjectAdapter[list.size()]));
- PersistorUtil.end(collection);
-
- // TODO: Need to finalise this behaviour. At the moment, all
- // collections will get infinitely resolved. I
- // don't think this is desirable. Sub-collections should be left
- // "Partially Resolved".
- if (makeResolved) {
- for (final ObjectAdapter field : list) {
- // final ObjectMapping mapping =
- // objectMappingLookup.getMapping(field, connector);
- if (field.getSpecification().isOfType(parent.getSpecification())) {
- loadInternalCollection(connector, field, true);
- }
+ final CollectionFacet collectionFacet = collectionAdapter.getSpecification().getFacet(CollectionFacet.class);
+ collectionFacet.init(collectionAdapter, list.toArray(new ObjectAdapter[list.size()]));
+ PersistorUtil.endStateTransition(collectionAdapter);
+
+ // TODO: Need to finalise this behaviour. At the moment, all
+ // collections will get infinitely resolved. I
+ // don't think this is desirable. Sub-collections should be left
+ // "Partially Resolved".
+ if (makeResolved) {
+ for (final ObjectAdapter field : list) {
+ // final ObjectMapping mapping =
+ // objectMappingLookup.getMapping(field, connector);
+ if (field.getSpecification().isOfType(parentAdapter.getSpecification())) {
+ loadInternalCollection(connector, field, true);
}
}
}
@@ -250,16 +254,18 @@ public class ForeignKeyCollectionMapper
rs.close();
}
- protected void loadFields(final ObjectAdapter object, final Results rs, final boolean makeResolved, final Map<ObjectAssociation, FieldMapping> fieldMappingByField) {
- if (object.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
- PersistorUtil.start(object, ResolveState.RESOLVING);
- for (final FieldMapping mapping : fieldMappingByField.values()) {
- mapping.initializeField(object, rs);
- }
- object.setVersion(versionMapping.getLock(rs));
- if (makeResolved) {
- PersistorUtil.end(object);
- }
+ protected void loadFields(final ObjectAdapter adapter, final Results rs, final boolean makeResolved, final Map<ObjectAssociation, FieldMapping> fieldMappingByField) {
+ if (!adapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ return;
+ }
+
+ PersistorUtil.startStateTransition(adapter, ResolveState.RESOLVING);
+ for (final FieldMapping mapping : fieldMappingByField.values()) {
+ mapping.initializeField(adapter, rs);
+ }
+ adapter.setVersion(versionMapping.getLock(rs));
+ if (makeResolved) {
+ PersistorUtil.endStateTransition(adapter);
}
}
@@ -279,7 +285,9 @@ public class ForeignKeyCollectionMapper
@Override
public void saveInternalCollection(final DatabaseConnector connector, final ObjectAdapter parent) {
final ObjectAdapter collection = field.get(parent);
- LOG.debug("Saving internal collection " + collection);
+ if(LOG.isDebugEnabled()) {
+ LOG.debug("Saving internal collection " + collection);
+ }
final Iterator<ObjectAdapter> elements = getElementsForCollectionAsIterator(collection);
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ReversedAutoAssociationMapper.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ReversedAutoAssociationMapper.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ReversedAutoAssociationMapper.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/sql/sql-impl/src/main/java/org/apache/isis/runtimes/dflt/objectstores/sql/auto/ReversedAutoAssociationMapper.java Mon Jul 9 21:05:16 2012
@@ -88,39 +88,45 @@ public class ReversedAutoAssociationMapp
}
@Override
- public void loadInternalCollection(final DatabaseConnector connector, final ObjectAdapter parent, final boolean makeResolved) {
- final ObjectAdapter collection = field.get(parent);
- if (collection.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ public void loadInternalCollection(final DatabaseConnector connector, final ObjectAdapter parentAdapter, final boolean makeResolved) {
+ final ObjectAdapter collectionAdapter = field.get(parentAdapter);
+
+ if (!collectionAdapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ return;
+ }
+ if(LOG.isDebugEnabled()) {
LOG.debug("loading internal collection " + field);
+ }
- final StringBuffer sql = new StringBuffer();
- sql.append("select ");
- idMapping.appendColumnNames(sql);
- sql.append(", ");
- sql.append(columnList(fieldMappingByField));
- sql.append(" from ");
- sql.append(table);
- sql.append(" where ");
- idMapping.appendUpdateValues(connector, sql, parent);
-
- final Results rs = connector.select(sql.toString());
- final List<ObjectAdapter> list = new ArrayList<ObjectAdapter>();
- while (rs.next()) {
- final Oid oid = idMapping.recreateOid(rs, specification);
- final ObjectAdapter element = getAdapter(specification, oid);
- loadFields(element, rs, makeResolved);
+ final StringBuffer sql = new StringBuffer();
+ sql.append("select ");
+ idMapping.appendColumnNames(sql);
+ sql.append(", ");
+ sql.append(columnList(fieldMappingByField));
+ sql.append(" from ");
+ sql.append(table);
+ sql.append(" where ");
+ idMapping.appendUpdateValues(connector, sql, parentAdapter);
+
+ final Results rs = connector.select(sql.toString());
+ final List<ObjectAdapter> list = new ArrayList<ObjectAdapter>();
+ while (rs.next()) {
+ final Oid oid = idMapping.recreateOid(rs, specification);
+ final ObjectAdapter element = getAdapter(specification, oid);
+ loadFields(element, rs, makeResolved);
+ if(LOG.isDebugEnabled()) {
LOG.debug(" element " + element.getOid());
- list.add(element);
}
- final CollectionFacet collectionFacet = collection.getSpecification().getFacet(CollectionFacet.class);
- collectionFacet.init(collection, list.toArray(new ObjectAdapter[list.size()]));
- rs.close();
- PersistorUtil.end(collection);
+ list.add(element);
}
+ final CollectionFacet collectionFacet = collectionAdapter.getSpecification().getFacet(CollectionFacet.class);
+ collectionFacet.init(collectionAdapter, list.toArray(new ObjectAdapter[list.size()]));
+ rs.close();
+ PersistorUtil.endStateTransition(collectionAdapter);
}
protected void loadFields(final ObjectAdapter object, final Results rs, final boolean makeResolved) {
- PersistorUtil.start(object, ResolveState.RESOLVING);
+ PersistorUtil.startStateTransition(object, ResolveState.RESOLVING);
for (final FieldMapping mapping : fieldMappingByField.values()) {
mapping.initializeField(object, rs);
}
@@ -135,7 +141,7 @@ public class ReversedAutoAssociationMapp
object.setVersion(versionMapping.getLock(rs));
if (makeResolved) {
- PersistorUtil.end(object);
+ PersistorUtil.endStateTransition(object);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/XmlObjectStore.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/XmlObjectStore.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/XmlObjectStore.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/XmlObjectStore.java Mon Jul 9 21:05:16 2012
@@ -143,44 +143,47 @@ public class XmlObjectStore implements O
return isFixturesInstalled;
}
- private void initObject(final ObjectAdapter object, final ObjectData data) {
- if (object.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
- PersistorUtil.start(object, ResolveState.RESOLVING);
-
- final List<ObjectAssociation> fields = object.getSpecification().getAssociations();
- for (int i = 0; i < fields.size(); i++) {
- final ObjectAssociation field = fields.get(i);
- if (field.isNotPersisted()) {
- continue;
- }
+ private void initObject(final ObjectAdapter adapter, final ObjectData data) {
+ if (!adapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ return;
+ }
+ PersistorUtil.startStateTransition(adapter, ResolveState.RESOLVING);
- final ObjectSpecification fieldSpecification = field.getSpecification();
- if (fieldSpecification.isEncodeable()) {
- final EncodableFacet encoder = fieldSpecification.getFacet(EncodableFacet.class);
- ObjectAdapter value;
- final String valueData = data.value(field.getId());
- if (valueData != null) {
- if (valueData.equals("NULL")) {
- value = null;
- } else {
- value = encoder.fromEncodedString(valueData);
- }
- ((OneToOneAssociation) field).initAssociation(object, value);
+ final List<ObjectAssociation> fields = adapter.getSpecification().getAssociations();
+ for (int i = 0; i < fields.size(); i++) {
+ final ObjectAssociation field = fields.get(i);
+ if (field.isNotPersisted()) {
+ continue;
+ }
+
+ final ObjectSpecification fieldSpecification = field.getSpecification();
+ if (fieldSpecification.isEncodeable()) {
+ final EncodableFacet encoder = fieldSpecification.getFacet(EncodableFacet.class);
+ ObjectAdapter value;
+ final String valueData = data.value(field.getId());
+ if (valueData != null) {
+ if (valueData.equals("NULL")) {
+ value = null;
+ } else {
+ value = encoder.fromEncodedString(valueData);
}
- } else if (field.isOneToManyAssociation()) {
- initObjectSetupCollection(object, data, field);
- } else if (field.isOneToOneAssociation()) {
- initObjectSetupReference(object, data, field);
+ ((OneToOneAssociation) field).initAssociation(adapter, value);
}
+ } else if (field.isOneToManyAssociation()) {
+ initObjectSetupCollection(adapter, data, field);
+ } else if (field.isOneToOneAssociation()) {
+ initObjectSetupReference(adapter, data, field);
}
- object.setVersion(data.getVersion());
- PersistorUtil.end(object);
}
+ adapter.setVersion(data.getVersion());
+ PersistorUtil.endStateTransition(adapter);
}
private void initObjectSetupReference(final ObjectAdapter object, final ObjectData data, final ObjectAssociation field) {
final RootOidDefault referenceOid = (RootOidDefault) data.get(field.getId());
- LOG.debug("setting up field " + field + " with " + referenceOid);
+ if(LOG.isDebugEnabled()) {
+ LOG.debug("setting up field " + field + " with " + referenceOid);
+ }
if (referenceOid == null) {
return;
}
@@ -189,7 +192,7 @@ public class XmlObjectStore implements O
if (fieldData == null) {
final ObjectAdapter adapter = getPersistenceSession().recreateAdapter(field.getSpecification(), referenceOid);
- if (!adapter.getResolveState().isDestroyed()) {
+ if (!adapter.isDestroyed()) {
adapter.changeState(ResolveState.DESTROYED);
}
((OneToOneAssociation) field).initAssociation(object, adapter);
@@ -222,30 +225,33 @@ public class XmlObjectStore implements O
*/
}
- private void initObjectSetupCollection(final ObjectAdapter object, final ObjectData data, final ObjectAssociation field) {
+ private void initObjectSetupCollection(final ObjectAdapter objectAdapter, final ObjectData data, final ObjectAssociation field) {
/*
* The internal collection is already a part of the object, and
* therefore cannot be recreated, but its oid must be set
*/
final ListOfRootOid refs = (ListOfRootOid) data.get(field.getId());
- final ObjectAdapter collection = field.get(object);
- if (collection.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
- PersistorUtil.start(collection, ResolveState.RESOLVING);
- final int size = refs == null ? 0 : refs.size();
- final ObjectAdapter[] elements = new ObjectAdapter[size];
- for (int j = 0; j < size; j++) {
- final RootOid elementOid = refs.elementAt(j);
- ObjectAdapter adapter;
- adapter = getAdapterManager().getAdapterFor(elementOid);
- if (adapter == null) {
- adapter = getObject(elementOid);
- }
- elements[j] = adapter;
+
+ final ObjectAdapter collectionAdapter = field.get(objectAdapter);
+ if (!collectionAdapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ return;
+ }
+
+ PersistorUtil.startStateTransition(collectionAdapter, ResolveState.RESOLVING);
+ final int size = refs == null ? 0 : refs.size();
+ final ObjectAdapter[] elements = new ObjectAdapter[size];
+ for (int j = 0; j < size; j++) {
+ final RootOid elementOid = refs.elementAt(j);
+ ObjectAdapter adapter;
+ adapter = getAdapterManager().getAdapterFor(elementOid);
+ if (adapter == null) {
+ adapter = getObject(elementOid);
}
- final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection);
- facet.init(collection, elements);
- PersistorUtil.end(collection);
+ elements[j] = adapter;
}
+ final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collectionAdapter);
+ facet.init(collectionAdapter, elements);
+ PersistorUtil.endStateTransition(collectionAdapter);
}
// /////////////////////////////////////////////////////////
Modified: incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/internal/data/ObjectData.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/internal/data/ObjectData.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/internal/data/ObjectData.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/objectstores/xml/src/main/java/org/apache/isis/runtimes/dflt/objectstores/xml/internal/data/ObjectData.java Mon Jul 9 21:05:16 2012
@@ -112,7 +112,7 @@ public class ObjectData extends Data {
}
public void addAssociation(final ObjectAdapter fieldContent, final String fieldId, final boolean ensurePersistent) {
- final boolean notAlreadyPersistent = fieldContent != null && fieldContent.isTransient();
+ final boolean notAlreadyPersistent = fieldContent != null && fieldContent.representsTransient();
if (ensurePersistent && notAlreadyPersistent) {
throw new IllegalStateException("Cannot save an object that is not persistent: " + fieldContent);
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/memento/Memento.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/memento/Memento.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/memento/Memento.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/memento/Memento.java Mon Jul 9 21:05:16 2012
@@ -280,19 +280,19 @@ public class Memento implements Serializ
}
- private void updateObject(final ObjectAdapter object, final ResolveState resolveState, final Data state) {
- if (object.getResolveState().isValidToChangeTo(resolveState)) {
- PersistorUtil.start(object, resolveState);
- updateFields(object, state);
- PersistorUtil.end(object);
- } else if (object.getResolveState() == ResolveState.TRANSIENT && resolveState == ResolveState.TRANSIENT) {
- updateFields(object, state);
- } else if (object.isParented()) {
- updateFields(object, state);
+ private void updateObject(final ObjectAdapter objectAdapter, final ResolveState targetResolveState, final Data state) {
+ if (objectAdapter.getResolveState().isValidToChangeTo(targetResolveState)) {
+ PersistorUtil.startStateTransition(objectAdapter, targetResolveState);
+ updateFields(objectAdapter, state);
+ PersistorUtil.endStateTransition(objectAdapter);
+ } else if (objectAdapter.isTransient() && targetResolveState == ResolveState.TRANSIENT) {
+ updateFields(objectAdapter, state);
+ } else if (objectAdapter.isParented()) {
+ updateFields(objectAdapter, state);
} else {
final ObjectData od = (ObjectData) state;
if (od.containsField()) {
- throw new IsisException("Resolve state (for " + object + ") inconsistent with fact that data exists for fields");
+ throw new IsisException("Resolve state (for " + objectAdapter + ") inconsistent with fact that data exists for fields");
}
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/PersistorUtil.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/PersistorUtil.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/PersistorUtil.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/PersistorUtil.java Mon Jul 9 21:05:16 2012
@@ -36,7 +36,7 @@ public class PersistorUtil {
// update resolve state
// //////////////////////////////////////////////////////////////////
- public static void start(final ObjectAdapter object, final ResolveState state) {
+ public static void startStateTransition(final ObjectAdapter object, final ResolveState state) {
if (LOG.isTraceEnabled()) {
LOG.trace("start " + object + " as " + state.name());
}
@@ -48,7 +48,7 @@ public class PersistorUtil {
* as specified by the second parameter. Attempting to specify any other
* state throws a run time exception.
*/
- public static void end(final ObjectAdapter object) {
+ public static void endStateTransition(final ObjectAdapter object) {
final ResolveState endState = object.getResolveState().getEndState();
Assert.assertNotNull("end state required", endState);
if (LOG.isTraceEnabled()) {
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adapterfactory/pojo/PojoAdapter.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adapterfactory/pojo/PojoAdapter.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adapterfactory/pojo/PojoAdapter.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adapterfactory/pojo/PojoAdapter.java Mon Jul 9 21:05:16 2012
@@ -162,38 +162,91 @@ public class PojoAdapter extends Instanc
}
private boolean elementsLoaded() {
- return isTransient() || this.getResolveState().isResolved();
+ return representsTransient() || this.isResolved();
}
// ///////////////////////////////////////////////////////////////////
- // isPersistent, isTransient
+ // ResolveState
// ///////////////////////////////////////////////////////////////////
/**
* Just delegates to {@link #getResolveState() resolve state}.
*
- * @see ResolveState#isPersistent()
- * @see #isTransient()
+ * @see ResolveState#representsPersistent()
+ * @see #representsTransient()
*/
@Override
public boolean isPersistent() {
- if(isParented()) {
-
- }
- return getResolveState().isPersistent();
+ return getResolveState().representsPersistent();
}
+
/**
* Just delegates to {@link #getResolveState() resolve state}.
*
- * @see ResolveState#isTransient()
+ * @see ResolveState#representsTransient()
* @see #isPersistent()
*/
@Override
+ public boolean representsTransient() {
+ return getResolveState().representsTransient();
+ }
+
+ @Override
+ public boolean isNew() {
+ return getResolveState().isNew();
+ }
+
+ @Override
+ public boolean isResolving() {
+ return getResolveState().isResolving();
+ }
+
+ @Override
+ public boolean isResolved() {
+ return getResolveState().isResolved();
+ }
+
+ @Override
+ public boolean isGhost() {
+ return getResolveState().isGhost();
+ }
+
+ @Override
+ public boolean isUpdating() {
+ return getResolveState().isUpdating();
+ }
+
+ @Override
+ public boolean isDestroyed() {
+ return getResolveState().isDestroyed();
+ }
+
+ @Override
public boolean isTransient() {
return getResolveState().isTransient();
}
+
+ @Override
+ public boolean isTitleAvailable() {
+ final ResolveState resolveState = getResolveState();
+ return resolveState.isValue() || resolveState.isResolved();
+ }
+
+ /**
+ * If {@link #isGhost()}, then will become resolved.
+ */
+ @Override
+ public void markAsResolvedIfPossible() {
+ if (getResolveState().canChangeTo(ResolveState.RESOLVING)) {
+ changeState(ResolveState.RESOLVING);
+ changeState(ResolveState.RESOLVED);
+ }
+ }
+
+
+
// ///////////////////////////////////////////////////////////////////
// Oid
// ///////////////////////////////////////////////////////////////////
@@ -221,6 +274,7 @@ public class PojoAdapter extends Instanc
@Override
public boolean isValue() {
+ // equivalently: getResolveState().isValue();
return oid == null;
}
@@ -459,6 +513,4 @@ public class PojoAdapter extends Instanc
-
-
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/AdapterManagerDefault.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/AdapterManagerDefault.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/AdapterManagerDefault.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/AdapterManagerDefault.java Mon Jul 9 21:05:16 2012
@@ -376,7 +376,7 @@ public class AdapterManagerDefault exten
final ObjectAdapter rootAdapter = adapter.getAggregateRoot(); // REVIEW: think this is redundant; would seem this method is only ever called for roots anyway.
final RootOid transientRootOid = (RootOid) rootAdapter.getOid();
- Ensure.ensureThatArg(rootAdapter.isTransient(), is(true), "root adapter should be transient; oid:" + transientRootOid);
+ Ensure.ensureThatArg(rootAdapter.representsTransient(), is(true), "root adapter should be transient; oid:" + transientRootOid);
Ensure.ensureThatArg(transientRootOid.isTransient(), is(true), "root adapter's OID should be transient; oid:" + transientRootOid);
final RootAndCollectionAdapters rootAndCollectionAdapters = new RootAndCollectionAdapters(adapter, this);
@@ -636,7 +636,7 @@ public class AdapterManagerDefault exten
* Fail early if any problems.
*/
private void ensureMapsConsistent(final ObjectAdapter adapter) {
- if (adapter.getResolveState().isValue()) {
+ if (adapter.isValue()) {
return;
}
if (adapter.isParented()) {
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/internal/PojoAdapterHashMap.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/internal/PojoAdapterHashMap.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/internal/PojoAdapterHashMap.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/adaptermanager/internal/PojoAdapterHashMap.java Mon Jul 9 21:05:16 2012
@@ -120,7 +120,7 @@ public class PojoAdapterHashMap implemen
LOG.debug("add adapter: #" + Long.toHexString(pojo.hashCode()) + " -> #" + Long.toHexString(adapter.hashCode()));
}
// log at end so that if toString needs adapters they're in maps.
- if (adapter.getResolveState().isResolved()) {
+ if (adapter.isResolved()) {
if (LOG.isDebugEnabled()) {
LOG.debug("add " + new ToString(pojo) + " as " + adapter);
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/PersistAlgorithmAbstract.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/PersistAlgorithmAbstract.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/PersistAlgorithmAbstract.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/PersistAlgorithmAbstract.java Mon Jul 9 21:05:16 2012
@@ -61,7 +61,7 @@ public abstract class PersistAlgorithmAb
* <b><i>REVIEW: should try to combine and remove the other method</i></b>.
*/
protected static boolean alreadyPersistedOrNotPersistableOrServiceOrStandalone(final ObjectAdapter adapter) {
- return objectIsStandalone(adapter) || objectSpecIsService(adapter) || alreadyPersistedOrNotPersistable(adapter);
+ return adapter.isValue() || objectSpecIsService(adapter) || alreadyPersistedOrNotPersistable(adapter);
}
/**
@@ -85,10 +85,6 @@ public abstract class PersistAlgorithmAb
}
}
- private static boolean objectIsStandalone(final ObjectAdapter adapter) {
- return adapter.getResolveState().isValue();
- }
-
private static boolean objectSpecNotPersistable(final ObjectAdapter adapter) {
return !adapter.getSpecification().persistability().isPersistable() || adapter.isParented();
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/dflt/DefaultPersistAlgorithm.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/dflt/DefaultPersistAlgorithm.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/dflt/DefaultPersistAlgorithm.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/dflt/DefaultPersistAlgorithm.java Mon Jul 9 21:05:16 2012
@@ -50,10 +50,10 @@ public class DefaultPersistAlgorithm ext
if(LOG.isDebugEnabled()) {
LOG.debug("persist " + adapter);
}
- if (adapter.getResolveState() == ResolveState.GHOST) {
+ if (adapter.isGhost()) {
adapter.changeState(ResolveState.RESOLVING);
adapter.changeState(ResolveState.RESOLVED);
- } else if (adapter.getResolveState() == ResolveState.TRANSIENT) {
+ } else if (adapter.isTransient()) {
adapter.changeState(ResolveState.RESOLVED);
}
final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(adapter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/topdown/TopDownPersistAlgorithm.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/topdown/TopDownPersistAlgorithm.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/topdown/TopDownPersistAlgorithm.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/topdown/TopDownPersistAlgorithm.java Mon Jul 9 21:05:16 2012
@@ -85,13 +85,13 @@ public class TopDownPersistAlgorithm ext
}
}
- private void makeCollectionPersistent(final ObjectAdapter collection, final ToPersistObjectSet toPersistObjectSet) {
- LOG.info("persist " + collection);
- if (collection.getResolveState() == ResolveState.TRANSIENT) {
- collection.changeState(ResolveState.RESOLVED);
+ private void makeCollectionPersistent(final ObjectAdapter collectionAdapter, final ToPersistObjectSet toPersistObjectSet) {
+ LOG.info("persist " + collectionAdapter);
+ if (collectionAdapter.isTransient()) {
+ collectionAdapter.changeState(ResolveState.RESOLVED);
}
- final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection);
- for(ObjectAdapter element: facet.iterable(collection)) {
+ final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collectionAdapter);
+ for(ObjectAdapter element: facet.iterable(collectionAdapter)) {
makePersistent(element, toPersistObjectSet);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/twopass/TwoPassPersistAlgorithm.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/twopass/TwoPassPersistAlgorithm.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/twopass/TwoPassPersistAlgorithm.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/persistence/objectstore/algorithm/twopass/TwoPassPersistAlgorithm.java Mon Jul 9 21:05:16 2012
@@ -114,7 +114,7 @@ public class TwoPassPersistAlgorithm ext
private void makeCollectionPersistent(final ObjectAdapter collection, final ToPersistObjectSet toPersistObjectSet) {
LOG.info("persist " + collection);
- if (collection.getResolveState() == ResolveState.TRANSIENT) {
+ if (collection.isTransient()) {
collection.changeState(ResolveState.RESOLVED);
}
final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/system/persistence/PersistenceSession.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/system/persistence/PersistenceSession.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/system/persistence/PersistenceSession.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/system/persistence/PersistenceSession.java Mon Jul 9 21:05:16 2012
@@ -312,10 +312,7 @@ public class PersistenceSession implemen
adapterManager.remapAsPersistent(serviceAdapter, null);
}
- if (serviceAdapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
- serviceAdapter.changeState(ResolveState.RESOLVING);
- serviceAdapter.changeState(ResolveState.RESOLVED);
- }
+ serviceAdapter.markAsResolvedIfPossible();
if (existingOid == null) {
final RootOid persistentOid = (RootOid) serviceAdapter.getOid();
registerService(persistentOid);
@@ -395,7 +392,7 @@ public class PersistenceSession implemen
final Object pojo = objectSpec.createObject();
final ObjectAdapter adapter = getAdapterManager().adapterFor(pojo, parentAdapter);
objectSpec.initialize(adapter);
- if (adapter.getResolveState().isGhost()) {
+ if (adapter.isGhost()) {
adapter.changeState(ResolveState.RESOLVING);
}
if (adapter.getResolveState().isValidToChangeTo(ResolveState.RESOLVED)) {
@@ -644,10 +641,8 @@ public class PersistenceSession implemen
final ObjectSpecification serviceSpecification = getSpecificationLoader().loadSpecification(servicePojo.getClass());
final RootOid oid = getOidForService(serviceSpecification);
final ObjectAdapter serviceAdapter = getAdapterManager().recreateAdapter(oid, servicePojo);
- if (serviceAdapter.getResolveState().canChangeTo(ResolveState.RESOLVING)) {
- serviceAdapter.changeState(ResolveState.RESOLVING);
- serviceAdapter.changeState(ResolveState.RESOLVED);
- }
+
+ serviceAdapter.markAsResolvedIfPossible();
return serviceAdapter;
}
@@ -970,7 +965,7 @@ public class PersistenceSession implemen
return;
}
final ObjectAdapter referenceAdapter = field.get(objectAdapter);
- if (referenceAdapter == null || referenceAdapter.getResolveState().isResolved()) {
+ if (referenceAdapter == null || referenceAdapter.isResolved()) {
return;
}
if (!referenceAdapter.isPersistent()) {
@@ -1065,7 +1060,7 @@ public class PersistenceSession implemen
@Override
public void objectChanged(final ObjectAdapter adapter) {
- if (adapter.isTransient() || (adapter.isParented() && adapter.getAggregateRoot().isTransient())) {
+ if (adapter.representsTransient() || (adapter.isParented() && adapter.getAggregateRoot().representsTransient())) {
addObjectChangedForPresentationLayer(adapter);
return;
}
@@ -1085,7 +1080,7 @@ public class PersistenceSession implemen
addObjectChangedForPersistenceLayer(adapter);
addObjectChangedForPresentationLayer(adapter);
}
- if (adapter.getResolveState().respondToChangesInPersistentObjects() || adapter.isTransient()) {
+ if (adapter.getResolveState().respondToChangesInPersistentObjects() || adapter.representsTransient()) {
addObjectChangedForPresentationLayer(adapter);
}
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionAddToFacetWrapTransaction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionAddToFacetWrapTransaction.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionAddToFacetWrapTransaction.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionAddToFacetWrapTransaction.java Mon Jul 9 21:05:16 2012
@@ -44,7 +44,7 @@ public class CollectionAddToFacetWrapTra
@Override
public void add(final ObjectAdapter adapter, final ObjectAdapter referencedAdapter) {
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
// NOT !adapter.isPersistent();
// (value adapters are neither persistent or transient)
underlyingFacet.add(adapter, referencedAdapter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionClearFacetWrapTransaction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionClearFacetWrapTransaction.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionClearFacetWrapTransaction.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionClearFacetWrapTransaction.java Mon Jul 9 21:05:16 2012
@@ -44,7 +44,7 @@ public class CollectionClearFacetWrapTra
@Override
public void clear(final ObjectAdapter adapter) {
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
// NOT !adapter.isPersistent();
// (value adapters are neither persistent or transient)
underlyingFacet.clear(adapter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionRemoveFromFacetWrapTransaction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionRemoveFromFacetWrapTransaction.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionRemoveFromFacetWrapTransaction.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/CollectionRemoveFromFacetWrapTransaction.java Mon Jul 9 21:05:16 2012
@@ -44,7 +44,7 @@ public class CollectionRemoveFromFacetWr
@Override
public void remove(final ObjectAdapter adapter, final ObjectAdapter referencedAdapter) {
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
// NOT !adapter.isPersistent();
// (value adapters are neither persistent or transient)
underlyingFacet.remove(adapter, referencedAdapter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertyClearFacetWrapTransaction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertyClearFacetWrapTransaction.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertyClearFacetWrapTransaction.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertyClearFacetWrapTransaction.java Mon Jul 9 21:05:16 2012
@@ -44,7 +44,7 @@ public class PropertyClearFacetWrapTrans
@Override
public void clearProperty(final ObjectAdapter adapter) {
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
// NOT !adapter.isPersistent();
// (value adapters are neither persistent or transient)
underlyingFacet.clearProperty(adapter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertySetterFacetWrapTransaction.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertySetterFacetWrapTransaction.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertySetterFacetWrapTransaction.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/facets/PropertySetterFacetWrapTransaction.java Mon Jul 9 21:05:16 2012
@@ -44,7 +44,7 @@ public class PropertySetterFacetWrapTran
@Override
public void setProperty(final ObjectAdapter adapter, final ObjectAdapter referencedAdapter) {
- if (adapter.isTransient()) {
+ if (adapter.representsTransient()) {
// NOT !adapter.isPersistent();
// (value adapters are neither persistent or transient)
underlyingFacet.setProperty(adapter, referencedAdapter);
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/updatenotifier/UpdateNotifierDefault.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/updatenotifier/UpdateNotifierDefault.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/updatenotifier/UpdateNotifierDefault.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/main/java/org/apache/isis/runtimes/dflt/runtime/transaction/updatenotifier/UpdateNotifierDefault.java Mon Jul 9 21:05:16 2012
@@ -52,8 +52,7 @@ public class UpdateNotifierDefault exten
@Override
public synchronized void addChangedObject(final ObjectAdapter adapter) {
- final ResolveState resolveState = adapter.getResolveState();
- if (!resolveState.isResolved() && !adapter.isTransient()) {
+ if (!adapter.isResolved() && !adapter.representsTransient()) {
return;
}
Modified: incubator/isis/trunk/framework/runtimes/dflt/runtime/src/test/java/org/apache/isis/runtimes/dflt/runtime/system/OneToManyAssociationImplTest.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/runtimes/dflt/runtime/src/test/java/org/apache/isis/runtimes/dflt/runtime/system/OneToManyAssociationImplTest.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/runtimes/dflt/runtime/src/test/java/org/apache/isis/runtimes/dflt/runtime/system/OneToManyAssociationImplTest.java (original)
+++ incubator/isis/trunk/framework/runtimes/dflt/runtime/src/test/java/org/apache/isis/runtimes/dflt/runtime/system/OneToManyAssociationImplTest.java Mon Jul 9 21:05:16 2012
@@ -138,7 +138,7 @@ public class OneToManyAssociationImplTes
one(mockOwnerAdapter).isPersistent();
will(returnValue(true));
- one(mockAssociatedAdapter).isTransient();
+ one(mockAssociatedAdapter).representsTransient();
will(returnValue(false));
one(mockPeer).getFacet(CollectionAddToFacet.class);
Modified: incubator/isis/trunk/framework/viewer/dnd/src/main/java/org/apache/isis/viewer/dnd/form/ExpandableViewBorder.java
URL: http://svn.apache.org/viewvc/incubator/isis/trunk/framework/viewer/dnd/src/main/java/org/apache/isis/viewer/dnd/form/ExpandableViewBorder.java?rev=1359393&r1=1359392&r2=1359393&view=diff
==============================================================================
--- incubator/isis/trunk/framework/viewer/dnd/src/main/java/org/apache/isis/viewer/dnd/form/ExpandableViewBorder.java (original)
+++ incubator/isis/trunk/framework/viewer/dnd/src/main/java/org/apache/isis/viewer/dnd/form/ExpandableViewBorder.java Mon Jul 9 21:05:16 2012
@@ -186,7 +186,7 @@ public class ExpandableViewBorder extend
private int canOpenCollection(final Content content) {
final ObjectAdapter collection = ((CollectionContent) content).getCollection();
- if (collection.getResolveState().isGhost()) {
+ if (collection.isGhost()) {
return UNKNOWN;
} else {
final CollectionFacet facet = CollectionFacetUtils.getCollectionFacetFromSpec(collection);