You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@isis.apache.org by da...@apache.org on 2017/10/16 10:44:45 UTC

[isis] 21/38: ISIS-1742: moves FacetFilters to Facet.Filters nested static class

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

danhaywood pushed a commit to branch dev/2.0.0/ISIS-1742-remove-deprecations
in repository https://gitbox.apache.org/repos/asf/isis.git

commit 6e6576242d0673c81d34a82da2db15210f79b54b
Author: Dan Haywood <da...@haywood-associates.co.uk>
AuthorDate: Mon Oct 16 10:26:43 2017 +0100

    ISIS-1742: moves FacetFilters to Facet.Filters nested static class
---
 .../apache/isis/core/metamodel/facetapi/Facet.java | 34 +++++++++++++
 .../isis/core/metamodel/facetapi/FacetFilters.java | 55 ----------------------
 .../metamodel/interactions/InteractionUtils.java   |  7 ++-
 .../core/metamodel/spec/feature/ObjectAction.java  |  3 +-
 .../metamodel/facetapi/FacetPredicatesTest.java    | 28 +++++------
 5 files changed, 52 insertions(+), 75 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/Facet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/Facet.java
index 4c65974..d32aa49 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/Facet.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/Facet.java
@@ -19,6 +19,8 @@
 
 package org.apache.isis.core.metamodel.facetapi;
 
+import com.google.common.base.Predicate;
+
 import org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet;
 
 public interface Facet {
@@ -94,4 +96,36 @@ public interface Facet {
      */
     public boolean alwaysReplace();
 
+    public static final class Filters {
+
+        private Filters() {
+        }
+
+        /**
+         * {@link Predicate <Facet>#accept(Facet) Accepts} everything.
+         */
+        public static final Predicate<Facet> ANY = com.google.common.base.Predicates.alwaysTrue();
+        /**
+         * {@link Predicate <Facet>#accept(Facet) Accepts} nothing.
+         */
+        public static final Predicate<Facet> NONE = new Predicate<Facet>() {
+            @Override
+            public boolean apply(final Facet facet) {
+                return false;
+            }
+        };
+
+        public static Predicate<Facet> isA(final Class<?> superClass) {
+            return new Predicate<Facet>() {
+                @Override
+                public boolean apply(final Facet facet) {
+                    if (facet instanceof DecoratingFacet) {
+                        final DecoratingFacet<?> decoratingFacet = (DecoratingFacet<?>) facet;
+                        return apply(decoratingFacet.getDecoratedFacet());
+                    }
+                    return superClass.isAssignableFrom(facet.getClass());
+                }
+            };
+        }
+    }
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetFilters.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetFilters.java
deleted file mode 100644
index e9c1597..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facetapi/FacetFilters.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- *  Licensed to the Apache Software Foundation (ASF) under one
- *  or more contributor license agreements.  See the NOTICE file
- *  distributed with this work for additional information
- *  regarding copyright ownership.  The ASF licenses this file
- *  to you under the Apache License, Version 2.0 (the
- *  "License"); you may not use this file except in compliance
- *  with the License.  You may obtain a copy of the License at
- *
- *        http://www.apache.org/licenses/LICENSE-2.0
- *
- *  Unless required by applicable law or agreed to in writing,
- *  software distributed under the License is distributed on an
- *  "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- *  KIND, either express or implied.  See the License for the
- *  specific language governing permissions and limitations
- *  under the License.
- */
-
-package org.apache.isis.core.metamodel.facetapi;
-
-import com.google.common.base.Predicate;
-
-public final class FacetFilters {
-
-    private FacetFilters() {
-    }
-
-    /**
-     * {@link Predicate <Facet>#accept(Facet) Accepts} everything.
-     */
-    public static final Predicate<Facet> ANY = com.google.common.base.Predicates.alwaysTrue();
-    /**
-     * {@link Predicate <Facet>#accept(Facet) Accepts} nothing.
-     */
-    public static final Predicate<Facet> NONE = new Predicate<Facet>() {
-        @Override
-        public boolean apply(final Facet facet) {
-            return false;
-        }
-    };
-
-    public static Predicate<Facet> isA(final Class<?> superClass) {
-        return new Predicate<Facet>() {
-            @Override
-            public boolean apply(final Facet facet) {
-                if (facet instanceof DecoratingFacet) {
-                    final DecoratingFacet<?> decoratingFacet = (DecoratingFacet<?>) facet;
-                    return apply(decoratingFacet.getDecoratedFacet());
-                }
-                return superClass.isAssignableFrom(facet.getClass());
-            }
-        };
-    }
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/InteractionUtils.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/InteractionUtils.java
index 0af9114..105fb32 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/InteractionUtils.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/interactions/InteractionUtils.java
@@ -24,7 +24,6 @@ import java.util.List;
 import org.apache.isis.core.metamodel.consent.InteractionResult;
 import org.apache.isis.core.metamodel.consent.InteractionResultSet;
 import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetFilters;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
 public final class InteractionUtils {
@@ -34,7 +33,7 @@ public final class InteractionUtils {
 
     public static InteractionResult isVisibleResult(final FacetHolder facetHolder, final VisibilityContext<?> context) {
         final InteractionResult result = new InteractionResult(context.createInteractionEvent());
-        final List<Facet> facets = facetHolder.getFacets(FacetFilters.isA(HidingInteractionAdvisor.class));
+        final List<Facet> facets = facetHolder.getFacets(Facet.Filters.isA(HidingInteractionAdvisor.class));
         for (final Facet facet : facets) {
             final HidingInteractionAdvisor advisor = (HidingInteractionAdvisor) facet;
             result.advise(advisor.hides(context), advisor);
@@ -44,7 +43,7 @@ public final class InteractionUtils {
 
     public static InteractionResult isUsableResult(final FacetHolder facetHolder, final UsabilityContext<?> context) {
         final InteractionResult result = new InteractionResult(context.createInteractionEvent());
-        final List<Facet> facets = facetHolder.getFacets(FacetFilters.isA(DisablingInteractionAdvisor.class));
+        final List<Facet> facets = facetHolder.getFacets(Facet.Filters.isA(DisablingInteractionAdvisor.class));
         for (final Facet facet : facets) {
             final DisablingInteractionAdvisor advisor = (DisablingInteractionAdvisor) facet;
             final String disables = advisor.disables(context);
@@ -55,7 +54,7 @@ public final class InteractionUtils {
 
     public static InteractionResult isValidResult(final FacetHolder facetHolder, final ValidityContext<?> context) {
         final InteractionResult result = new InteractionResult(context.createInteractionEvent());
-        final List<Facet> facets = facetHolder.getFacets(FacetFilters.isA(ValidatingInteractionAdvisor.class));
+        final List<Facet> facets = facetHolder.getFacets(Facet.Filters.isA(ValidatingInteractionAdvisor.class));
         for (final Facet facet : facets) {
             final ValidatingInteractionAdvisor advisor = (ValidatingInteractionAdvisor) facet;
             result.advise(advisor.invalidates(context), advisor);
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
index b685042..26b904a 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/spec/feature/ObjectAction.java
@@ -39,7 +39,6 @@ import org.apache.isis.core.metamodel.consent.Consent;
 import org.apache.isis.core.metamodel.consent.InteractionInitiatedBy;
 import org.apache.isis.core.metamodel.deployment.DeploymentCategory;
 import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetFilters;
 import org.apache.isis.core.metamodel.facets.actions.action.invocation.ActionInvocationFacet;
 import org.apache.isis.core.metamodel.facets.actions.bulk.BulkFacet;
 import org.apache.isis.core.metamodel.facets.actions.position.ActionPositionFacet;
@@ -453,7 +452,7 @@ public interface ObjectAction extends ObjectMember {
             return new Predicate<ObjectAction>() {
                 @Override
                 public boolean apply(final ObjectAction objectAction) {
-                    final List<Facet> validatingFacets = objectAction.getFacets(FacetFilters
+                    final List<Facet> validatingFacets = objectAction.getFacets(Facet.Filters
                             .isA(ValidatingInteractionAdvisor.class));
                     return validatingFacets.isEmpty();
                 }
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetapi/FacetPredicatesTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetapi/FacetPredicatesTest.java
index 22b8c2f..f8f9b8d 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetapi/FacetPredicatesTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facetapi/FacetPredicatesTest.java
@@ -76,80 +76,80 @@ public class FacetPredicatesTest extends TestCase {
     }
 
     public void testIsAWhenIs() {
-        final Predicate<Facet> predicate = FacetFilters.isA(FooFacet.class);
+        final Predicate<Facet> predicate = Facet.Filters.isA(FooFacet.class);
         assertTrue(predicate.apply(fooFacet));
     }
 
     public void testIsAWhenIsNot() {
-        final Predicate<Facet> predicate = FacetFilters.isA(FooFacet.class);
+        final Predicate<Facet> predicate = Facet.Filters.isA(FooFacet.class);
         assertFalse(predicate.apply(barFacet));
     }
 
     public void testIsAWhenIsSubclass() {
-        final Predicate<Facet> predicate = FacetFilters.isA(FooFacet.class);
+        final Predicate<Facet> predicate = Facet.Filters.isA(FooFacet.class);
         assertTrue(predicate.apply(fooSubFacet));
     }
 
     public void testIsAWhenIsNotBecauseASuperclass() {
-        final Predicate<Facet> predicate = FacetFilters.isA(FooFacet.class);
+        final Predicate<Facet> predicate = Facet.Filters.isA(FooFacet.class);
         assertFalse(predicate.apply(fooSuperFacet));
     }
 
     public void testAndTrueTrue() {
         final Predicate<Facet> and = com.google.common.base.Predicates
-                .and(FacetFilters.ANY, FacetFilters.ANY );
+                .and(Facet.Filters.ANY, Facet.Filters.ANY );
         assertTrue(and.apply(fooFacet));
     }
 
     public void testAndTrueFalse() {
         final Predicate<Facet> and = com.google.common.base.Predicates
-                .and(FacetFilters.ANY, FacetFilters.NONE );
+                .and(Facet.Filters.ANY, Facet.Filters.NONE );
         assertFalse(and.apply(fooFacet));
     }
 
     public void testAndFalseTrue() {
         final Predicate<Facet> and = com.google.common.base.Predicates
-                .and(FacetFilters.NONE, FacetFilters.ANY );
+                .and(Facet.Filters.NONE, Facet.Filters.ANY );
         assertFalse(and.apply(fooFacet));
     }
 
     public void testAndFalseFalse() {
         final Predicate<Facet> and = com.google.common.base.Predicates
-                .and(FacetFilters.NONE, FacetFilters.NONE );
+                .and(Facet.Filters.NONE, Facet.Filters.NONE );
         assertFalse(and.apply(fooFacet));
     }
 
     public void testOrTrueTrue() {
         final Predicate<Facet> or = com.google.common.base.Predicates
-                .or(FacetFilters.ANY, FacetFilters.ANY );
+                .or(Facet.Filters.ANY, Facet.Filters.ANY );
         assertTrue(or.apply(fooFacet));
     }
 
     public void testOrTrueFalse() {
         final Predicate<Facet> or = com.google.common.base.Predicates
-                .or(FacetFilters.ANY, FacetFilters.NONE );
+                .or(Facet.Filters.ANY, Facet.Filters.NONE );
         assertTrue(or.apply(fooFacet));
     }
 
     public void testorFalseTrue() {
         final Predicate<Facet> or = com.google.common.base.Predicates
-                .or(FacetFilters.NONE, FacetFilters.ANY );
+                .or(Facet.Filters.NONE, Facet.Filters.ANY );
         assertTrue(or.apply(fooFacet));
     }
 
     public void testOrFalseFalse() {
         final Predicate<Facet> or = com.google.common.base.Predicates
-                .and(FacetFilters.NONE, FacetFilters.NONE );
+                .and(Facet.Filters.NONE, Facet.Filters.NONE );
         assertFalse(or.apply(fooFacet));
     }
 
     public void testNotTrue() {
-        final Predicate<Facet> not = com.google.common.base.Predicates.not(FacetFilters.ANY);
+        final Predicate<Facet> not = com.google.common.base.Predicates.not(Facet.Filters.ANY);
         assertFalse(not.apply(fooFacet));
     }
 
     public void testNotFalse() {
-        final Predicate<Facet> not = com.google.common.base.Predicates.not(FacetFilters.NONE);
+        final Predicate<Facet> not = com.google.common.base.Predicates.not(Facet.Filters.NONE);
         assertTrue(not.apply(fooFacet));
     }
 

-- 
To stop receiving notification emails like this one, please contact
"commits@isis.apache.org" <co...@isis.apache.org>.