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/01/08 12:05:59 UTC
[isis] branch master updated: ISIS-2158: validation: be more
verbose on invalid contributed actions
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 9eb89a4 ISIS-2158: validation: be more verbose on invalid contributed actions
9eb89a4 is described below
commit 9eb89a4217742c091dc1064556b74b804fa91cd8
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Jan 8 13:05:48 2020 +0100
ISIS-2158: validation: be more verbose on invalid contributed actions
---
.../dflt/ProgrammingModelFacetsJava8.java | 22 +++++++++++++---------
1 file changed, 13 insertions(+), 9 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java
index 77fb34d..bc5ca80 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/progmodels/dflt/ProgrammingModelFacetsJava8.java
@@ -17,13 +17,12 @@
package org.apache.isis.metamodel.progmodels.dflt;
-import java.util.function.Predicate;
+import java.util.stream.Collectors;
import org.apache.isis.applib.Identifier;
import org.apache.isis.applib.services.inject.ServiceInjector;
import org.apache.isis.commons.internal.ioc.BeanSort;
import org.apache.isis.metamodel.authorization.standard.AuthorizationFacetFactory;
-import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facets.OrphanedSupportingMethodValidator;
import org.apache.isis.metamodel.facets.actions.action.ActionAnnotationFacetFactory;
import org.apache.isis.metamodel.facets.actions.action.ActionChoicesForCollectionParameterFacetFactory;
@@ -150,12 +149,10 @@ import org.apache.isis.metamodel.facets.value.uuid.UUIDValueFacetUsingSemanticsP
import org.apache.isis.metamodel.postprocessors.param.DeriveFacetsPostProcessor;
import org.apache.isis.metamodel.progmodel.ProgrammingModelAbstract;
import org.apache.isis.metamodel.services.title.TitlesAndTranslationsValidator;
-import org.apache.isis.metamodel.spec.ObjectSpecification;
import org.apache.isis.metamodel.spec.feature.Contributed;
-import org.apache.isis.metamodel.specloader.validator.MetaModelValidator;
-import org.apache.isis.metamodel.specloader.validator.MetaModelValidatorVisiting;
+import org.apache.isis.metamodel.spec.feature.ObjectAction;
-import lombok.NonNull;
+import lombok.val;
public final class ProgrammingModelFacetsJava8 extends ProgrammingModelAbstract {
@@ -369,11 +366,18 @@ public final class ProgrammingModelFacetsJava8 extends ProgrammingModelAbstract
addValidator((objectSpec, validator) -> {
final long numActions = objectSpec.streamObjectActions(Contributed.INCLUDED).count();
- if (numActions > 0) {
+ if (numActions > 0L) {
+
+ val actionIds = objectSpec.streamObjectActions(Contributed.INCLUDED)
+ .map(ObjectAction::getIdentifier)
+ .map(Identifier::toString)
+ .collect(Collectors.joining(", "));
+
validator.onFailure(objectSpec, objectSpec.getIdentifier(),
- "%s: is a (concrete) but UNKNOWN sort, yet has %d actions",
+ "%s: is a (concrete) but UNKNOWN sort, yet has %d actions: {%s}",
objectSpec.getCorrespondingClass().getName(),
- numActions);
+ numActions,
+ actionIds);
}
return false;
}, objectSpec -> objectSpec.getBeanSort() == BeanSort.UNKNOWN && ! objectSpec.isAbstract());