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 1f5520f43c39be8f55d43f6ea22b7020765e374b
Author: Andi Huber <ahu...@apache.org>
AuthorDate: Wed Sep 5 15:56:32 2018 +0200

    ISIS-1976: removing ObjectAdapter.replacePojo(Object pojo)
    
    also cleaning up
    
    Task-Url: https://issues.apache.org/jira/browse/ISIS-1976
---
 .../apache/isis/core/metamodel/adapter/ObjectAdapter.java   | 13 -------------
 .../facets/actions/action/invocation/CommandUtil.java       |  2 +-
 .../collections/javautilcollection/JavaArrayFacet.java      |  3 ++-
 .../collections/javautilcollection/JavaCollectionFacet.java |  9 +++++----
 .../facets/collections/modify/CollectionFacet.java          |  3 ++-
 .../specloader/specimpl/OneToOneAssociationDefault.java     |  2 +-
 .../standalonelist/CollectionFacetOnStandaloneList.java     |  3 ++-
 .../viewer/wicket/model/mementos/ObjectAdapterMemento.java  |  2 +-
 .../viewer/wicket/model/models/EntityCollectionModel.java   |  2 +-
 9 files changed, 15 insertions(+), 24 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 48b4745..fc67020 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
@@ -469,19 +469,6 @@ public interface ObjectAdapter extends Instance {
             return Util::unwrap;
         }
 
-        public static Function<Object, ObjectAdapter> adapterForUsing(final 
ObjectAdapterProvider adapterProvider) {
-            return adapterProvider::adapterFor;
-        }
-
-        @Deprecated
-        public static com.google.common.base.Function<Object, ObjectAdapter> 
adapter_ForUsing(final ObjectAdapterProvider adapterProvider) {
-            return new com.google.common.base.Function<Object, 
ObjectAdapter>() {
-                @Override
-                public ObjectAdapter apply(final Object pojo) {
-                    return adapterProvider.adapterFor(pojo);
-                }
-            };
-        }
     }
 
     /**
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
index aea2939..f0f9112 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actions/action/invocation/CommandUtil.java
@@ -103,7 +103,7 @@ public class CommandUtil {
 
     public static ObjectAdapter[] adaptersFor(final Object[] args, final 
ObjectAdapterProvider adapterProvider) {
         return _NullSafe.stream(args)
-                .map(ObjectAdapter.Functions.adapterForUsing(adapterProvider))
+                .map(adapterProvider::adapterFor)
                 .collect(_Arrays.toArray(ObjectAdapter.class, 
_NullSafe.size(args)));
     }
 
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaArrayFacet.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaArrayFacet.java
index 315027c..94ffea2 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaArrayFacet.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaArrayFacet.java
@@ -43,13 +43,14 @@ public class JavaArrayFacet extends CollectionFacetAbstract 
{
      * Expected to be called with a {@link ObjectAdapter} wrapping an array.
      */
     @Override
-    public void init(final ObjectAdapter arrayAdapter, final ObjectAdapter[] 
initData) {
+    public ObjectAdapter init(final ObjectAdapter arrayAdapter, final 
ObjectAdapter[] initData) {
         final int length = initData.length;
         final Object[] array = new Object[length];
         for (int i = 0; i < length; i++) {
             array[i] = initData[i].getObject();
         }
         arrayAdapter.friend().replacePojo(array);
+        return arrayAdapter;
     }
 
     /**
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaCollectionFacet.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaCollectionFacet.java
index 84360f9..a1fe10d 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaCollectionFacet.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/javautilcollection/JavaCollectionFacet.java
@@ -21,10 +21,10 @@ package 
org.apache.isis.core.metamodel.facets.collections.javautilcollection;
 
 import java.util.Collection;
 import java.util.Iterator;
+import java.util.function.Function;
 
 import com.google.common.collect.Collections2;
 
-import org.apache.isis.commons.internal.base._NullSafe;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapter;
 import org.apache.isis.core.metamodel.adapter.ObjectAdapterProvider;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
@@ -40,13 +40,14 @@ public class JavaCollectionFacet extends 
CollectionFacetAbstract {
     }
     
     @Override
-    public void init(final ObjectAdapter collection, final ObjectAdapter[] 
initData) {
+    public ObjectAdapter init(final ObjectAdapter collection, final 
ObjectAdapter[] initData) {
         final Collection<? super Object> pojoCollection = 
pojoCollection(collection);
         pojoCollection.clear();
         for (final ObjectAdapter element : initData) {
             final Object pojo = element.getObject();
             pojoCollection.add(pojo);
         }
+        return collection;
     }
     
     @Override
@@ -55,8 +56,8 @@ public class JavaCollectionFacet extends 
CollectionFacetAbstract {
         
         //TODO [ahuber] java doc states, this is a live view, don't know if 
this is needed, 
         // or if a copy is sufficient
-        return Collections2.transform(pojoCollection,
-                
ObjectAdapter.Functions.adapter_ForUsing(getObjectAdapterProvider()));
+        return Collections2.transform(pojoCollection, 
adapterProvider::adapterFor);
+                
     }
 
     @Override
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionFacet.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionFacet.java
index 97d3798..fb6019f 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionFacet.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/collections/modify/CollectionFacet.java
@@ -56,8 +56,9 @@ public interface CollectionFacet extends Facet {
 
     /**
      * Set the contents of this collection.
+     * @return a possibly new instance
      */
-    void init(ObjectAdapter collectionAdapter, ObjectAdapter[] elements);
+    ObjectAdapter init(ObjectAdapter collectionAdapter, ObjectAdapter[] 
elements);
 
     /**
      * Convenience method that returns the {@link TypeOfFacet} on this facet's
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
index bd313fa..7418bda 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToOneAssociationDefault.java
@@ -272,7 +272,7 @@ public class OneToOneAssociationDefault extends 
ObjectAssociationAbstract implem
                 getSpecificationLoader(),
                 interactionInitiatedBy);
         List<ObjectAdapter> adapters = _NullSafe.stream(pojoOptions)
-                .map( ObjectAdapter.Functions.adapterForUsing( 
getObjectAdapterProvider() ) )
+                .map(  getObjectAdapterProvider()::adapterFor )
                 .collect(Collectors.toList());
         return adapters.toArray(new ObjectAdapter[]{});
     }
diff --git 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java
 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java
index cca3801..e03fda9 100644
--- 
a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java
+++ 
b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/standalonelist/CollectionFacetOnStandaloneList.java
@@ -64,7 +64,8 @@ public class CollectionFacetOnStandaloneList extends 
CollectionFacetAbstract {
      * Does nothing.
      */
     @Override
-    public void init(final ObjectAdapter collection, final ObjectAdapter[] 
initData) {
+    public ObjectAdapter init(final ObjectAdapter collection, final 
ObjectAdapter[] initData) {
+        return collection;
     }
 
 }
diff --git 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
index f4079cb..243cbac 100644
--- 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
+++ 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/mementos/ObjectAdapterMemento.java
@@ -134,7 +134,7 @@ public class ObjectAdapterMemento implements Serializable {
                 final List<Object> listOfPojos =
                         _Lists.transform(oam.list, 
Functions.toPojo(persistenceSession, specificationLoader));
 
-                return 
ObjectAdapter.Functions.adapterForUsing(persistenceSession).apply(listOfPojos);
+                return persistenceSession.adapterFor(listOfPojos);
             }
 
             @Override
diff --git 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
index fafc912..5970611 100644
--- 
a/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
+++ 
b/core/viewer-wicket-model/src/main/java/org/apache/isis/viewer/wicket/model/models/EntityCollectionModel.java
@@ -176,7 +176,7 @@ UiHintContainer {
 
                 final List<ObjectAdapter> adapterList =
                         _Lists.transform(objectList,
-                                ObjectAdapter.Functions.adapterForUsing( 
entityCollectionModel.getPersistenceSession() ));
+                                
entityCollectionModel.getPersistenceSession()::adapterFor);
 
                 return adapterList;
             }

Reply via email to