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 2022/05/25 04:01:52 UTC

[isis] branch master updated (5862c92bc9 -> 19163f5f6a)

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

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


 discard 5862c92bc9 ISIS-3063: don't use anonymous facet classes in OneToManyAssociationMixedIn
     new 19163f5f6a ISIS-3063: don't use anonymous facet classes in OneToManyAssociationMixedIn

This update added new revisions after undoing existing revisions.
That is to say, some revisions that were in the old version of the
branch are not in the new version.  This situation occurs
when a user --force pushes a change and generates a repository
containing something like this:

 * -- * -- B -- O -- O -- O   (5862c92bc9)
            \
             N -- N -- N   refs/heads/master (19163f5f6a)

You should already have received notification emails for all of the O
revisions, and so the following emails describe only the N revisions
from the common base, B.

Any revisions marked "omit" are not gone; other references still
refer to them.  Any revisions marked "discard" are gone forever.

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 .../facets/actcoll/typeof/TypeOfFacetAbstract.java  |   2 +-
 ...mArray.java => TypeOfFacetFromActionReturn.java} |   4 ++--
 .../memserexcl/SnapshotExcludeFacetAbstract.java    |   4 +++-
 .../update/PropertySetterFacetFactory.java          |   4 ++--
 .../SnapshotExcludeFacetFromImmutableMember.java    |   5 +++--
 .../specimpl/OneToManyAssociationMixedIn.java       |   8 ++++----
 .../domainmodel/MetaModelRegressionTest.java        |   8 +++++---
 .../src/test/resources/metamodel.xml.zip            | Bin 90534 -> 88056 bytes
 8 files changed, 20 insertions(+), 15 deletions(-)
 copy core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/{TypeOfFacetFromArray.java => TypeOfFacetFromActionReturn.java} (88%)


[isis] 01/01: ISIS-3063: don't use anonymous facet classes in OneToManyAssociationMixedIn

Posted by ah...@apache.org.
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 19163f5f6a71ded3987f6213fada964b4ac6a0e8
Author: Andi Huber <ah...@apache.org>
AuthorDate: Wed May 25 06:01:15 2022 +0200

    ISIS-3063: don't use anonymous facet classes in
    OneToManyAssociationMixedIn
    
    - use concrete facet classes instead
    
    - also turns on the MetaModelRegressionTest
---
 .../facets/actcoll/typeof/TypeOfFacetAbstract.java  |   2 +-
 .../typeof/TypeOfFacetFromActionReturn.java}        |  10 +++++-----
 .../memserexcl/SnapshotExcludeFacetAbstract.java    |   4 +++-
 .../update/PropertySetterFacetFactory.java          |   4 ++--
 ...=> SnapshotExcludeFacetFromImmutableMember.java} |   5 +++--
 .../specimpl/OneToManyAssociationMixedIn.java       |   8 ++++----
 .../domainmodel/MetaModelRegressionTest.java        |   8 +++++---
 .../src/test/resources/metamodel.xml.zip            | Bin 90534 -> 88056 bytes
 8 files changed, 23 insertions(+), 18 deletions(-)

diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetAbstract.java
index 9e4bab5297..92dfe36199 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetAbstract.java
@@ -30,7 +30,7 @@ implements TypeOfFacet {
         return TypeOfFacet.class;
     }
 
-    public TypeOfFacetAbstract(final Class<?> type, final FacetHolder holder) {
+    protected TypeOfFacetAbstract(final Class<?> type, final FacetHolder holder) {
         super(type(), holder, type);
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetInferred.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetFromActionReturn.java
similarity index 73%
copy from core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetInferred.java
copy to core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetFromActionReturn.java
index c452a6691d..7b414cbb51 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetInferred.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/actcoll/typeof/TypeOfFacetFromActionReturn.java
@@ -16,15 +16,15 @@
  *  specific language governing permissions and limitations
  *  under the License.
  */
-package org.apache.isis.core.metamodel.facets.properties.update;
+package org.apache.isis.core.metamodel.facets.actcoll.typeof;
 
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
-import org.apache.isis.core.metamodel.facets.propcoll.memserexcl.SnapshotExcludeFacetAbstract;
 
-public class SnapshotExcludeFacetInferred extends SnapshotExcludeFacetAbstract {
+public class TypeOfFacetFromActionReturn
+extends TypeOfFacetAbstract {
 
-    public SnapshotExcludeFacetInferred(final FacetHolder holder) {
-        super(holder);
+    public TypeOfFacetFromActionReturn(final Class<?> type, final FacetHolder holder) {
+        super(type, holder);
     }
 
 }
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/memserexcl/SnapshotExcludeFacetAbstract.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/memserexcl/SnapshotExcludeFacetAbstract.java
index 79080fdb98..7674078a75 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/memserexcl/SnapshotExcludeFacetAbstract.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/propcoll/memserexcl/SnapshotExcludeFacetAbstract.java
@@ -22,7 +22,9 @@ import org.apache.isis.core.metamodel.facetapi.Facet;
 import org.apache.isis.core.metamodel.facetapi.FacetAbstract;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 
-public abstract class SnapshotExcludeFacetAbstract extends FacetAbstract implements SnapshotExcludeFacet {
+public abstract class SnapshotExcludeFacetAbstract
+extends FacetAbstract
+implements SnapshotExcludeFacet {
 
     private static final Class<? extends Facet> type() {
         return SnapshotExcludeFacet.class;
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
index 40b304b5ce..01971f48c1 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/PropertySetterFacetFactory.java
@@ -40,7 +40,7 @@ import lombok.val;
 /**
  * Sets up the {@link PropertySetterFacetViaSetterMethod} to invoke the
  * property's setter if available, but if none then marks the property as
- * {@link SnapshotExcludeFacetInferred not-persistable}.
+ * {@link SnapshotExcludeFacetFromImmutableMember not-persistable}.
  */
 public class PropertySetterFacetFactory
 extends MethodPrefixBasedFacetFactoryAbstract {
@@ -79,7 +79,7 @@ extends MethodPrefixBasedFacetFactoryAbstract {
             });
 
         } else {
-            addFacet(new SnapshotExcludeFacetInferred(property));
+            addFacet(new SnapshotExcludeFacetFromImmutableMember(property));
 
             // previously we also added the DisabledFacetAlwaysEverywhere facet here.
             // however, the PropertyModifyFacetFactory (which comes next) might install a PropertySetterFacet instead.
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetInferred.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetFromImmutableMember.java
similarity index 86%
rename from core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetInferred.java
rename to core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetFromImmutableMember.java
index c452a6691d..9242a8e6f7 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetInferred.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/facets/properties/update/SnapshotExcludeFacetFromImmutableMember.java
@@ -21,9 +21,10 @@ package org.apache.isis.core.metamodel.facets.properties.update;
 import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facets.propcoll.memserexcl.SnapshotExcludeFacetAbstract;
 
-public class SnapshotExcludeFacetInferred extends SnapshotExcludeFacetAbstract {
+public class SnapshotExcludeFacetFromImmutableMember
+extends SnapshotExcludeFacetAbstract {
 
-    public SnapshotExcludeFacetInferred(final FacetHolder holder) {
+    public SnapshotExcludeFacetFromImmutableMember(final FacetHolder holder) {
         super(holder);
     }
 
diff --git a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
index 2b33d494ec..fae5884b82 100644
--- a/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
+++ b/core/metamodel/src/main/java/org/apache/isis/core/metamodel/specloader/specimpl/OneToManyAssociationMixedIn.java
@@ -28,12 +28,12 @@ import org.apache.isis.core.metamodel.facetapi.FacetHolder;
 import org.apache.isis.core.metamodel.facetapi.FacetHolderAbstract;
 import org.apache.isis.core.metamodel.facetapi.FacetUtil;
 import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacet;
-import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetAbstract;
+import org.apache.isis.core.metamodel.facets.actcoll.typeof.TypeOfFacetFromActionReturn;
 import org.apache.isis.core.metamodel.facets.all.named.MemberNamedFacet;
 import org.apache.isis.core.metamodel.facets.all.named.MemberNamedFacetForStaticMemberName;
 import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacet;
 import org.apache.isis.core.metamodel.facets.members.disabled.DisabledFacetForContributee;
-import org.apache.isis.core.metamodel.facets.propcoll.memserexcl.SnapshotExcludeFacetAbstract;
+import org.apache.isis.core.metamodel.facets.properties.update.SnapshotExcludeFacetFromImmutableMember;
 import org.apache.isis.core.metamodel.interactions.InteractionHead;
 import org.apache.isis.core.metamodel.services.publishing.ExecutionPublisher;
 import org.apache.isis.core.metamodel.spec.ManagedObject;
@@ -108,9 +108,9 @@ implements MixedInMember {
         //
         // ensure the mixedIn collection cannot be modified, and derive its TypeOfFaccet
         //
-        FacetUtil.addFacet(new SnapshotExcludeFacetAbstract(this) {});
+        FacetUtil.addFacet(new SnapshotExcludeFacetFromImmutableMember(this));
         FacetUtil.addFacet(disabledFacet());
-        FacetUtil.addFacet(new TypeOfFacetAbstract(getElementType().getCorrespondingClass(), this) {});
+        FacetUtil.addFacet(new TypeOfFacetFromActionReturn(getElementType().getCorrespondingClass(), this));
 
         // adjust name if necessary
         val isExplicitlyNamed = lookupNonFallbackFacet(MemberNamedFacet.class)
diff --git a/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/MetaModelRegressionTest.java b/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/MetaModelRegressionTest.java
index 1a84ccb216..e5e0912508 100644
--- a/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/MetaModelRegressionTest.java
+++ b/regressiontests/stable-domainmodel/src/test/java/org/apache/isis/testdomain/domainmodel/MetaModelRegressionTest.java
@@ -76,9 +76,12 @@ class MetaModelRegressionTest {
 
         val url = _Resources.getResourceUrl(getClass(), "/metamodel.xml.zip");
         if(url==null) {
-            //createReferenceMetaModelFile(new File("/???/metamodel.xml.zip"));
+            //createReferenceMetaModelFile(new File("/<path to resources>/metamodel.xml.zip"));
             _Exceptions.throwNotImplemented();
         }
+
+        //for maintenance
+        //createReferenceMetaModelFile(new File("d:/tmp/_scratch/metamodel.xml.zip"));
     }
 
     @Test
@@ -88,7 +91,7 @@ class MetaModelRegressionTest {
                 factoryService.mixin(MetaModelServiceMenu.downloadMetaModelDiff.class, metaModelServiceMenu);
         val metamodelExport =
                 downloadMetaModelDiff.act("metamodel.xml", namespaces(), true,
-                        currentMetaModelAsZippedBlob())
+                        referenceMetaModelAsZippedBlob())
                 .unZip(CommonMimeType.XML)
                 .toClob(StandardCharsets.UTF_8);
 
@@ -101,7 +104,6 @@ class MetaModelRegressionTest {
             System.err.printf("%s%n", diff);
             fail("Reference meta-model and current do differ.");
         }
-
     }
 
     // -- HELPER
diff --git a/regressiontests/stable-domainmodel/src/test/resources/metamodel.xml.zip b/regressiontests/stable-domainmodel/src/test/resources/metamodel.xml.zip
index 89b24cb824..085038772c 100644
Binary files a/regressiontests/stable-domainmodel/src/test/resources/metamodel.xml.zip and b/regressiontests/stable-domainmodel/src/test/resources/metamodel.xml.zip differ