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 2021/04/14 09:07:40 UTC

[isis] branch master updated: ISIS-2493: housekeeping: remove RemovedCallbackFacet

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

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


The following commit(s) were added to refs/heads/master by this push:
     new 98db5e2  ISIS-2493: housekeeping: remove RemovedCallbackFacet
98db5e2 is described below

commit 98db5e22e5d1f256f9bc4fd5ed8b3a19795bed4b
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed Apr 14 11:07:28 2021 +0200

    ISIS-2493: housekeeping: remove RemovedCallbackFacet
---
 .../callbacks/RemoveCallbackFacetFactory.java      | 17 +----
 .../RemoveCallbackViaDeleteMethodFacetFactory.java | 18 +----
 .../object/callbacks/RemovedCallbackFacet.java     | 35 ----------
 .../callbacks/RemovedCallbackFacetAbstract.java    | 39 -----------
 .../callbacks/RemovedCallbackFacetViaMethod.java   | 76 ----------------------
 .../object/callbacks/RemovingCallbackFacet.java    |  2 -
 .../metamodel/methods/MethodLiteralConstants.java  |  3 -
 .../callback/DeleteCallbackFacetFactoryTest.java   | 21 ------
 .../RemoveAndDeleteCallbackFacetFactoryTest.java   | 28 --------
 .../callback/RemoveCallbackFacetFactoryTest.java   | 21 ------
 10 files changed, 4 insertions(+), 256 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
index b288949..a867585 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackFacetFactory.java
@@ -23,7 +23,6 @@ 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.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -35,9 +34,8 @@ import lombok.val;
 
 public class RemoveCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
-            MethodLiteralConstants.REMOVED_PREFIX,
-            MethodLiteralConstants.REMOVING_PREFIX));
+    private static final Can<String> PREFIXES = Can.of(
+            MethodLiteralConstants.REMOVING_PREFIX);
 
     public RemoveCallbackFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
@@ -62,17 +60,6 @@ public class RemoveCallbackFacetFactory extends MethodPrefixBasedFacetFactoryAbs
             }
         }
 
-        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.REMOVED_PREFIX, void.class, NO_ARG);
-        if (method != null) {
-            processClassContext.removeMethod(method);
-            val facet = facetHolder.getFacet(RemovedCallbackFacet.class);
-            if (facet == null) {
-                facets.add(new RemovedCallbackFacetViaMethod(method, facetHolder));
-            } else {
-                facet.addMethod(method);
-            }
-        }
-
         FacetUtil.addFacets(facets);
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
index 8e041e1..2ee90e2 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemoveCallbackViaDeleteMethodFacetFactory.java
@@ -23,7 +23,6 @@ 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.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facetapi.FeatureType;
@@ -35,10 +34,8 @@ import lombok.val;
 
 public class RemoveCallbackViaDeleteMethodFacetFactory extends MethodPrefixBasedFacetFactoryAbstract {
 
-    private static final Can<String> PREFIXES = Can.ofCollection(_Lists.of(
-            MethodLiteralConstants.DELETED_PREFIX,
-            MethodLiteralConstants.DELETING_PREFIX));
-    
+    private static final Can<String> PREFIXES = Can.of(
+            MethodLiteralConstants.DELETING_PREFIX);
 
     public RemoveCallbackViaDeleteMethodFacetFactory() {
         super(FeatureType.OBJECTS_ONLY, OrphanValidation.VALIDATE, PREFIXES);
@@ -61,17 +58,6 @@ public class RemoveCallbackViaDeleteMethodFacetFactory extends MethodPrefixBased
                 facet.addMethod(method);
             }
         }
-
-        method = MethodFinderUtils.findMethod(cls, MethodLiteralConstants.DELETED_PREFIX, void.class, NO_ARG);
-        if (method != null) {
-            processClassContext.removeMethod(method);
-            val facet = facetHolder.getFacet(RemovedCallbackFacet.class);
-            if (facet == null) {
-                facets.add(new RemovedCallbackFacetViaMethod(method, facetHolder));
-            } else {
-                facet.addMethod(method);
-            }
-        }
         
         FacetUtil.addFacets(facets);
     }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacet.java
deleted file mode 100644
index db8b5fc..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacet.java
+++ /dev/null
@@ -1,35 +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.facets.object.callbacks;
-
-/**
- * Represents the mechanism to inform the object that it has just been deleted.
- *
- * <p>
- * In the standard Apache Isis Programming Model, this is represented by a
- * <tt>deleted</tt> method.
- *
- * @see RemovingCallbackFacet
- * @deprecated - cannot touch a pojo once deleted
- */
-@Deprecated
-public interface RemovedCallbackFacet extends CallbackFacet {
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacetAbstract.java
deleted file mode 100644
index 2d7efef..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacetAbstract.java
+++ /dev/null
@@ -1,39 +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.facets.object.callbacks;
-
-import org.apache.isis.core.metamodel.facetapi.Facet;
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-
-/**
- * @deprecated - cannot touch a pojo once deleted
- */
-@Deprecated
-public abstract class RemovedCallbackFacetAbstract extends CallbackFacetAbstract implements RemovedCallbackFacet {
-
-    public static Class<? extends Facet> type() {
-        return RemovedCallbackFacet.class;
-    }
-
-    public RemovedCallbackFacetAbstract(final FacetHolder holder) {
-        super(type(), holder);
-    }
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacetViaMethod.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacetViaMethod.java
deleted file mode 100644
index 42fd572..0000000
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovedCallbackFacetViaMethod.java
+++ /dev/null
@@ -1,76 +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.facets.object.callbacks;
-
-import java.lang.reflect.Method;
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-import java.util.Map;
-
-import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.ImperativeFacet;
-import org.apache.isis.core.metamodel.spec.ManagedObject;
-import org.apache.isis.core.metamodel.spec.ManagedObjects;
-
-/**
- * @deprecated - cannot touch a pojo once deleted
- */
-@Deprecated
-public class RemovedCallbackFacetViaMethod extends RemovedCallbackFacetAbstract implements ImperativeFacet {
-
-    private final List<Method> methods = new ArrayList<Method>();
-
-    public RemovedCallbackFacetViaMethod(final Method method, final FacetHolder holder) {
-        super(holder);
-        addMethod(method);
-    }
-
-    @Override
-    public void addMethod(final Method method) {
-        methods.add(method);
-    }
-
-    @Override
-    public List<Method> getMethods() {
-        return Collections.unmodifiableList(methods);
-    }
-
-    @Override
-    public Intent getIntent(final Method method) {
-        return Intent.LIFECYCLE;
-    }
-
-    @Override
-    public void invoke(final ManagedObject adapter) {
-        ManagedObjects.InvokeUtil.invokeAll(methods, adapter);
-    }
-
-    @Override
-    protected String toStringValues() {
-        return "methods=" + methods;
-    }
-
-    @Override public void appendAttributesTo(final Map<String, Object> attributeMap) {
-        super.appendAttributesTo(attributeMap);
-        ImperativeFacet.Util.appendAttributesTo(this, attributeMap);
-    }
-
-}
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingCallbackFacet.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingCallbackFacet.java
index c65599a..132c4fa 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingCallbackFacet.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/object/callbacks/RemovingCallbackFacet.java
@@ -26,9 +26,7 @@ package org.apache.isis.core.metamodel.facets.object.callbacks;
  * In the standard Apache Isis Programming Model, this is represented by a
  * <tt>deleting</tt> method.
  *
- * @see RemovedCallbackFacet
  */
-
 public interface RemovingCallbackFacet extends CallbackFacet {
 
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java
index f9df5f4..f7b6df4 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/methods/MethodLiteralConstants.java
@@ -45,14 +45,11 @@ public final class MethodLiteralConstants {
     
     public static final String CREATED_PREFIX = "created";
     public static final String LOADED_PREFIX = "loaded";
-    //public static final String LOADING_PREFIX = "loading";
     public static final String SAVED_PREFIX = "saved";
     public static final String SAVING_PREFIX = "saving";
     public static final String PERSISTED_PREFIX = "persisted";
     public static final String PERSISTING_PREFIX = "persisting";
-    public static final String DELETED_PREFIX = "deleted";
     public static final String DELETING_PREFIX = "deleting";
-    public static final String REMOVED_PREFIX = "removed";
     public static final String REMOVING_PREFIX = "removing";
     public static final String UPDATED_PREFIX = "updated";
     public static final String UPDATING_PREFIX = "updating";
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/DeleteCallbackFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/DeleteCallbackFacetFactoryTest.java
index db4bae5..da22598 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/DeleteCallbackFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/DeleteCallbackFacetFactoryTest.java
@@ -25,8 +25,6 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facets.AbstractFacetFactoryTest;
 import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemoveCallbackViaDeleteMethodFacetFactory;
-import org.apache.isis.core.metamodel.facets.object.callbacks.RemovedCallbackFacet;
-import org.apache.isis.core.metamodel.facets.object.callbacks.RemovedCallbackFacetViaMethod;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemovingCallbackFacet;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemovingCallbackFacetViaMethod;
 
@@ -66,23 +64,4 @@ public class DeleteCallbackFacetFactoryTest extends AbstractFacetFactoryTest {
         assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(method));
     }
 
-    public void testDeletedLifecycleMethodPickedUpOn() {
-        class Customer {
-            @SuppressWarnings("unused")
-            public void deleted() {
-            };
-        }
-        final Method method = findMethod(Customer.class, "deleted");
-
-        facetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
-
-        final Facet facet = facetedMethod.getFacet(RemovedCallbackFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof RemovedCallbackFacetViaMethod);
-        final RemovedCallbackFacetViaMethod deletedCallbackFacetViaMethod = (RemovedCallbackFacetViaMethod) facet;
-        assertEquals(method, deletedCallbackFacetViaMethod.getMethods().get(0));
-
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(method));
-    }
-
 }
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveAndDeleteCallbackFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveAndDeleteCallbackFacetFactoryTest.java
index 4cd578f..6ccb56d 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveAndDeleteCallbackFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveAndDeleteCallbackFacetFactoryTest.java
@@ -27,8 +27,6 @@ import org.apache.isis.core.metamodel.facets.AbstractFacetFactoryTest;
 import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemoveCallbackFacetFactory;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemoveCallbackViaDeleteMethodFacetFactory;
-import org.apache.isis.core.metamodel.facets.object.callbacks.RemovedCallbackFacet;
-import org.apache.isis.core.metamodel.facets.object.callbacks.RemovedCallbackFacetViaMethod;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemovingCallbackFacet;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemovingCallbackFacetViaMethod;
 
@@ -79,31 +77,5 @@ public class RemoveAndDeleteCallbackFacetFactoryTest extends AbstractFacetFactor
         assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(deleteMethod));
     }
 
-    public void testSavedAndPersistedLifecycleMethodPickedUpOn() {
-        class Customer {
-            @SuppressWarnings("unused")
-            public void deleted() {
-            };
-
-            @SuppressWarnings("unused")
-            public void removed() {
-            };
-        }
-        final Method removeMethod = findMethod(Customer.class, "removed");
-        final Method deleteMethod = findMethod(Customer.class, "deleted");
-
-        removeFacetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
-        deleteFacetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
-
-        final Facet facet = facetedMethod.getFacet(RemovedCallbackFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof RemovedCallbackFacetViaMethod);
-        final RemovedCallbackFacetViaMethod removedCallbackFacetViaMethod = (RemovedCallbackFacetViaMethod) facet;
-        final List<Method> methods = removedCallbackFacetViaMethod.getMethods();
-        assertTrue(methods.contains(removeMethod));
-        assertTrue(methods.contains(deleteMethod));
-
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(removeMethod));
-    }
 
 }
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveCallbackFacetFactoryTest.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveCallbackFacetFactoryTest.java
index 4d38a74..f52fbc0 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveCallbackFacetFactoryTest.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/facets/object/callback/RemoveCallbackFacetFactoryTest.java
@@ -25,8 +25,6 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facets.AbstractFacetFactoryTest;
 import org.apache.isis.core.metamodel.facets.FacetFactory.ProcessClassContext;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemoveCallbackFacetFactory;
-import org.apache.isis.core.metamodel.facets.object.callbacks.RemovedCallbackFacet;
-import org.apache.isis.core.metamodel.facets.object.callbacks.RemovedCallbackFacetViaMethod;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemovingCallbackFacet;
 import org.apache.isis.core.metamodel.facets.object.callbacks.RemovingCallbackFacetViaMethod;
 
@@ -66,23 +64,4 @@ public class RemoveCallbackFacetFactoryTest extends AbstractFacetFactoryTest {
         assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(method));
     }
 
-    public void testRemovedLifecycleMethodPickedUpOn() {
-        class Customer {
-            @SuppressWarnings("unused")
-            public void removed() {
-            };
-        }
-        final Method method = findMethod(Customer.class, "removed");
-
-        facetFactory.process(new ProcessClassContext(Customer.class, methodRemover, facetedMethod));
-
-        final Facet facet = facetedMethod.getFacet(RemovedCallbackFacet.class);
-        assertNotNull(facet);
-        assertTrue(facet instanceof RemovedCallbackFacetViaMethod);
-        final RemovedCallbackFacetViaMethod removedCallbackFacetViaMethod = (RemovedCallbackFacetViaMethod) facet;
-        assertEquals(method, removedCallbackFacetViaMethod.getMethods().get(0));
-
-        assertTrue(methodRemover.getRemovedMethodMethodCalls().contains(method));
-    }
-
 }