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 3a33188  ISIS-2682: RO: remove deprecated mutators from 
CollectionSemantics
3a33188 is described below

commit 3a331888439561ef75f1b1376cffe33a7e6e2493
Author: [email protected] <[email protected]@luna>
AuthorDate: Mon May 17 07:33:33 2021 +0200

    ISIS-2682: RO: remove deprecated mutators from CollectionSemantics
---
 .../AbstractObjectMemberReprRenderer.java          |  4 +-
 .../domainobjects/CollectionSemantics.java         | 22 +++--------
 .../ObjectCollectionReprRenderer.java              | 46 +++++++++-------------
 .../domainobjects/ObjectPropertyReprRenderer.java  | 10 ++---
 4 files changed, 29 insertions(+), 53 deletions(-)

diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/AbstractObjectMemberReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/AbstractObjectMemberReprRenderer.java
index 0ced058..46401ed 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/AbstractObjectMemberReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/AbstractObjectMemberReprRenderer.java
@@ -37,6 +37,8 @@ import 
org.apache.isis.viewer.restfulobjects.rendering.IResourceContext;
 import org.apache.isis.viewer.restfulobjects.rendering.LinkFollowSpecs;
 import org.apache.isis.viewer.restfulobjects.rendering.ReprRendererAbstract;
 
+import lombok.NonNull;
+
 public abstract class AbstractObjectMemberReprRenderer<
     R extends ReprRendererAbstract<R, ManagedMember>,
     T extends ObjectMember>
@@ -222,7 +224,7 @@ extends ReprRendererAbstract<R, ManagedMember> {
      * For subclasses to call back to when {@link #addMutatorLinksIfEnabled() 
adding
      * mutators}.
      */
-    protected void addLinkFor(final MutatorSpec mutatorSpec) {
+    protected void addLinkFor(final @NonNull MutatorSpec mutatorSpec) {
         if (!hasMemberFacet(mutatorSpec.mutatorFacetType)) {
             return;
         }
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/CollectionSemantics.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/CollectionSemantics.java
index 84cde98..236fcd1 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/CollectionSemantics.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/CollectionSemantics.java
@@ -22,25 +22,13 @@ import 
org.apache.isis.core.metamodel.spec.feature.OneToManyAssociation;
 
 public enum CollectionSemantics {
 
-    SET("addToSet"),
-    LIST("addToList");
-
-    private final String addToKey;
-
-    private CollectionSemantics(final String addToKey) {
-        this.addToKey = addToKey;
-    }
-
-    public String getAddToKey() {
-        return addToKey;
-    }
-
-    public String getRemoveFromKey() {
-        return "removeFrom";
-    }
+    SET,
+    LIST;
 
     public static CollectionSemantics determine(final OneToManyAssociation 
collection) {
-        return collection.getCollectionSemantics().isAnySet() ? 
CollectionSemantics.SET : CollectionSemantics.LIST;
+        return collection.getCollectionSemantics().isAnySet()
+                ? CollectionSemantics.SET
+                : CollectionSemantics.LIST;
     }
 
 }
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java
index b4e43a1..fab21a5 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectCollectionReprRenderer.java
@@ -19,7 +19,6 @@
 package org.apache.isis.viewer.restfulobjects.rendering.domainobjects;
 
 import java.util.List;
-import java.util.Map;
 import java.util.Objects;
 import java.util.stream.Stream;
 
@@ -99,7 +98,9 @@ public class ObjectCollectionReprRenderer extends 
AbstractObjectMemberReprRender
         }
 
         final LinkFollowSpecs followHref = linkFollower.follow("href");
-        boolean eagerlyRender = resourceContext.honorUiHints() && 
renderEagerly(valueAdapter) || !followHref.isTerminated();
+        boolean eagerlyRender = resourceContext.honorUiHints()
+                && renderEagerly(valueAdapter)
+                || !followHref.isTerminated();
 
         final Stream<ManagedObject> elementAdapters = 
CollectionFacet.streamAdapters(valueAdapter);
 
@@ -109,14 +110,14 @@ public class ObjectCollectionReprRenderer extends 
AbstractObjectMemberReprRender
             final LinkBuilder valueLinkBuilder = DomainObjectReprRenderer
                     .newLinkToBuilder(resourceContext, Rel.VALUE, 
elementAdapter);
             if(eagerlyRender) {
-                final DomainObjectReprRenderer renderer = new 
DomainObjectReprRenderer(getResourceContext(), followHref, 
JsonRepresentation.newMap()
-                        );
-                renderer.with(elementAdapter);
+                val domainObjectReprRenderer =
+                        new DomainObjectReprRenderer(getResourceContext(), 
followHref, JsonRepresentation.newMap())
+                        .with(elementAdapter);
                 if(mode.isEventSerialization()) {
-                    renderer.asEventSerialization();
+                    domainObjectReprRenderer.asEventSerialization();
                 }
 
-                valueLinkBuilder.withValue(renderer.render());
+                valueLinkBuilder.withValue(domainObjectReprRenderer.render());
             }
 
             list.add(valueLinkBuilder.build());
@@ -139,11 +140,12 @@ public class ObjectCollectionReprRenderer extends 
AbstractObjectMemberReprRender
     @Override
     protected void followDetailsLink(final JsonRepresentation detailsLink) {
         val where = resourceContext.getWhere();
-        final JsonRepresentation representation = JsonRepresentation.newMap();
-        final ObjectCollectionReprRenderer renderer = new 
ObjectCollectionReprRenderer(getResourceContext(), getLinkFollowSpecs(), null,
-                representation);
-        renderer.with(ManagedCollection.of(objectAdapter, objectMember, 
where)).asFollowed();
-        detailsLink.mapPut("value", renderer.render());
+        val jsonRepresentation = JsonRepresentation.newMap();
+        val objectCollectionReprRenderer =
+                new ObjectCollectionReprRenderer(getResourceContext(), 
getLinkFollowSpecs(), null, jsonRepresentation)
+                .with(ManagedCollection.of(objectAdapter, objectMember, where))
+                .asFollowed();
+        detailsLink.mapPut("value", objectCollectionReprRenderer.render());
     }
 
     // ///////////////////////////////////////////////////
@@ -152,21 +154,7 @@ public class ObjectCollectionReprRenderer extends 
AbstractObjectMemberReprRender
 
     @Override
     protected void addMutatorLinksIfEnabled() {
-        if (usability().isVetoed()) {
-            return;
-        }
-
-        final CollectionSemantics semantics = 
CollectionSemantics.determine(objectMember);
-        addMutatorLink(semantics.getAddToKey());
-        addMutatorLink(semantics.getRemoveFromKey());
-
-        return;
-    }
-
-    private void addMutatorLink(final String key) {
-        final Map<String, MutatorSpec> mutators = 
objectMemberType.getMutators();
-        final MutatorSpec mutatorSpec = mutators.get(key);
-        addLinkFor(mutatorSpec);
+        // no-op
     }
 
     // ///////////////////////////////////////////////////
@@ -178,7 +166,9 @@ public class ObjectCollectionReprRenderer extends 
AbstractObjectMemberReprRender
         if(resourceContext.suppressDescribedByLinks()) {
             return;
         }
-        final JsonRepresentation link = 
CollectionDescriptionReprRenderer.newLinkToBuilder(resourceContext, 
Rel.DESCRIBEDBY, objectAdapter.getSpecification(), objectMember).build();
+        final JsonRepresentation link =
+                CollectionDescriptionReprRenderer
+                .newLinkToBuilder(resourceContext, Rel.DESCRIBEDBY, 
objectAdapter.getSpecification(), objectMember).build();
         getLinks().arrayAdd(link);
     }
 
diff --git 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java
 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java
index 0380971..b8aefbb 100644
--- 
a/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java
+++ 
b/viewers/restfulobjects/rendering/src/main/java/org/apache/isis/viewer/restfulobjects/rendering/domainobjects/ObjectPropertyReprRenderer.java
@@ -19,7 +19,6 @@
 package org.apache.isis.viewer.restfulobjects.rendering.domainobjects;
 
 import java.util.List;
-import java.util.Map;
 import java.util.Objects;
 
 import com.fasterxml.jackson.databind.node.NullNode;
@@ -192,12 +191,9 @@ extends 
AbstractObjectMemberReprRenderer<ObjectPropertyReprRenderer, OneToOneAss
         if (usability().isVetoed()) {
             return;
         }
-        final Map<String, MutatorSpec> mutators = 
objectMemberType.getMutators();
-        for (final String mutator : mutators.keySet()) {
-            final MutatorSpec mutatorSpec = mutators.get(mutator);
-            addLinkFor(mutatorSpec);
-        }
-        return;
+        objectMemberType.getMutators()
+            .values()
+            .forEach(this::addLinkFor);
     }
 
     // ///////////////////////////////////////////////////

Reply via email to