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 2019/12/15 14:16:40 UTC
[isis] 01/02: ISIS-2228: some efficiency improvements
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
commit 3213b542f463b1ced6e7375aff2d4b00e2c6bc0e
Author: Andi Huber <ah...@apache.org>
AuthorDate: Sun Dec 15 14:25:58 2019 +0100
ISIS-2228: some efficiency improvements
- replace List<FeatureType> -> EnumSet<FeatureType>
- replace static method prefix arrays -> Can<String>
---
.../isis/metamodel/facetapi/FeatureType.java | 41 +++++++++----------
.../apache/isis/metamodel/facets/FacetFactory.java | 4 +-
.../metamodel/facets/FacetFactoryAbstract.java | 15 +++----
.../metamodel/facets/MethodLiteralConstants.java | 5 +++
.../facets/MethodPrefixBasedFacetFactory.java | 5 +--
.../MethodPrefixBasedFacetFactoryAbstract.java | 26 ++++++------
...rCollectionIdentifyingFacetFactoryAbstract.java | 9 +++--
.../ActionDefaultsFacetViaMethodFactory.java | 3 +-
.../ActionValidationFacetViaMethodFactory.java | 8 ++--
.../CollectionAccessorFacetViaAccessorFactory.java | 3 +-
.../clear/CollectionClearFacetFactory.java | 4 +-
...tionAddToRemoveFromAndValidateFacetFactory.java | 4 +-
.../DisableForContextFacetViaMethodFactory.java | 4 +-
.../HideForContextFacetViaMethodFactory.java | 19 ++++++---
.../callbacks/CreatedCallbackFacetFactory.java | 3 +-
.../object/callbacks/LoadCallbackFacetFactory.java | 6 ++-
.../callbacks/PersistCallbackFacetFactory.java | 6 ++-
.../PersistCallbackViaSaveMethodFacetFactory.java | 6 ++-
.../callbacks/RemoveCallbackFacetFactory.java | 6 ++-
.../RemoveCallbackViaDeleteMethodFacetFactory.java | 7 +++-
.../callbacks/UpdateCallbackFacetFactory.java | 6 ++-
.../method/CssClassFacetMethodFactory.java | 9 +++--
.../DisabledObjectFacetViaMethodFactory.java | 3 +-
.../method/HiddenObjectFacetViaMethodFactory.java | 9 +++--
.../object/icon/method/IconFacetMethodFactory.java | 9 +++--
.../facets/object/layout/LayoutFacetFactory.java | 9 +++--
.../title/methods/TitleFacetViaMethodsFactory.java | 6 ++-
.../method/ValidateObjectFacetMethodFactory.java | 3 +-
...ParameterAutoCompleteFacetViaMethodFactory.java | 3 +-
.../method/ActionChoicesFacetViaMethodFactory.java | 6 +--
...ctionParameterChoicesFacetViaMethodFactory.java | 3 +-
...tionParameterDefaultsFacetViaMethodFactory.java | 3 +-
...tionParameterDisabledFacetViaMethodFactory.java | 7 ++--
...ActionParameterHiddenFacetViaMethodFactory.java | 3 +-
...onParameterValidationFacetViaMethodFactory.java | 7 ++--
.../PropertyAccessorFacetViaAccessorFactory.java | 6 ++-
.../PropertyAutoCompleteFacetMethodFactory.java | 13 ++++--
.../PropertyChoicesFacetViaMethodFactory.java | 5 ++-
.../PropertyDefaultFacetViaMethodFactory.java | 6 +--
.../update/PropertyModifyFacetFactory.java | 5 ++-
.../update/PropertySetAndClearFacetFactory.java | 8 +++-
.../PropertyValidateFacetViaMethodFactory.java | 3 +-
.../specloader/facetprocessor/FacetProcessor.java | 10 ++---
.../facets/AbstractFacetFactoryJUnit4TestCase.java | 12 ++----
.../metamodel/facets/AbstractFacetFactoryTest.java | 6 +--
.../org/apache/isis/metamodel/facets/Utils.java | 16 +++-----
.../facets/FacetsFacetAnnotationFactoryTest.java | 6 +--
...atastoreIdentityAnnotationFacetFactoryTest.java | 22 ++++------
...JdoDiscriminatorAnnotationFacetFactoryTest.java | 10 ++---
...rsistenceCapableAnnotationFacetFactoryTest.java | 32 +++++----------
.../JdoVersionAnnotationFacetFactoryTest.java | 9 ++---
...vedFromJdoColumnAnnotationFacetFactoryTest.java | 5 ++-
...vedFromJdoColumnAnnotationFacetFactoryTest.java | 5 ++-
...JdoNotPersistentAnnotationFacetFactoryTest.java | 5 ++-
...venJdoPrimaryKeyAnnotationFacetFactoryTest.java | 5 ++-
.../DomainModelTest_usingGoodDomain.java | 47 +++++++++++-----------
.../SupportingMethodValidatorRefinerFactory.java | 10 +++--
57 files changed, 277 insertions(+), 239 deletions(-)
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/FeatureType.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/FeatureType.java
index f7a1e3b..47e5337 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/FeatureType.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facetapi/FeatureType.java
@@ -21,10 +21,9 @@ package org.apache.isis.metamodel.facetapi;
import java.beans.Introspector;
import java.lang.reflect.Method;
-import java.util.List;
+import java.util.EnumSet;
import org.apache.isis.applib.Identifier;
-import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facets.FacetFactory;
@@ -86,34 +85,34 @@ public enum FeatureType {
}
};
- public final static List<FeatureType> COLLECTIONS_ONLY = _Lists.of(COLLECTION);
- public final static List<FeatureType> COLLECTIONS_AND_ACTIONS = _Lists.of(COLLECTION, ACTION);
- public final static List<FeatureType> ACTIONS_ONLY = _Lists.of(ACTION);
- public final static List<FeatureType> PARAMETERS_ONLY = _Lists.of(ACTION_PARAMETER_SCALAR, ACTION_PARAMETER_COLLECTION);
- public final static List<FeatureType> PROPERTIES_ONLY = _Lists.of(PROPERTY);
- public final static List<FeatureType> PROPERTIES_AND_ACTIONS = _Lists.of(PROPERTY, ACTION);
- public final static List<FeatureType> OBJECTS_ONLY = _Lists.of(OBJECT);
- public final static List<FeatureType> MEMBERS = _Lists.of(PROPERTY, COLLECTION, ACTION);
- public final static List<FeatureType> OBJECTS_AND_PROPERTIES = _Lists.of(OBJECT, PROPERTY);
- public final static List<FeatureType> PROPERTIES_AND_COLLECTIONS = _Lists.of(PROPERTY, COLLECTION);
- public final static List<FeatureType> OBJECTS_AND_COLLECTIONS = _Lists.of(OBJECT, COLLECTION);
- public final static List<FeatureType> OBJECTS_AND_ACTIONS = _Lists.of(OBJECT, ACTION);
- public final static List<FeatureType> OBJECTS_PROPERTIES_AND_COLLECTIONS = _Lists.of(OBJECT, PROPERTY, COLLECTION);
-
- public static final List<FeatureType> ACTIONS_AND_PARAMETERS =
- _Lists.of(ACTION, ACTION_PARAMETER_SCALAR, ACTION_PARAMETER_COLLECTION);
+ public final static EnumSet<FeatureType> COLLECTIONS_ONLY = EnumSet.of(COLLECTION);
+ public final static EnumSet<FeatureType> COLLECTIONS_AND_ACTIONS = EnumSet.of(COLLECTION, ACTION);
+ public final static EnumSet<FeatureType> ACTIONS_ONLY = EnumSet.of(ACTION);
+ public final static EnumSet<FeatureType> PARAMETERS_ONLY = EnumSet.of(ACTION_PARAMETER_SCALAR, ACTION_PARAMETER_COLLECTION);
+ public final static EnumSet<FeatureType> PROPERTIES_ONLY = EnumSet.of(PROPERTY);
+ public final static EnumSet<FeatureType> PROPERTIES_AND_ACTIONS = EnumSet.of(PROPERTY, ACTION);
+ public final static EnumSet<FeatureType> OBJECTS_ONLY = EnumSet.of(OBJECT);
+ public final static EnumSet<FeatureType> MEMBERS = EnumSet.of(PROPERTY, COLLECTION, ACTION);
+ public final static EnumSet<FeatureType> OBJECTS_AND_PROPERTIES = EnumSet.of(OBJECT, PROPERTY);
+ public final static EnumSet<FeatureType> PROPERTIES_AND_COLLECTIONS = EnumSet.of(PROPERTY, COLLECTION);
+ public final static EnumSet<FeatureType> OBJECTS_AND_COLLECTIONS = EnumSet.of(OBJECT, COLLECTION);
+ public final static EnumSet<FeatureType> OBJECTS_AND_ACTIONS = EnumSet.of(OBJECT, ACTION);
+ public final static EnumSet<FeatureType> OBJECTS_PROPERTIES_AND_COLLECTIONS = EnumSet.of(OBJECT, PROPERTY, COLLECTION);
+ public static final EnumSet<FeatureType> ACTIONS_AND_PARAMETERS =
+ EnumSet.of(ACTION, ACTION_PARAMETER_SCALAR, ACTION_PARAMETER_COLLECTION);
/**
* Use of this is discouraged; instead use multiple {@link FacetFactory}s
* for different features.
*/
- public final static List<FeatureType> EVERYTHING_BUT_PARAMETERS = _Lists.of(OBJECT, PROPERTY, COLLECTION, ACTION);
+ public final static EnumSet<FeatureType> EVERYTHING_BUT_PARAMETERS =
+ EnumSet.complementOf(
+ EnumSet.of(ACTION_PARAMETER_SCALAR, ACTION_PARAMETER_COLLECTION));
/**
* Use of this is discouraged; instead use multiple {@link FacetFactory}s
* for different features.
*/
- public final static List<FeatureType> EVERYTHING =
- _Lists.of(OBJECT, PROPERTY, COLLECTION, ACTION, ACTION_PARAMETER_SCALAR, ACTION_PARAMETER_COLLECTION);
+ public final static EnumSet<FeatureType> EVERYTHING = EnumSet.allOf(FeatureType.class);
private final String name;
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java
index 7a02c39..b7122c6 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactory.java
@@ -22,7 +22,7 @@ package org.apache.isis.metamodel.facets;
import java.lang.annotation.Annotation;
import java.lang.reflect.Method;
import java.lang.reflect.Parameter;
-import java.util.List;
+import java.util.EnumSet;
import java.util.Optional;
import java.util.function.Consumer;
import java.util.function.Supplier;
@@ -143,7 +143,7 @@ public interface FacetFactory {
* the meta-model.
*
*/
- List<FeatureType> getFeatureTypes();
+ EnumSet<FeatureType> getFeatureTypes();
// //////////////////////////////////////
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactoryAbstract.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactoryAbstract.java
index fe7edb4..8ce0048 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactoryAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/FacetFactoryAbstract.java
@@ -19,9 +19,8 @@
package org.apache.isis.metamodel.facets;
-import java.util.List;
+import java.util.EnumSet;
-import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.context.MetaModelContext;
import org.apache.isis.metamodel.context.MetaModelContextAware;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -37,15 +36,11 @@ implements FacetFactory, MetaModelContextAware, MetaModelContext.Delegating {
@Getter(onMethod = @__({@Override})) @Setter(onMethod = @__({@Override}))
private MetaModelContext metaModelContext;
- private final List<FeatureType> featureTypes;
+ @Getter(onMethod = @__({@Override}))
+ private final EnumSet<FeatureType> featureTypes;
- public FacetFactoryAbstract(final List<FeatureType> featureTypes) {
- this.featureTypes = _Lists.unmodifiable(featureTypes);
- }
-
- @Override
- public List<FeatureType> getFeatureTypes() {
- return featureTypes;
+ public FacetFactoryAbstract(EnumSet<FeatureType> featureTypes) {
+ this.featureTypes = featureTypes;
}
@Override
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodLiteralConstants.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodLiteralConstants.java
index 4434e7a..fa6f7a0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodLiteralConstants.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodLiteralConstants.java
@@ -66,5 +66,10 @@ public final class MethodLiteralConstants {
public static final String TITLE = "title";
public static final String TO_STRING = "toString";
+ public static final String CSS_CLASS_PREFIX = "cssClass";
+ public static final String HIDDEN_PREFIX = "hidden";
+ public static final String ICON_NAME_PREFIX = "iconName";
+ public static final String LAYOUT_METHOD_NAME = "layout";
+
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactory.java
index 00f152f..3f8184b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactory.java
@@ -19,8 +19,7 @@
package org.apache.isis.metamodel.facets;
-import java.util.List;
-
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.MetaModelRefiner;
import org.apache.isis.metamodel.specloader.facetprocessor.FacetProcessor;
@@ -36,5 +35,5 @@ public interface MethodPrefixBasedFacetFactory extends FacetFactory, MetaModelRe
/**
* All prefixes recognized by this {@link FacetFactory}.
*/
- public List<String> getPrefixes();
+ public Can<String> getPrefixes();
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactoryAbstract.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactoryAbstract.java
index 4a7891f..ddc75a3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactoryAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/MethodPrefixBasedFacetFactoryAbstract.java
@@ -18,43 +18,43 @@
*/
package org.apache.isis.metamodel.facets;
-import java.util.Arrays;
-import java.util.Collections;
-import java.util.List;
+import java.util.EnumSet;
import java.util.Objects;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.progmodel.ProgrammingModel;
import org.apache.isis.metamodel.spec.feature.Contributed;
+import lombok.Getter;
+import lombok.NonNull;
import lombok.val;
public abstract class MethodPrefixBasedFacetFactoryAbstract
extends FacetFactoryAbstract
implements MethodPrefixBasedFacetFactory {
- private final List<String> prefixes;
+ @Getter(onMethod = @__(@Override))
+ private final Can<String> prefixes;
private final OrphanValidation orphanValidation;
- protected enum OrphanValidation { // remove?
+ protected enum OrphanValidation {
VALIDATE,
DONT_VALIDATE
}
- public MethodPrefixBasedFacetFactoryAbstract(final List<FeatureType> featureTypes, final OrphanValidation orphanValidation, final String... prefixes) {
+ public MethodPrefixBasedFacetFactoryAbstract(
+ @NonNull final EnumSet<FeatureType> featureTypes,
+ @NonNull final OrphanValidation orphanValidation,
+ @NonNull final Can<String> prefixes) {
+
super(featureTypes);
this.orphanValidation = orphanValidation;
- this.prefixes = Collections.unmodifiableList(Arrays.asList(prefixes));
+ this.prefixes = prefixes;
}
@Override
- public List<String> getPrefixes() {
- return prefixes;
- }
-
-
- @Override
public void refineProgrammingModel(ProgrammingModel programmingModel) {
// we can safely skip this validation if the @Action annotation is mandatory
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java
index a6789a5..b2676d8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/PropertyOrCollectionIdentifyingFacetFactoryAbstract.java
@@ -19,8 +19,9 @@
package org.apache.isis.metamodel.facets;
-import java.util.List;
+import java.util.EnumSet;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal.collections._Collections;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -28,8 +29,10 @@ public abstract class PropertyOrCollectionIdentifyingFacetFactoryAbstract
extends MethodPrefixBasedFacetFactoryAbstract
implements PropertyOrCollectionIdentifyingFacetFactory {
-
- public PropertyOrCollectionIdentifyingFacetFactoryAbstract(final List<FeatureType> featureTypes, final String... prefixes) {
+ public PropertyOrCollectionIdentifyingFacetFactoryAbstract(
+ final EnumSet<FeatureType> featureTypes,
+ final Can<String> prefixes) {
+
super(featureTypes, OrphanValidation.DONT_VALIDATE, prefixes);
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
index 2331e6b..675b3a9 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/defaults/method/ActionDefaultsFacetViaMethodFactory.java
@@ -22,6 +22,7 @@ package org.apache.isis.metamodel.facets.actions.defaults.method;
import java.lang.reflect.Method;
import java.util.List;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal._Constants;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -36,7 +37,7 @@ import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
*/
public class ActionDefaultsFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.DEFAULT_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.DEFAULT_PREFIX);
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java
index a951854..ac6cf75 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/actions/validate/method/ActionValidationFacetViaMethodFactory.java
@@ -19,11 +19,10 @@
package org.apache.isis.metamodel.facets.actions.validate.method;
-import lombok.val;
-
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -33,12 +32,15 @@ import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.actions.validate.ActionValidationFacet;
+import lombok.val;
+
/**
* Sets up {@link ActionValidationFacet}.
*/
public class ActionValidationFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.VALIDATE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.VALIDATE_PREFIX);
+
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java
index 4ba2d0e..62ffd1f 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/accessor/CollectionAccessorFacetViaAccessorFactory.java
@@ -23,6 +23,7 @@ import java.lang.reflect.Method;
import java.util.Collection;
import java.util.List;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.CanBeVoid;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -35,7 +36,7 @@ import org.apache.isis.metamodel.spec.ObjectSpecification;
public class CollectionAccessorFacetViaAccessorFactory
extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.GET_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.GET_PREFIX);
public CollectionAccessorFacetViaAccessorFactory() {
super(FeatureType.COLLECTIONS_ONLY, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java
index 93dd8b9..0b8e22a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/clear/CollectionClearFacetFactory.java
@@ -21,6 +21,7 @@ package org.apache.isis.metamodel.facets.collections.clear;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -31,8 +32,7 @@ import org.apache.isis.metamodel.facets.collections.modify.CollectionClearFacet;
public class CollectionClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.CLEAR_PREFIX };
-
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.CLEAR_PREFIX);
public CollectionClearFacetFactory() {
super(FeatureType.COLLECTIONS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java
index cd21d10..3533eb3 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/collections/modify/CollectionAddToRemoveFromAndValidateFacetFactory.java
@@ -22,6 +22,7 @@ package org.apache.isis.metamodel.facets.collections.modify;
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.exceptions.MetaModelException;
import org.apache.isis.metamodel.facetapi.FacetHolder;
@@ -41,8 +42,7 @@ import org.apache.isis.metamodel.facets.collections.validate.CollectionValidateR
*/
public class CollectionAddToRemoveFromAndValidateFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = {};
-
+ private static final Can<String> PREFIXES = Can.empty();
public CollectionAddToRemoveFromAndValidateFacetFactory() {
super(FeatureType.COLLECTIONS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
index 957addc..562d659 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/disabled/method/DisableForContextFacetViaMethodFactory.java
@@ -22,6 +22,7 @@ package org.apache.isis.metamodel.facets.members.disabled.method;
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetHolder;
@@ -33,8 +34,7 @@ import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class DisableForContextFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
-
- private static final String[] PREFIXES = { MethodLiteralConstants.DISABLE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.DISABLE_PREFIX);
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java
index 4dd6f31..0fd5f33 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/members/hidden/method/HideForContextFacetViaMethodFactory.java
@@ -21,19 +21,21 @@ package org.apache.isis.metamodel.facets.members.hidden.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-public class HideForContextFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
+import lombok.val;
+public class HideForContextFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.HIDE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.HIDE_PREFIX);
/**
* Note that the {@link Facet}s registered are the generic ones from
@@ -54,9 +56,14 @@ public class HideForContextFacetViaMethodFactory extends MethodPrefixBasedFacetF
private void attachHideFacetIfHideMethodIsFound(final ProcessMethodContext processMethodContext) {
- final Method getMethod = processMethodContext.getMethod();
- final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(getMethod.getName());
+ final Method getter = processMethodContext.getMethod();
+ final String capitalizedName = StringExtensions.asJavaBaseNameStripAccessorPrefixIfRequired(getter.getName());
+ val getterName = getter.toString();
+ if(getterName.contains("ProperMemberSupport")) {
+ System.out.println("#hide# " + getter);
+ }
+
final Class<?> cls = processMethodContext.getCls();
Method hideMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, new Class[] {});
if (hideMethod == null) {
@@ -64,7 +71,7 @@ public class HideForContextFacetViaMethodFactory extends MethodPrefixBasedFacetF
boolean noParamsOnly = getConfiguration().getReflector().getValidator().isNoParamsOnly();
boolean searchExactMatch = !noParamsOnly;
if(searchExactMatch) {
- hideMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, getMethod.getParameterTypes());
+ hideMethod = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.HIDE_PREFIX + capitalizedName, boolean.class, getter.getParameterTypes());
}
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java
index ab0f17b..9bd3ff7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/CreatedCallbackFacetFactory.java
@@ -19,6 +19,7 @@
package org.apache.isis.metamodel.facets.object.callbacks;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
@@ -28,7 +29,7 @@ import lombok.val;
public class CreatedCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.CREATED_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.CREATED_PREFIX);
public CreatedCallbackFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java
index 77a39e0..da1131b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/LoadCallbackFacetFactory.java
@@ -21,6 +21,8 @@ package org.apache.isis.metamodel.facets.object.callbacks;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
@@ -32,7 +34,9 @@ import lombok.val;
public class LoadCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { LOADED_PREFIX, LOADING_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ LOADED_PREFIX,
+ LOADING_PREFIX));
public LoadCallbackFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java
index 01d329f..b1f1f45 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackFacetFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.object.callbacks;
import java.lang.reflect.Method;
import java.util.ArrayList;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -33,7 +35,9 @@ import lombok.val;
public class PersistCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.PERSISTED_PREFIX, MethodLiteralConstants.PERSISTING_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ MethodLiteralConstants.PERSISTED_PREFIX,
+ MethodLiteralConstants.PERSISTING_PREFIX));
public PersistCallbackFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java
index 7c3ba46..97ed2bc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/PersistCallbackViaSaveMethodFacetFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.object.callbacks;
import java.lang.reflect.Method;
import java.util.ArrayList;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -33,7 +35,9 @@ import lombok.val;
public class PersistCallbackViaSaveMethodFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.SAVED_PREFIX, MethodLiteralConstants.SAVING_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ MethodLiteralConstants.SAVED_PREFIX,
+ MethodLiteralConstants.SAVING_PREFIX));
public PersistCallbackViaSaveMethodFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
index 685ba8b..1d8fa23 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.object.callbacks;
import java.lang.reflect.Method;
import java.util.ArrayList;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -35,7 +37,9 @@ import lombok.val;
public class RemoveCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { REMOVED_PREFIX, REMOVING_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ REMOVED_PREFIX,
+ REMOVING_PREFIX));
public RemoveCallbackFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
index 516e577..0024dab 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.object.callbacks;
import java.lang.reflect.Method;
import java.util.ArrayList;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -35,7 +37,10 @@ import lombok.val;
public class RemoveCallbackViaDeleteMethodFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { DELETED_PREFIX, DELETING_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ DELETED_PREFIX,
+ DELETING_PREFIX));
+
public RemoveCallbackViaDeleteMethodFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java
index 2baad94..a64428d 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/callbacks/UpdateCallbackFacetFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.object.callbacks;
import java.lang.reflect.Method;
import java.util.ArrayList;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -33,7 +35,9 @@ import lombok.val;
public class UpdateCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.UPDATED_PREFIX, MethodLiteralConstants.UPDATING_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ MethodLiteralConstants.UPDATED_PREFIX,
+ MethodLiteralConstants.UPDATING_PREFIX));
public UpdateCallbackFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java
index a3385a4..21d0301 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/cssclass/method/CssClassFacetMethodFactory.java
@@ -21,16 +21,16 @@ package org.apache.isis.metamodel.facets.object.cssclass.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
+import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class CssClassFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String CSS_CLASS_PREFIX = "cssClass";
-
- private static final String[] PREFIXES = { CSS_CLASS_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.CSS_CLASS_PREFIX);
public CssClassFacetMethodFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
@@ -41,7 +41,8 @@ public class CssClassFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbs
final Class<?> cls = processClassContext.getCls();
final FacetHolder facetHolder = processClassContext.getFacetHolder();
- final Method method = MethodFinderUtils.findMethod(cls, CSS_CLASS_PREFIX, String.class, NO_PARAMETERS_TYPES);
+ final Method method = MethodFinderUtils.findMethod(
+ cls, MethodLiteralConstants.CSS_CLASS_PREFIX, String.class, NO_PARAMETERS_TYPES);
if (method == null) {
return;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java
index e88aaaa..5b34e1e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/disabled/method/DisabledObjectFacetViaMethodFactory.java
@@ -20,6 +20,7 @@
package org.apache.isis.metamodel.facets.object.disabled.method;
import org.apache.isis.applib.Identifier;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facetapi.IdentifiedHolder;
@@ -47,7 +48,7 @@ import lombok.val;
*/
public class DisabledObjectFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { DISABLED };
+ private static final Can<String> PREFIXES = Can.ofSingleton(DISABLED);
public DisabledObjectFacetViaMethodFactory() {
super(FeatureType.EVERYTHING_BUT_PARAMETERS, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java
index 1432dee..0ee479a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/hidden/method/HiddenObjectFacetViaMethodFactory.java
@@ -21,11 +21,13 @@ package org.apache.isis.metamodel.facets.object.hidden.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.FacetedMethod;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
+import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.object.hidden.HiddenObjectFacet;
import org.apache.isis.metamodel.spec.ObjectSpecification;
@@ -44,9 +46,7 @@ import org.apache.isis.metamodel.spec.feature.ObjectMember;
*/
public class HiddenObjectFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String HIDDEN_PREFIX = "hidden";
-
- private static final String[] PREFIXES = { HIDDEN_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.HIDDEN_PREFIX);
public HiddenObjectFacetViaMethodFactory() {
super(FeatureType.EVERYTHING_BUT_PARAMETERS, OrphanValidation.VALIDATE, PREFIXES);
@@ -77,7 +77,8 @@ public class HiddenObjectFacetViaMethodFactory extends MethodPrefixBasedFacetFac
final Class<?> cls = processClassContext.getCls();
final FacetHolder facetHolder = processClassContext.getFacetHolder();
- final Method method = MethodFinderUtils.findMethod(cls, HIDDEN_PREFIX, returnType, NO_PARAMETERS_TYPES);
+ final Method method = MethodFinderUtils.findMethod(
+ cls, MethodLiteralConstants.HIDDEN_PREFIX, returnType, NO_PARAMETERS_TYPES);
if (method == null) {
return false;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java
index 7604dbe..be1159e 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/icon/method/IconFacetMethodFactory.java
@@ -21,17 +21,17 @@ package org.apache.isis.metamodel.facets.object.icon.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
+import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class IconFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String ICON_NAME_PREFIX = "iconName";
-
- private static final String[] PREFIXES = { ICON_NAME_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.ICON_NAME_PREFIX);
public IconFacetMethodFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
@@ -42,7 +42,8 @@ public class IconFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstrac
final Class<?> cls = processClassContext.getCls();
final FacetHolder facetHolder = processClassContext.getFacetHolder();
- final Method method = MethodFinderUtils.findMethod(cls, ICON_NAME_PREFIX, String.class, NO_PARAMETERS_TYPES);
+ final Method method = MethodFinderUtils.findMethod(
+ cls, MethodLiteralConstants.ICON_NAME_PREFIX, String.class, NO_PARAMETERS_TYPES);
if (method == null) {
return;
}
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java
index da62878..e65cb43 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/layout/LayoutFacetFactory.java
@@ -21,16 +21,16 @@ package org.apache.isis.metamodel.facets.object.layout;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
+import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class LayoutFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String LAYOUT_METHOD_NAME = "layout";
-
- private static final String[] PREFIXES = { LAYOUT_METHOD_NAME, };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.LAYOUT_METHOD_NAME);
public LayoutFacetFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
@@ -41,7 +41,8 @@ public class LayoutFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
final Class<?> cls = processClassContext.getCls();
final FacetHolder facetHolder = processClassContext.getFacetHolder();
- final Method method = MethodFinderUtils.findMethod(cls, LAYOUT_METHOD_NAME, String.class, NO_PARAMETERS_TYPES);
+ final Method method = MethodFinderUtils.findMethod(
+ cls, MethodLiteralConstants.LAYOUT_METHOD_NAME, String.class, NO_PARAMETERS_TYPES);
final LayoutFacet facet;
if (method == null) {
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java
index 37f1606..5051f55 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/title/methods/TitleFacetViaMethodsFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.object.title.methods;
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.commons.ClassExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
@@ -36,7 +38,9 @@ import static org.apache.isis.metamodel.facets.MethodLiteralConstants.TO_STRING;
public class TitleFacetViaMethodsFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { TO_STRING, TITLE, };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ TO_STRING,
+ TITLE));
public TitleFacetViaMethodsFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java
index 1490b7e..98efe80 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/object/validating/validateobject/method/ValidateObjectFacetMethodFactory.java
@@ -22,6 +22,7 @@ package org.apache.isis.metamodel.facets.object.validating.validateobject.method
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -33,7 +34,7 @@ import static org.apache.isis.metamodel.facets.MethodLiteralConstants.VALIDATE_P
public class ValidateObjectFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { VALIDATE_PREFIX, };
+ private static final Can<String> PREFIXES = Can.ofSingleton(VALIDATE_PREFIX);
public ValidateObjectFacetMethodFactory() {
super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java
index 5eada6d..0debc33 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/autocomplete/method/ActionParameterAutoCompleteFacetViaMethodFactory.java
@@ -25,6 +25,7 @@ import java.util.Collection;
import java.util.List;
import java.util.Set;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.FacetedMethod;
@@ -35,7 +36,7 @@ import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class ActionParameterAutoCompleteFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = {"autoComplete"};
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.AUTO_COMPLETE_PREFIX);
public ActionParameterAutoCompleteFacetViaMethodFactory() {
super(FeatureType.ACTIONS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
index 4549da3..7f239e2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/method/ActionChoicesFacetViaMethodFactory.java
@@ -22,19 +22,19 @@ package org.apache.isis.metamodel.facets.param.choices.method;
import java.lang.reflect.Method;
import java.util.Collection;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal._Constants;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class ActionChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.CHOICES_PREFIX };
-
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.CHOICES_PREFIX);
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java
index b92a0cc..78f9b41 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/choices/methodnum/ActionParameterChoicesFacetViaMethodFactory.java
@@ -24,6 +24,7 @@ import java.lang.reflect.Method;
import java.util.Collection;
import java.util.List;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.ListExtensions;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.exceptions.MetaModelException;
@@ -38,7 +39,7 @@ import org.apache.isis.metamodel.facets.param.choices.ActionChoicesFacet;
public class ActionParameterChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = {};
+ private static final Can<String> PREFIXES = Can.empty();
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java
index 83f78fd..f945dfa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/defaults/methodnum/ActionParameterDefaultsFacetViaMethodFactory.java
@@ -22,6 +22,7 @@ package org.apache.isis.metamodel.facets.param.defaults.methodnum;
import java.lang.reflect.Method;
import java.util.List;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.commons.internal.collections._Arrays;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.exceptions.MetaModelException;
@@ -41,7 +42,7 @@ import lombok.val;
*/
public class ActionParameterDefaultsFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = {};
+ private static final Can<String> PREFIXES = Can.empty();
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java
index 88a6343..a0eefe0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/disable/method/ActionParameterDisabledFacetViaMethodFactory.java
@@ -19,12 +19,11 @@
package org.apache.isis.metamodel.facets.param.disable.method;
-import lombok.val;
-
import java.lang.reflect.Method;
import java.util.List;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.ListExtensions;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -35,12 +34,14 @@ import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.param.disable.ActionParameterDisabledFacet;
+import lombok.val;
+
/**
* Sets up {@link ActionParameterDisabledFacet}.
*/
public class ActionParameterDisabledFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.DISABLE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.DISABLE_PREFIX);
public ActionParameterDisabledFacetViaMethodFactory() {
super(FeatureType.PARAMETERS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java
index 9b4918e..aecaf64 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/hide/method/ActionParameterHiddenFacetViaMethodFactory.java
@@ -24,6 +24,7 @@ import lombok.val;
import java.lang.reflect.Method;
import java.util.List;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.ListExtensions;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -39,7 +40,7 @@ import org.apache.isis.metamodel.facets.param.hide.ActionParameterHiddenFacet;
*/
public class ActionParameterHiddenFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.HIDE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.HIDE_PREFIX);
public ActionParameterHiddenFacetViaMethodFactory() {
super(FeatureType.PARAMETERS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java
index 9828be0..e3e0c07 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/param/validate/method/ActionParameterValidationFacetViaMethodFactory.java
@@ -19,11 +19,10 @@
package org.apache.isis.metamodel.facets.param.validate.method;
-import lombok.val;
-
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -32,12 +31,14 @@ import org.apache.isis.metamodel.facets.MethodFinderUtils;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
+import lombok.val;
+
/**
* Sets up {@link org.apache.isis.metamodel.facets.param.validate.ActionParameterValidationFacet}.
*/
public class ActionParameterValidationFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.VALIDATE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.VALIDATE_PREFIX);
/**
* Note that the {@link Facet}s registered are the generic ones from
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java
index 5e7c117..8392f58 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/accessor/PropertyAccessorFacetViaAccessorFactory.java
@@ -22,6 +22,8 @@ package org.apache.isis.metamodel.facets.properties.accessor;
import java.lang.reflect.Method;
import java.util.List;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.commons.CanBeVoid;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
@@ -33,7 +35,9 @@ import org.apache.isis.metamodel.spec.ObjectSpecification;
public class PropertyAccessorFacetViaAccessorFactory extends PropertyOrCollectionIdentifyingFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.GET_PREFIX, MethodLiteralConstants.IS_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ MethodLiteralConstants.GET_PREFIX,
+ MethodLiteralConstants.IS_PREFIX));
public PropertyAccessorFacetViaAccessorFactory() {
super(FeatureType.PROPERTIES_ONLY, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java
index 4c29978..41bb625 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/autocomplete/method/PropertyAutoCompleteFacetMethodFactory.java
@@ -21,18 +21,20 @@ package org.apache.isis.metamodel.facets.properties.autocomplete.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
-public class PropertyAutoCompleteFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
+import lombok.val;
- private static final String[] PREFIXES = { MethodLiteralConstants.AUTO_COMPLETE_PREFIX };
+public class PropertyAutoCompleteFacetMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.AUTO_COMPLETE_PREFIX);
public PropertyAutoCompleteFacetMethodFactory() {
super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
@@ -50,7 +52,10 @@ public class PropertyAutoCompleteFacetMethodFactory extends MethodPrefixBasedFac
final Method getter = processMethodContext.getMethod();
final String capitalizedName = StringExtensions.asJavaBaseName(getter.getName());
- System.out.println("### " + getter);
+ val getterName = getter.toString();
+ if(getterName.contains("ProperMemberSupport")) {
+ System.out.println("#autoComplete# " + getter);
+ }
final Class<?> cls = processMethodContext.getCls();
final Class<?> returnType = getter.getReturnType();
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java
index ad36b1c..368e8dc 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/choices/method/PropertyChoicesFacetViaMethodFactory.java
@@ -21,17 +21,18 @@ package org.apache.isis.metamodel.facets.properties.choices.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class PropertyChoicesFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.CHOICES_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.CHOICES_PREFIX);
public PropertyChoicesFacetViaMethodFactory() {
super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java
index 9ba40f5..d9298a0 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/defaults/method/PropertyDefaultFacetViaMethodFactory.java
@@ -21,18 +21,18 @@ package org.apache.isis.metamodel.facets.properties.defaults.method;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
public class PropertyDefaultFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.DEFAULT_PREFIX };
-
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.DEFAULT_PREFIX);
public PropertyDefaultFacetViaMethodFactory() {
super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
index 6f1fa25..55fdf3c 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertyModifyFacetFactory.java
@@ -21,18 +21,19 @@ package org.apache.isis.metamodel.facets.properties.update;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.properties.update.modify.PropertySetterFacetViaModifyMethod;
public class PropertyModifyFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.MODIFY_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(MethodLiteralConstants.MODIFY_PREFIX);
public PropertyModifyFacetFactory() {
super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
index 1123777..1d7ab0b 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/update/PropertySetAndClearFacetFactory.java
@@ -21,13 +21,15 @@ package org.apache.isis.metamodel.facets.properties.update;
import java.lang.reflect.Method;
+import org.apache.isis.commons.collections.Can;
+import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetUtil;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.MethodFinderUtils;
-import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.MethodLiteralConstants;
+import org.apache.isis.metamodel.facets.MethodPrefixBasedFacetFactoryAbstract;
import org.apache.isis.metamodel.facets.members.disabled.DisabledFacet;
import org.apache.isis.metamodel.facets.properties.update.clear.PropertyClearFacetViaClearMethod;
import org.apache.isis.metamodel.facets.properties.update.clear.PropertyClearFacetViaSetterMethod;
@@ -36,7 +38,9 @@ import org.apache.isis.metamodel.facets.properties.update.modify.PropertySetterF
public class PropertySetAndClearFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { MethodLiteralConstants.SET_PREFIX, MethodLiteralConstants.CLEAR_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
+ MethodLiteralConstants.SET_PREFIX,
+ MethodLiteralConstants.CLEAR_PREFIX));
public PropertySetAndClearFacetFactory() {
super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
index 4348772..7977593 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/facets/properties/validating/method/PropertyValidateFacetViaMethodFactory.java
@@ -22,6 +22,7 @@ package org.apache.isis.metamodel.facets.properties.validating.method;
import java.lang.reflect.Method;
import org.apache.isis.applib.services.i18n.TranslationService;
+import org.apache.isis.commons.collections.Can;
import org.apache.isis.metamodel.commons.StringExtensions;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.FacetedMethod;
@@ -32,7 +33,7 @@ import static org.apache.isis.metamodel.facets.MethodLiteralConstants.VALIDATE_P
public class PropertyValidateFacetViaMethodFactory extends MethodPrefixBasedFacetFactoryAbstract {
- private static final String[] PREFIXES = { VALIDATE_PREFIX };
+ private static final Can<String> PREFIXES = Can.ofSingleton(VALIDATE_PREFIX);
public PropertyValidateFacetViaMethodFactory() {
super(FeatureType.PROPERTIES_ONLY, OrphanValidation.VALIDATE, PREFIXES);
diff --git a/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/facetprocessor/FacetProcessor.java b/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/facetprocessor/FacetProcessor.java
index 25689ac..43845a8 100644
--- a/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/facetprocessor/FacetProcessor.java
+++ b/core/metamodel/src/main/java/org/apache/isis/metamodel/specloader/facetprocessor/FacetProcessor.java
@@ -32,8 +32,8 @@ import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.commons.internal.collections._Maps;
import org.apache.isis.commons.internal.collections._Multimaps;
import org.apache.isis.commons.internal.collections._Multimaps.ListMultimap;
+import org.apache.isis.commons.internal.collections._Sets;
import org.apache.isis.metamodel.context.MetaModelContext;
-import org.apache.isis.metamodel.commons.ListExtensions;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facetapi.MethodRemover;
@@ -82,7 +82,7 @@ public class FacetProcessor {
* {@link MethodPrefixBasedFacetFactory}.
*
*/
- private final _Lazy<List<String>> methodPrefixes =
+ private final _Lazy<Set<String>> methodPrefixes =
_Lazy.threadSafe(this::init_methodPrefixes);
/**
@@ -433,12 +433,12 @@ public class FacetProcessor {
return factoryListByFeatureType;
}
- private List<String> init_methodPrefixes() {
- val cachedMethodPrefixes = _Lists.<String>newArrayList();
+ private Set<String> init_methodPrefixes() {
+ val cachedMethodPrefixes = _Sets.<String>newHashSet();
for (val facetFactory : factories) {
if (facetFactory instanceof MethodPrefixBasedFacetFactory) {
val methodPrefixBasedFacetFactory = (MethodPrefixBasedFacetFactory) facetFactory;
- ListExtensions.mergeWith(cachedMethodPrefixes, methodPrefixBasedFacetFactory.getPrefixes());
+ methodPrefixBasedFacetFactory.getPrefixes().forEach(cachedMethodPrefixes::add);
}
}
return cachedMethodPrefixes;
diff --git a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java
index d3f732a..9e637fe 100644
--- a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java
+++ b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryJUnit4TestCase.java
@@ -20,7 +20,7 @@
package org.apache.isis.metamodel.facets;
import java.lang.reflect.Method;
-import java.util.List;
+import java.util.EnumSet;
import java.util.Optional;
import org.jmock.Expectations;
@@ -33,10 +33,10 @@ import org.apache.isis.applib.Identifier;
import org.apache.isis.applib.services.i18n.TranslationService;
import org.apache.isis.applib.services.inject.ServiceInjector;
import org.apache.isis.applib.services.registry.ServiceRegistry;
-import org.apache.isis.metamodel.context.MetaModelContext;
-import org.apache.isis.metamodel.context.MetaModelContextAware;
import org.apache.isis.metamodel.MetaModelContext_forTesting;
import org.apache.isis.metamodel.adapter.ObjectAdapterProvider;
+import org.apache.isis.metamodel.context.MetaModelContext;
+import org.apache.isis.metamodel.context.MetaModelContextAware;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facetapi.IdentifiedHolder;
@@ -139,11 +139,7 @@ public abstract class AbstractFacetFactoryJUnit4TestCase {
return Utils.contains(types, type);
}
- protected boolean contains(final FeatureType[] featureTypes, final FeatureType featureType) {
- return Utils.contains(featureTypes, featureType);
- }
-
- protected static boolean contains(final List<FeatureType> featureTypes, final FeatureType featureType) {
+ protected static boolean contains(final EnumSet<FeatureType> featureTypes, final FeatureType featureType) {
return Utils.contains(featureTypes, featureType);
}
diff --git a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryTest.java
index b6d816d..a5e9530 100644
--- a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/AbstractFacetFactoryTest.java
@@ -20,16 +20,16 @@
package org.apache.isis.metamodel.facets;
import java.lang.reflect.Method;
-import java.util.List;
+import java.util.EnumSet;
import org.jmock.Expectations;
import org.junit.Rule;
import org.apache.isis.applib.Identifier;
import org.apache.isis.applib.services.i18n.TranslationService;
-import org.apache.isis.metamodel.context.MetaModelContextAware;
import org.apache.isis.metamodel.MetaModelContext_forTesting;
import org.apache.isis.metamodel.adapter.ObjectAdapterProvider;
+import org.apache.isis.metamodel.context.MetaModelContextAware;
import org.apache.isis.metamodel.facetapi.FacetHolder;
import org.apache.isis.metamodel.facetapi.FacetHolderImpl;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -149,7 +149,7 @@ public abstract class AbstractFacetFactoryTest extends TestCase {
return Utils.contains(types, type);
}
- protected static boolean contains(final List<FeatureType> featureTypes, final FeatureType featureType) {
+ protected static boolean contains(final EnumSet<FeatureType> featureTypes, final FeatureType featureType) {
return Utils.contains(featureTypes, featureType);
}
diff --git a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/Utils.java b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/Utils.java
index 0ebedb1..0436489 100644
--- a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/Utils.java
+++ b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/Utils.java
@@ -20,7 +20,7 @@
package org.apache.isis.metamodel.facets;
import java.lang.reflect.Method;
-import java.util.List;
+import java.util.EnumSet;
import org.apache.isis.commons.internal._Constants;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -40,17 +40,11 @@ class Utils {
return false;
}
- protected static boolean contains(final FeatureType[] array, final FeatureType val) {
- for (final FeatureType element : array) {
- if (element == val) {
- return true;
- }
+ protected static boolean contains(EnumSet<FeatureType> featureTypes, final FeatureType featureType) {
+ if(featureTypes==null || featureType==null) {
+ return false;
}
- return false;
- }
-
- protected static boolean contains(final List<FeatureType> list, final FeatureType val) {
- return list.contains(val);
+ return featureTypes.contains(featureType);
}
protected static Method findMethod(final Class<?> type, final String methodName, final Class<?>[] methodTypes) {
diff --git a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/object/facets/FacetsFacetAnnotationFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/object/facets/FacetsFacetAnnotationFactoryTest.java
index cf2052c..d75f589 100644
--- a/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/object/facets/FacetsFacetAnnotationFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/metamodel/facets/object/facets/FacetsFacetAnnotationFactoryTest.java
@@ -19,7 +19,7 @@
package org.apache.isis.metamodel.facets.object.facets;
-import java.util.List;
+import java.util.EnumSet;
import org.apache.isis.applib.annotation.Facets;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -49,7 +49,7 @@ public class FacetsFacetAnnotationFactoryTest extends AbstractFacetFactoryTest {
public static class CustomerFacetFactory implements FacetFactory {
@Override
- public List<FeatureType> getFeatureTypes() {
+ public EnumSet<FeatureType> getFeatureTypes() {
return null;
}
@@ -68,7 +68,7 @@ public class FacetsFacetAnnotationFactoryTest extends AbstractFacetFactoryTest {
public static class CustomerFacetFactory2 implements FacetFactory {
@Override
- public List<FeatureType> getFeatureTypes() {
+ public EnumSet<FeatureType> getFeatureTypes() {
return null;
}
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/datastoreidentity/GivenJdoDatastoreIdentityAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/datastoreidentity/GivenJdoDatastoreIdentityAnnotationFacetFactoryTest.java
index 5751bde..13cc37c 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/datastoreidentity/GivenJdoDatastoreIdentityAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/datastoreidentity/GivenJdoDatastoreIdentityAnnotationFacetFactoryTest.java
@@ -18,15 +18,10 @@
*/
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.datastoreidentity;
-import java.util.List;
-
import javax.jdo.annotations.DatastoreIdentity;
import javax.jdo.annotations.IdGeneratorStrategy;
import javax.jdo.annotations.PersistenceCapable;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityAnnotationFacetFactory;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityFacet;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.datastoreidentity.JdoDatastoreIdentityFacetAnnotation;
import org.datanucleus.enhancement.Persistable;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -34,11 +29,10 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.AbstractFacetFactoryTest;
import org.apache.isis.metamodel.facets.FacetFactory;
-import junit.framework.Assert;
-
+import lombok.val;
-public class GivenJdoDatastoreIdentityAnnotationFacetFactoryTest extends
-AbstractFacetFactoryTest {
+public class GivenJdoDatastoreIdentityAnnotationFacetFactoryTest
+extends AbstractFacetFactoryTest {
private JdoDatastoreIdentityAnnotationFacetFactory facetFactory;
@@ -56,14 +50,12 @@ AbstractFacetFactoryTest {
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory
- .getFeatureTypes();
- Assert.assertTrue(contains(featureTypes, FeatureType.OBJECT));
+ val featureTypes = facetFactory.getFeatureTypes();
+ assertTrue(contains(featureTypes, FeatureType.OBJECT));
assertFalse(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
- Assert.assertFalse(contains(featureTypes, FeatureType.ACTION));
- assertFalse(contains(featureTypes,
- FeatureType.ACTION_PARAMETER_SCALAR));
+ assertFalse(contains(featureTypes, FeatureType.ACTION));
+ assertFalse(contains(featureTypes, FeatureType.ACTION_PARAMETER_SCALAR));
}
public void testDatastoreIdentityAnnotationPickedUpOnClass() {
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/discriminator/GivenJdoDiscriminatorAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/discriminator/GivenJdoDiscriminatorAnnotationFacetFactoryTest.java
index bb1192f..030389d 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/discriminator/GivenJdoDiscriminatorAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/discriminator/GivenJdoDiscriminatorAnnotationFacetFactoryTest.java
@@ -18,15 +18,9 @@
*/
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.discriminator;
-import java.util.List;
-
import javax.jdo.annotations.Discriminator;
import javax.jdo.annotations.PersistenceCapable;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.discriminator.JdoDiscriminatorAnnotationFacetFactory;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.discriminator.JdoDiscriminatorFacet;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.discriminator.JdoDiscriminatorFacetDefault;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.discriminator.ObjectSpecIdFacetInferredFromJdoDiscriminatorValueAnnotation;
import org.datanucleus.enhancement.Persistable;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -37,6 +31,8 @@ import org.apache.isis.metamodel.facets.ObjectSpecIdFacetFactory;
import org.apache.isis.metamodel.facets.object.objectspecid.ObjectSpecIdFacet;
import org.apache.isis.metamodel.spec.ObjectSpecId;
+import lombok.val;
+
public class GivenJdoDiscriminatorAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
private JdoDiscriminatorAnnotationFacetFactory facetFactory;
@@ -55,7 +51,7 @@ public class GivenJdoDiscriminatorAnnotationFacetFactoryTest extends AbstractFac
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
+ val featureTypes = facetFactory.getFeatureTypes();
assertTrue(contains(featureTypes, FeatureType.OBJECT));
assertFalse(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/persistencecapable/GivenJdoPersistenceCapableAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/persistencecapable/GivenJdoPersistenceCapableAnnotationFacetFactoryTest.java
index 084678a..93866af 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/persistencecapable/GivenJdoPersistenceCapableAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/persistencecapable/GivenJdoPersistenceCapableAnnotationFacetFactoryTest.java
@@ -18,14 +18,9 @@
*/
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.persistencecapable;
-import java.util.List;
-
import javax.jdo.annotations.IdentityType;
import javax.jdo.annotations.PersistenceCapable;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.persistencecapable.JdoPersistenceCapableAnnotationFacetFactory;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.persistencecapable.JdoPersistenceCapableFacet;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.persistencecapable.JdoPersistenceCapableFacetAnnotation;
import org.datanucleus.enhancement.Persistable;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -34,11 +29,10 @@ import org.apache.isis.metamodel.facets.AbstractFacetFactoryTest;
import org.apache.isis.metamodel.facets.FacetFactory;
import org.apache.isis.metamodel.facets.ObjectSpecIdFacetFactory;
-import junit.framework.Assert;
-
+import lombok.val;
-public class GivenJdoPersistenceCapableAnnotationFacetFactoryTest extends
-AbstractFacetFactoryTest {
+public class GivenJdoPersistenceCapableAnnotationFacetFactoryTest
+extends AbstractFacetFactoryTest {
private JdoPersistenceCapableAnnotationFacetFactory facetFactory;
@@ -56,20 +50,12 @@ AbstractFacetFactoryTest {
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory
- .getFeatureTypes();
- Assert
- .assertTrue(contains(featureTypes,
- FeatureType.OBJECT));
- assertFalse(contains(featureTypes,
- FeatureType.PROPERTY));
- assertFalse(contains(featureTypes,
- FeatureType.COLLECTION));
- Assert
- .assertFalse(contains(featureTypes,
- FeatureType.ACTION));
- assertFalse(contains(featureTypes,
- FeatureType.ACTION_PARAMETER_SCALAR));
+ val featureTypes = facetFactory.getFeatureTypes();
+ assertTrue(contains(featureTypes, FeatureType.OBJECT));
+ assertFalse(contains(featureTypes, FeatureType.PROPERTY));
+ assertFalse(contains(featureTypes, FeatureType.COLLECTION));
+ assertFalse(contains(featureTypes, FeatureType.ACTION));
+ assertFalse(contains(featureTypes, FeatureType.ACTION_PARAMETER_SCALAR));
}
public void testPersistenceCapableAnnotationPickedUpOnClass() {
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/version/JdoVersionAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/version/JdoVersionAnnotationFacetFactoryTest.java
index 5456949..7330ce0 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/version/JdoVersionAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/object/version/JdoVersionAnnotationFacetFactoryTest.java
@@ -18,14 +18,9 @@
*/
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.version;
-import java.util.List;
-
import javax.jdo.annotations.PersistenceCapable;
import javax.jdo.annotations.Version;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.version.JdoVersionAnnotationFacetFactory;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.version.JdoVersionFacet;
-import org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.object.version.JdoVersionFacetFromAnnotation;
import org.datanucleus.enhancement.Persistable;
import org.apache.isis.metamodel.facetapi.Facet;
@@ -33,6 +28,8 @@ import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.AbstractFacetFactoryTest;
import org.apache.isis.metamodel.facets.FacetFactory;
+import lombok.val;
+
public class JdoVersionAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
private JdoVersionAnnotationFacetFactory facetFactory;
@@ -51,7 +48,7 @@ public class JdoVersionAnnotationFacetFactoryTest extends AbstractFacetFactoryTe
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
+ val featureTypes = facetFactory.getFeatureTypes();
assertTrue(contains(featureTypes, FeatureType.OBJECT));
assertFalse(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/BigDecimalDerivedFromJdoColumnAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/BigDecimalDerivedFromJdoColumnAnnotationFacetFactoryTest.java
index 74b8eee..bbdc56c 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/BigDecimalDerivedFromJdoColumnAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/BigDecimalDerivedFromJdoColumnAnnotationFacetFactoryTest.java
@@ -19,7 +19,6 @@
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.prop.column;
import java.lang.reflect.Method;
-import java.util.List;
import org.apache.isis.metamodel.facetapi.Facet;
import org.apache.isis.metamodel.facetapi.FeatureType;
@@ -30,6 +29,8 @@ import org.apache.isis.metamodel.facets.value.bigdecimal.BigDecimalValueFacet;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
+import lombok.val;
+
public class BigDecimalDerivedFromJdoColumnAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
private BigDecimalDerivedFromJdoColumnAnnotationFacetFactory facetFactory;
@@ -48,7 +49,7 @@ public class BigDecimalDerivedFromJdoColumnAnnotationFacetFactoryTest extends Ab
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
+ val featureTypes = facetFactory.getFeatureTypes();
assertFalse(contains(featureTypes, FeatureType.OBJECT));
assertTrue(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/MandatoryDerivedFromJdoColumnAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/MandatoryDerivedFromJdoColumnAnnotationFacetFactoryTest.java
index 71382ad..0e71b9b 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/MandatoryDerivedFromJdoColumnAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/column/MandatoryDerivedFromJdoColumnAnnotationFacetFactoryTest.java
@@ -19,7 +19,6 @@
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.prop.column;
import java.lang.reflect.Method;
-import java.util.List;
import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facets.AbstractFacetFactoryTest;
@@ -29,6 +28,8 @@ import org.apache.isis.metamodel.facets.objectvalue.mandatory.MandatoryFacet;
import static org.hamcrest.CoreMatchers.is;
import static org.junit.Assert.assertThat;
+import lombok.val;
+
public class MandatoryDerivedFromJdoColumnAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
private MandatoryFromJdoColumnAnnotationFacetFactory facetFactory;
@@ -49,7 +50,7 @@ public class MandatoryDerivedFromJdoColumnAnnotationFacetFactoryTest extends Abs
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
+ val featureTypes = facetFactory.getFeatureTypes();
assertFalse(contains(featureTypes, FeatureType.OBJECT));
assertTrue(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/notpersistent/GivenJdoNotPersistentAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/notpersistent/GivenJdoNotPersistentAnnotationFacetFactoryTest.java
index cc68ebb..a1d70cf 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/notpersistent/GivenJdoNotPersistentAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/notpersistent/GivenJdoNotPersistentAnnotationFacetFactoryTest.java
@@ -19,7 +19,6 @@
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.prop.notpersistent;
import java.lang.reflect.Method;
-import java.util.List;
import javax.jdo.annotations.NotPersistent;
@@ -29,6 +28,8 @@ import org.apache.isis.metamodel.facets.AbstractFacetFactoryTest;
import org.apache.isis.metamodel.facets.FacetFactory;
import org.apache.isis.metamodel.facets.propcoll.notpersisted.NotPersistedFacet;
+import lombok.val;
+
public class GivenJdoNotPersistentAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
private JdoNotPersistentAnnotationFacetFactory facetFactory;
@@ -47,7 +48,7 @@ public class GivenJdoNotPersistentAnnotationFacetFactoryTest extends AbstractFac
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
+ val featureTypes = facetFactory.getFeatureTypes();
assertFalse(contains(featureTypes, FeatureType.OBJECT));
assertTrue(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
diff --git a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/primarykey/GivenJdoPrimaryKeyAnnotationFacetFactoryTest.java b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/primarykey/GivenJdoPrimaryKeyAnnotationFacetFactoryTest.java
index 3809119..938416c 100644
--- a/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/primarykey/GivenJdoPrimaryKeyAnnotationFacetFactoryTest.java
+++ b/core/persistence/jdo/datanucleus-5/src/test/java/org/apache/isis/persistence/jdo/datanucleus5/metamodel/facets/prop/primarykey/GivenJdoPrimaryKeyAnnotationFacetFactoryTest.java
@@ -19,7 +19,6 @@
package org.apache.isis.persistence.jdo.datanucleus5.metamodel.facets.prop.primarykey;
import java.lang.reflect.Method;
-import java.util.List;
import javax.jdo.annotations.PrimaryKey;
@@ -30,6 +29,8 @@ import org.apache.isis.metamodel.facets.FacetFactory;
import org.apache.isis.metamodel.facets.members.disabled.DisabledFacet;
import org.apache.isis.metamodel.facets.objectvalue.mandatory.MandatoryFacet;
+import lombok.val;
+
public class GivenJdoPrimaryKeyAnnotationFacetFactoryTest extends AbstractFacetFactoryTest {
private JdoPrimaryKeyAnnotationFacetFactory facetFactory;
@@ -48,7 +49,7 @@ public class GivenJdoPrimaryKeyAnnotationFacetFactoryTest extends AbstractFacetF
}
public void testFeatureTypes() {
- final List<FeatureType> featureTypes = facetFactory.getFeatureTypes();
+ val featureTypes = facetFactory.getFeatureTypes();
assertFalse(contains(featureTypes, FeatureType.OBJECT));
assertTrue(contains(featureTypes, FeatureType.PROPERTY));
assertFalse(contains(featureTypes, FeatureType.COLLECTION));
diff --git a/examples/smoketests/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java b/examples/smoketests/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java
index 3d2ab5a..de6ce62 100644
--- a/examples/smoketests/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java
+++ b/examples/smoketests/src/test/java/org/apache/isis/testdomain/domainmodel/DomainModelTest_usingGoodDomain.java
@@ -20,15 +20,17 @@ package org.apache.isis.testdomain.domainmodel;
import javax.inject.Inject;
-import org.junit.jupiter.api.Disabled;
import org.junit.jupiter.api.Test;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.TestPropertySource;
+import org.apache.isis.applib.services.jaxb.JaxbService;
+import org.apache.isis.applib.services.metamodel.MetaModelService;
import org.apache.isis.config.presets.IsisPresets;
import org.apache.isis.integtestsupport.validate.ValidateDomainModel;
import org.apache.isis.metamodel.specloader.SpecificationLoader;
import org.apache.isis.metamodel.specloader.specimpl.IntrospectionState;
+import org.apache.isis.schema.metamodel.v1.DomainClassDto;
import org.apache.isis.testdomain.Smoketest;
import org.apache.isis.testdomain.conf.Configuration_usingJdo;
import org.apache.isis.testdomain.jdo.Product;
@@ -62,35 +64,34 @@ import lombok.val;
//@Transactional
class DomainModelTest_usingGoodDomain {
-// @Inject private MetaModelService metaModelService;
-// @Inject private JaxbService jaxbService;
+ @Inject private MetaModelService metaModelService;
+ @Inject private JaxbService jaxbService;
// @Inject private FactoryService factoryService;
@Inject private SpecificationLoader specificationLoader;
void debug() {
-
-
-// val config = new MetaModelService.Config()
-//// .withIgnoreNoop()
-//// .withIgnoreAbstractClasses()
-//// .withIgnoreBuiltInValueTypes()
-//// .withIgnoreInterfaces()
-// //.withPackagePrefix("*")
-// .withPackagePrefix("org.apache.isis.testdomain.")
-// ;
-//
-// System.out.println("!!! listing MM");
-// val metamodelDto = metaModelService.exportMetaModel(config);
-// for (DomainClassDto domainClass : metamodelDto.getDomainClassDto()) {
-// System.out.println("dc: " + domainClass.getId());
-// val xmlString = jaxbService.toXml(domainClass);
-// System.out.println(xmlString);
-// }
-// System.out.println("!!! ---");
+ val config = new MetaModelService.Config()
+// .withIgnoreNoop()
+// .withIgnoreAbstractClasses()
+// .withIgnoreBuiltInValueTypes()
+// .withIgnoreInterfaces()
+ //.withPackagePrefix("*")
+ .withPackagePrefix("org.apache.isis.testdomain.")
+ ;
+
+ System.out.println("!!! listing MM");
+ val metamodelDto = metaModelService.exportMetaModel(config);
+ for (DomainClassDto domainClass : metamodelDto.getDomainClassDto()) {
+ System.out.println("dc: " + domainClass.getId());
+ val xmlString = jaxbService.toXml(domainClass);
+ System.out.println(xmlString);
+ }
+ System.out.println("!!! ---");
}
- @Test @Disabled("autoComplete, default, choices, don't get added to the MM with property contributed by mixins")
+ @Test
void goodDomain_shouldPassValidation() {
+ debug();
assertFalse(specificationLoader.snapshotSpecifications().isEmpty());
val validateDomainModel = new ValidateDomainModel(specificationLoader);
diff --git a/incubator/core/model/src/main/java/org/apache/isis/incubator/model/metamodel/facets/SupportingMethodValidatorRefinerFactory.java b/incubator/core/model/src/main/java/org/apache/isis/incubator/model/metamodel/facets/SupportingMethodValidatorRefinerFactory.java
index e587302..f0b772f 100644
--- a/incubator/core/model/src/main/java/org/apache/isis/incubator/model/metamodel/facets/SupportingMethodValidatorRefinerFactory.java
+++ b/incubator/core/model/src/main/java/org/apache/isis/incubator/model/metamodel/facets/SupportingMethodValidatorRefinerFactory.java
@@ -19,16 +19,17 @@
package org.apache.isis.incubator.model.metamodel.facets;
import java.lang.reflect.Method;
-import java.util.Collections;
+import java.util.EnumSet;
import java.util.HashSet;
import java.util.List;
import java.util.stream.Collectors;
-import org.apache.isis.incubator.model.applib.annotation.Model;
import org.apache.isis.commons.internal.collections._Lists;
import org.apache.isis.commons.internal.collections._Sets;
+import org.apache.isis.incubator.model.applib.annotation.Model;
import org.apache.isis.metamodel.commons.MethodUtil;
import org.apache.isis.metamodel.facetapi.FacetHolder;
+import org.apache.isis.metamodel.facetapi.FeatureType;
import org.apache.isis.metamodel.facetapi.MetaModelRefiner;
import org.apache.isis.metamodel.facets.FacetFactoryAbstract;
import org.apache.isis.metamodel.facets.ImperativeFacet;
@@ -42,11 +43,12 @@ import lombok.val;
* @since 2.0
*
*/
-public class SupportingMethodValidatorRefinerFactory extends FacetFactoryAbstract
+public class SupportingMethodValidatorRefinerFactory
+extends FacetFactoryAbstract
implements MetaModelRefiner {
public SupportingMethodValidatorRefinerFactory() {
- super(Collections.emptyList()); // does not contribute any facets
+ super(EnumSet.noneOf(FeatureType.class)); // does not contribute any facets
}
@Override