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 2020/05/01 09:09:09 UTC

[isis] branch master updated: ISIS-2340: remove support for service contributed actions (3)

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

ahuber pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/isis.git


The following commit(s) were added to refs/heads/master by this push:
     new 169ec07  ISIS-2340: remove support for service contributed actions (3)
169ec07 is described below

commit 169ec077e3f22708512d46d40ba741c2334a10cd
Author: Andi Huber <ah...@apache.org>
AuthorDate: Fri May 1 11:08:58 2020 +0200

    ISIS-2340: remove support for service contributed actions (3)
---
 .../specimpl/ObjectSpecificationAbstract.java      | 46 ------------------
 .../metamodel/specloader/specimpl/Predicates.java  | 54 ----------------------
 2 files changed, 100 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
index e945c8a..742739e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/ObjectSpecificationAbstract.java
@@ -43,7 +43,6 @@ import org.apache.isis.core.commons.internal.collections._Multimaps.ListMultimap
 import org.apache.isis.core.commons.internal.collections._Sets;
 import org.apache.isis.core.commons.internal.collections._Streams;
 import org.apache.isis.core.commons.internal.exceptions._Exceptions;
-import org.apache.isis.core.commons.internal.ioc.ManagedBeanAdapter;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistry;
 import org.apache.isis.core.config.beans.IsisBeanTypeRegistryHolder;
 import org.apache.isis.core.metamodel.commons.ClassExtensions;
@@ -738,50 +737,6 @@ public abstract class ObjectSpecificationAbstract extends FacetHolderImpl implem
                 .filter(ContributeeMember.Predicates.regularElse(contributed));
     }
 
-    private Stream<ManagedBeanAdapter> streamManagedBeans() {
-        return getMetaModelContext().getServiceRegistry().streamRegisteredBeans();
-    }
-
-    // -- CONTRIBUTEE ASSOCIATIONS (PROPERTIES AND COLLECTIONS)
-
-    private List<ObjectAssociation> createContributeeAssociations() {
-        if (isManagedBean() || isValue()) {
-            return Collections.emptyList();
-        }
-        val contributeeAssociations = _Lists.<ObjectAssociation>newArrayList();
-        streamManagedBeans()
-        .forEach(serviceBean->forEachContributeeAssociation(serviceBean, contributeeAssociations::add));
-        return contributeeAssociations;
-    }
-
-    private void forEachContributeeAssociation(
-            ManagedBeanAdapter serviceBean, 
-            Consumer<ObjectAssociation> onNewContributeeAssociation) {
-
-        val serviceClass = serviceBean.getBeanClass();
-        val specification = getSpecificationLoader().loadSpecification(serviceClass,
-                IntrospectionState.TYPE_AND_MEMBERS_INTROSPECTED);
-        
-        if(specification==null) {
-            throw _Exceptions.unrecoverableFormatted("failed to load specification for service %s", serviceClass);
-        }
-        
-        if (specification == this) {
-            return;
-        }
-        
-        final Stream<ObjectAction> serviceActions = specification
-                .streamObjectActions(ActionType.USER, Contributed.INCLUDED);
-
-        serviceActions
-                .filter(Predicates.isContributeeAssociation(this))
-                .map(ObjectActionDefault.class::cast)
-                .map(Factories.contributeeAssociation(serviceBean, this))
-                .peek(facetProcessor::processMemberOrder)
-                .forEach(onNewContributeeAssociation);
-    }
-
-
     // -- mixin associations (properties and collections)
 
     private List<ObjectAssociation> createMixedInAssociations() {
@@ -994,7 +949,6 @@ public abstract class ObjectSpecificationAbstract extends FacetHolderImpl implem
             synchronized (unmodifiableAssociations) {
                 val associations = _Lists.newArrayList(this.associations);
                 if(isEntityOrViewModel()) {
-                    associations.addAll(createContributeeAssociations());
                     associations.addAll(createMixedInAssociations());
                 }
                 sortAndUpdateAssociations(associations);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/Predicates.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/Predicates.java
index a828fbe..84af357 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/Predicates.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/Predicates.java
@@ -18,8 +18,6 @@
  */
 package org.apache.isis.core.metamodel.specloader.specimpl;
 
-import java.util.function.Predicate;
-
 import org.apache.isis.applib.annotation.Where;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.actions.notcontributed.NotContributedFacet;
@@ -76,58 +74,6 @@ final class Predicates {
         return Utils.contributeeParameterIndexOf(typeSpec, contributeeAction)!=-1;
     }
     
-    // -- HIGHER LEVEL - CONTRIBUTEES
-    
-    static Predicate<ObjectAction> isContributeeAssociation(
-            final ObjectSpecification typeSpec) {
-        
-        return contributeeAction -> {
-            if(!isRequiredType(contributeeAction)) {
-                return false;
-            }
-            if(isAlwaysHidden(contributeeAction)) {
-                return false;
-            }
-            if(isActionContributionVetoed(contributeeAction)) {
-                return false;
-            }
-            if(!contributeeAction.hasReturn()) {
-                return false;
-            }
-            if(contributeeAction.getParameterCount() != 1) {
-                return false;
-            }
-            if(!contributeeAction.getSemantics().isSafeInNature()) {
-                return false;
-            }
-            if(!isAnyContributeeParameterMatching(typeSpec, contributeeAction)) {
-                return false;
-            }
-            return true;
-        };
-    }
-    
-    static Predicate<ObjectAction> isContributeeAction(
-            final ObjectSpecification typeSpec) {
-        
-        return contributeeAction -> {
-        
-            if(!isRequiredType(contributeeAction)) {
-                return false;
-            }
-            if(isAlwaysHidden(contributeeAction)) {
-                return false;
-            }
-            if(isActionContributionVetoed(contributeeAction)) {
-                return false;
-            }
-            if(!isAnyContributeeParameterMatching(typeSpec, contributeeAction)) {
-                return false;
-            }
-            return true; 
-        };
-    }
-    
     // -- HIGHER LEVEL - MIXINS
     
     static boolean isMixedInAction(ObjectAction mixinTypeAction) {