You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by ah...@apache.org on 2018/09/11 20:21:45 UTC

[isis] 02/06: ISIS-1976: remove responsibility for aggregate root lookup from PS

This is an automated email from the ASF dual-hosted git repository.

ahuber pushed a commit to branch ISIS-1976-rethink-object-adapters
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 6d6910965f1246b9d2cae831822d1a972953edd8
Author: Andi Huber <ah...@apache.org>
AuthorDate: Tue Sep 11 14:01:33 2018 +0200

    ISIS-1976: remove responsibility for aggregate root lookup from PS
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1976
---
 .../org/apache/isis/core/metamodel/adapter/ObjectAdapter.java  |  1 +
 .../java/org/apache/isis/core/metamodel/spec/Instance.java     |  6 ++++++
 .../core/runtime/system/persistence/PersistenceSession4.java   | 10 ----------
 .../core/runtime/system/persistence/PersistenceSession5.java   | 10 ----------
 .../isis/core/runtime/persistence/adapter/PojoAdapter.java     |  4 +++-
 .../core/runtime/system/persistence/PersistenceSession.java    |  2 --
 6 files changed, 10 insertions(+), 23 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java
index 8c7b447..52595a8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/adapter/ObjectAdapter.java
@@ -64,6 +64,7 @@ public interface ObjectAdapter extends Instance {
      * Returns the adapted domain object, the POJO, that this adapter represents
      * with the framework.
      */
+    @Override
     Object getObject();
 
     /**
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/Instance.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/Instance.java
index 3aa922b..d2f46a7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/Instance.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/Instance.java
@@ -36,5 +36,11 @@ public interface Instance {
      */
     Specification getSpecification();
 
+    /**
+     * FIXME[ISIS-1976] introduced to experiment with slim OAs
+     * Returns the adapted domain object, the POJO, that this adapter represents
+     * with the framework.
+     */
+    Object getObject();
 
 }
diff --git a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java
index b9b6ca9..346f3a7 100644
--- a/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java
+++ b/core/plugins/jdo-datanucleus-4/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession4.java
@@ -758,16 +758,6 @@ implements IsisLifecycleListener.PersistenceSessionLifecycleManagement {
         persistenceManager.flush();
     }
 
-    // -- getAggregateRoot
-
-    @Override
-    public ObjectAdapter getAggregateRoot(final ParentedCollectionOid collectionOid) {
-        final Oid rootOid = collectionOid.getRootOid();
-        ObjectAdapter rootadapter = objectAdapterContext.lookupAdapterFor(rootOid);
-        return rootadapter;
-    }
-
-
     // -- FrameworkSynchronizer delegate methods
 
     @Override
diff --git a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java
index 4b8c6ab..bd20ea0 100644
--- a/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java
+++ b/core/plugins/jdo-datanucleus-5/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession5.java
@@ -758,16 +758,6 @@ implements IsisLifecycleListener.PersistenceSessionLifecycleManagement {
         persistenceManager.flush();
     }
 
-    // -- getAggregateRoot
-
-    @Override
-    public ObjectAdapter getAggregateRoot(final ParentedCollectionOid collectionOid) {
-        final Oid rootOid = collectionOid.getRootOid();
-        ObjectAdapter rootadapter = objectAdapterContext.lookupAdapterFor(rootOid);
-        return rootadapter;
-    }
-
-
     // -- FrameworkSynchronizer delegate methods
 
     @Override
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/adapter/PojoAdapter.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/adapter/PojoAdapter.java
index 07f4d6a..ea12ee5 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/adapter/PojoAdapter.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/persistence/adapter/PojoAdapter.java
@@ -147,7 +147,9 @@ public class PojoAdapter extends InstanceAbstract implements ObjectAdapter {
             return this;
         }
         ParentedCollectionOid collectionOid = (ParentedCollectionOid) oid;
-        return persistenceSession.getAggregateRoot(collectionOid);
+        final Oid rootOid = collectionOid.getRootOid();
+        ObjectAdapter rootadapter = persistenceSession.adapterFor(rootOid);
+        return rootadapter;
     }
 
     // -- getVersion, setVersion, checkLock
diff --git a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
index c87c797..62dbb6b 100644
--- a/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
+++ b/core/runtime/src/main/java/org/apache/isis/core/runtime/system/persistence/PersistenceSession.java
@@ -168,8 +168,6 @@ extends
 
     <T> ObjectAdapter firstMatchingQuery(final Query<T> query);
     
-    ObjectAdapter getAggregateRoot(ParentedCollectionOid collectionOid);
-    
     void makePersistentInTransaction(ObjectAdapter adapter);
     
     // -- OTHERS