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/06/30 09:22:54 UTC

[isis] branch master updated (aea5821de7 -> 6dd943862d)

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


    from aea5821de7 ISIS-3084: commons: make _List concat utils null-safe
     new 34a6180e7b ISIS-3084: just comments
     new 6dd943862d ISIS-3084: Remove direct Collections modification endpoints from RO

The 2 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:
 .../WrapperFactory_020-examples-and-usage.adoc     |   5 +-
 .../permission/dom/ApplicationPermissionMode.adoc  |   4 +-
 .../applib/domainobjects/DomainObjectResource.adoc |   3 -
 .../progmodel/ProgrammingModelConstants.java       |  12 +-
 .../dom/JavaObjectWithBasicProgramConventions.java |   4 +-
 .../permission/dom/ApplicationPermissionMode.java  |  15 +--
 .../applib/domainobjects/DomainObjectResource.java |  53 ++++-----
 .../resources/DomainObjectResourceServerside.java  | 123 +++++++++++----------
 8 files changed, 109 insertions(+), 110 deletions(-)


[isis] 02/02: ISIS-3084: Remove direct Collections modification endpoints from RO

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 6dd943862d1edaee8637ae769683b670bf763d2e
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Jun 30 11:22:48 2022 +0200

    ISIS-3084: Remove direct Collections modification endpoints from RO
---
 .../WrapperFactory_020-examples-and-usage.adoc     |   5 +-
 .../permission/dom/ApplicationPermissionMode.adoc  |   4 +-
 .../applib/domainobjects/DomainObjectResource.adoc |   3 -
 .../dom/JavaObjectWithBasicProgramConventions.java |   4 +-
 .../permission/dom/ApplicationPermissionMode.java  |  15 +--
 .../applib/domainobjects/DomainObjectResource.java |  53 ++++-----
 .../resources/DomainObjectResourceServerside.java  | 123 +++++++++++----------
 7 files changed, 100 insertions(+), 107 deletions(-)

diff --git a/antora/components/refguide-index/modules/applib/pages/index/services/wrapper/hooks/WrapperFactory_020-examples-and-usage.adoc b/antora/components/refguide-index/modules/applib/pages/index/services/wrapper/hooks/WrapperFactory_020-examples-and-usage.adoc
index 814c69f225..393c0ba16e 100644
--- a/antora/components/refguide-index/modules/applib/pages/index/services/wrapper/hooks/WrapperFactory_020-examples-and-usage.adoc
+++ b/antora/components/refguide-index/modules/applib/pages/index/services/wrapper/hooks/WrapperFactory_020-examples-and-usage.adoc
@@ -40,9 +40,12 @@ For domain objects (not mixins), the wrapper can be interacted with as follows:
 
 * a `get...()` method for properties or collections
 * a `set...()` method for properties
-* an `addTo...()` or `removeFrom...()` method for collections
 * any action
 
+NOTE: with ISIS-3084, `addTo...()` and `removeFrom...()` methods for collections were removed;
+ the notion (direct) collection modification was deprecated as any specific business logic 
+ should by handled via actions instead;
+
 Calling any of the above methods may result in a (subclass of) `InteractionException` if the object disallows it.
 For example, if a property is annotated with xref:refguide:applib:index/annotation/ActionLayout.adoc#hidden[@ActionLayout#hidden] then a `HiddenException` will be thrown.
 Similarly if an action has a xref:refguide:applib-methods:prefixes.adoc[validateXxx()] method and the supplied arguments are invalid then an `InvalidException` will be thrown.
diff --git a/antora/components/refguide-index/modules/extensions/pages/index/secman/applib/permission/dom/ApplicationPermissionMode.adoc b/antora/components/refguide-index/modules/extensions/pages/index/secman/applib/permission/dom/ApplicationPermissionMode.adoc
index 29a79b3479..07954b6c27 100644
--- a/antora/components/refguide-index/modules/extensions/pages/index/secman/applib/permission/dom/ApplicationPermissionMode.adoc
+++ b/antora/components/refguide-index/modules/extensions/pages/index/secman/applib/permission/dom/ApplicationPermissionMode.adoc
@@ -40,8 +40,8 @@ The xref:refguide:extensions:index/secman/applib/permission/dom/ApplicationPermi
 
 Whether can user/role can change (or is prevented from changing) the state of the system using the application feature (class member).
 
-In other words, whether they can execute (if an action, modify/clear (if a property), addTo/removeFrom (if a collection).
+In other words, whether they can execute (if an action, modify/clear (if a property), [addTo/removeFrom (if a collection) ... see note below].
 
 The xref:refguide:extensions:index/secman/applib/permission/dom/ApplicationPermissionRule.adoc[ApplicationPermissionRule] of the xref:refguide:extensions:index/secman/applib/permission/dom/ApplicationPermission.adoc[ApplicationPermission] indicates whether access is being granted or denied.
 
-Note that the Wicket viewer does not at the time of writing (Isis 1.6.0) support the notion of mutable collections. The RO viewer does, however.
+Note: as of ISIS-3084 the notion of mutable collections was removed
diff --git a/antora/components/refguide-index/modules/viewer/pages/index/restfulobjects/applib/domainobjects/DomainObjectResource.adoc b/antora/components/refguide-index/modules/viewer/pages/index/restfulobjects/applib/domainobjects/DomainObjectResource.adoc
index 080a72d4b0..3167933115 100644
--- a/antora/components/refguide-index/modules/viewer/pages/index/restfulobjects/applib/domainobjects/DomainObjectResource.adoc
+++ b/antora/components/refguide-index/modules/viewer/pages/index/restfulobjects/applib/domainobjects/DomainObjectResource.adoc
@@ -19,9 +19,6 @@ interface DomainObjectResource {
   Response clearProperty(String domainType, String instanceId, String propertyId)
   Response postPropertyNotAllowed(String domainType, String instanceId, String propertyId)
   Response accessCollection(String domainType, String instanceId, String collectionId)
-  Response addToSet(String domainType, String instanceId, String collectionId, InputStream arguments)
-  Response addToList(String domainType, String instanceId, String collectionId, InputStream arguments)
-  Response removeFromCollection(String domainType, String instanceId, String collectionId)
   Response actionPrompt(String domainType, String instanceId, String actionId)
   Response deleteActionPromptNotAllowed(String domainType, String instanceId, String actionId)
   Response putActionPromptNotAllowed(String domainType, String instanceId, String actionId)
diff --git a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/objects/dom/JavaObjectWithBasicProgramConventions.java b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/objects/dom/JavaObjectWithBasicProgramConventions.java
index 53372f1e75..d8d80fd6f9 100644
--- a/core/metamodel/src/test/java/org/apache/isis/core/metamodel/objects/dom/JavaObjectWithBasicProgramConventions.java
+++ b/core/metamodel/src/test/java/org/apache/isis/core/metamodel/objects/dom/JavaObjectWithBasicProgramConventions.java
@@ -207,7 +207,7 @@ public class JavaObjectWithBasicProgramConventions implements Interface1, Interf
         return "one, field two ,three, five";
     }
 
-    // tests the hide method with same set of paramaters
+    // tests the hide method with same set of parameters
     public static boolean alwaysHideHiddenAction(final String param) {
         return true;
     }
@@ -215,7 +215,7 @@ public class JavaObjectWithBasicProgramConventions implements Interface1, Interf
     public void hiddenAction(final String param) {
     }
 
-    // tests the hide method with no paramaters
+    // tests the hide method with no parameters
     public static boolean alwaysHideHiddenAction2() {
         return true;
     }
diff --git a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java
index 80efdced81..00fb59548d 100644
--- a/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java
+++ b/extensions/security/secman/applib/src/main/java/org/apache/isis/extensions/secman/applib/permission/dom/ApplicationPermissionMode.java
@@ -30,32 +30,23 @@ import org.apache.isis.commons.internal.base._Strings;
 public enum ApplicationPermissionMode {
     /**
      * Whether the user/role can view (or is prevented from viewing) the application feature (class member).
-     *
      * <p>
      * The {@link ApplicationPermissionRule rule} of the
      * {@link ApplicationPermission} indicates whether access is being
      * granted or denied.
-     * </p>
      */
     VIEWING,
     /**
      * Whether can user/role can change (or is prevented from changing) the state of the system using the application feature (class member).
-     *
      * <p>
-     * In other words, whether they can execute (if an action, modify/clear (if a property), addTo/removeFrom
-     * (if a collection).
-     * </p>
-     *
+     * In other words, whether they can execute (if an action, modify/clear (if a property), [addTo/removeFrom
+     * (if a collection) ... see note below].
      * <p>
      * The {@link ApplicationPermissionRule rule} of the
      * {@link ApplicationPermission} indicates whether access is being
      * granted or denied.
-     * </p>
-     *
      * <p>
-     * Note that the Wicket viewer does not at the time of writing (Isis 1.6.0) support the notion of
-     * mutable collections.  The RO viewer does, however.
-     * </p>
+     * Note: as of ISIS-3084 the notion of mutable collections was removed
      */
     CHANGING;
 
diff --git a/viewers/restfulobjects/applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/domainobjects/DomainObjectResource.java b/viewers/restfulobjects/applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/domainobjects/DomainObjectResource.java
index b0057b9282..9b4bc93aba 100644
--- a/viewers/restfulobjects/applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/domainobjects/DomainObjectResource.java
+++ b/viewers/restfulobjects/applib/src/main/java/org/apache/isis/viewer/restfulobjects/applib/domainobjects/DomainObjectResource.java
@@ -164,32 +164,33 @@ public interface DomainObjectResource {
     })
     public Response accessCollection(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId);
 
-    @PUT
-    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
-    @Consumes({ MediaType.WILDCARD })
-    @Produces({
-        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
-        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
-    })
-    public Response addToSet(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId, final InputStream arguments);
-
-    @POST
-    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
-    @Consumes({ MediaType.WILDCARD })
-    @Produces({
-        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
-        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
-    })
-    public Response addToList(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId, final InputStream arguments);
-
-    @DELETE
-    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
-    @Consumes({ MediaType.WILDCARD })
-    @Produces({
-        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
-        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
-    })
-    public Response removeFromCollection(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId);
+//XXX[ISIS-3084] - removal of (direct) collection modification - business logic should handle that via actions instead
+//    @PUT
+//    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
+//    @Consumes({ MediaType.WILDCARD })
+//    @Produces({
+//        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
+//        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
+//    })
+//    public Response addToSet(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId, final InputStream arguments);
+//
+//    @POST
+//    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
+//    @Consumes({ MediaType.WILDCARD })
+//    @Produces({
+//        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
+//        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
+//    })
+//    public Response addToList(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId, final InputStream arguments);
+//
+//    @DELETE
+//    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
+//    @Consumes({ MediaType.WILDCARD })
+//    @Produces({
+//        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
+//        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
+//    })
+//    public Response removeFromCollection(@PathParam("domainType") String domainType, @PathParam("instanceId") final String instanceId, @PathParam("collectionId") final String collectionId);
 
     // //////////////////////////////////////////////////////////
     // domain object action
diff --git a/viewers/restfulobjects/viewer/src/main/java/org/apache/isis/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java b/viewers/restfulobjects/viewer/src/main/java/org/apache/isis/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
index c337f0363a..2691ed3d26 100644
--- a/viewers/restfulobjects/viewer/src/main/java/org/apache/isis/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
+++ b/viewers/restfulobjects/viewer/src/main/java/org/apache/isis/viewer/restfulobjects/viewer/resources/DomainObjectResourceServerside.java
@@ -545,67 +545,68 @@ implements DomainObjectResource {
                 domainResourceHelper.collectionDetails(collectionId, ManagedMember.RepresentationMode.READ));
     }
 
-    @Override
-    @PUT
-    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
-    @Consumes({ MediaType.WILDCARD })
-    @Produces({
-        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
-        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
-    })
-    public Response addToSet(
-            @PathParam("domainType") final String domainType,
-            @PathParam("instanceId") final String instanceId,
-            @PathParam("collectionId") final String collectionId,
-            final InputStream body) {
-
-        throw _EndpointLogging.error(log, "POST /objects/{}/{}/collections/{}", domainType, instanceId, collectionId,
-                RestfulObjectsApplicationException
-                .createWithMessage(
-                        HttpStatusCode.METHOD_NOT_ALLOWED,
-                        "The framework no longer supports mutable collections."));
-    }
-
-    @Override
-    @POST
-    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
-    @Consumes({ MediaType.WILDCARD })
-    @Produces({
-        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
-        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
-    })
-    public Response addToList(
-            @PathParam("domainType") final String domainType,
-            @PathParam("instanceId") final String instanceId,
-            @PathParam("collectionId") final String collectionId,
-            final InputStream body) {
-
-        throw _EndpointLogging.error(log, "POST /objects/{}/{}/collections/{}", domainType, instanceId, collectionId,
-                RestfulObjectsApplicationException
-                .createWithMessage(
-                        HttpStatusCode.METHOD_NOT_ALLOWED,
-                        "The framework no longer supports mutable collections."));
-    }
-
-    @Override
-    @DELETE
-    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
-    @Consumes({ MediaType.WILDCARD })
-    @Produces({
-        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
-        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
-    })
-    public Response removeFromCollection(
-            @PathParam("domainType") final String domainType,
-            @PathParam("instanceId") final String instanceId,
-            @PathParam("collectionId") final String collectionId) {
-
-        throw _EndpointLogging.error(log, "DELETE /objects/{}/{}/collections/{}", domainType, instanceId, collectionId,
-                RestfulObjectsApplicationException
-                .createWithMessage(
-                        HttpStatusCode.METHOD_NOT_ALLOWED,
-                        "The framework no longer supports mutable collections."));
-    }
+    //XXX[ISIS-3084] - removal of (direct) collection modification - business logic should handle that via actions instead
+//    @Override
+//    @PUT
+//    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
+//    @Consumes({ MediaType.WILDCARD })
+//    @Produces({
+//        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
+//        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
+//    })
+//    public Response addToSet(
+//            @PathParam("domainType") final String domainType,
+//            @PathParam("instanceId") final String instanceId,
+//            @PathParam("collectionId") final String collectionId,
+//            final InputStream body) {
+//
+//        throw _EndpointLogging.error(log, "POST /objects/{}/{}/collections/{}", domainType, instanceId, collectionId,
+//                RestfulObjectsApplicationException
+//                .createWithMessage(
+//                        HttpStatusCode.METHOD_NOT_ALLOWED,
+//                        "The framework no longer supports mutable collections."));
+//    }
+//
+//    @Override
+//    @POST
+//    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
+//    @Consumes({ MediaType.WILDCARD })
+//    @Produces({
+//        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
+//        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
+//    })
+//    public Response addToList(
+//            @PathParam("domainType") final String domainType,
+//            @PathParam("instanceId") final String instanceId,
+//            @PathParam("collectionId") final String collectionId,
+//            final InputStream body) {
+//
+//        throw _EndpointLogging.error(log, "POST /objects/{}/{}/collections/{}", domainType, instanceId, collectionId,
+//                RestfulObjectsApplicationException
+//                .createWithMessage(
+//                        HttpStatusCode.METHOD_NOT_ALLOWED,
+//                        "The framework no longer supports mutable collections."));
+//    }
+//
+//    @Override
+//    @DELETE
+//    @Path("/{domainType}/{instanceId}/collections/{collectionId}")
+//    @Consumes({ MediaType.WILDCARD })
+//    @Produces({
+//        MediaType.APPLICATION_JSON, RestfulMediaType.APPLICATION_JSON_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_JSON_ERROR,
+//        MediaType.APPLICATION_XML, RestfulMediaType.APPLICATION_XML_OBJECT_COLLECTION, RestfulMediaType.APPLICATION_XML_ERROR
+//    })
+//    public Response removeFromCollection(
+//            @PathParam("domainType") final String domainType,
+//            @PathParam("instanceId") final String instanceId,
+//            @PathParam("collectionId") final String collectionId) {
+//
+//        throw _EndpointLogging.error(log, "DELETE /objects/{}/{}/collections/{}", domainType, instanceId, collectionId,
+//                RestfulObjectsApplicationException
+//                .createWithMessage(
+//                        HttpStatusCode.METHOD_NOT_ALLOWED,
+//                        "The framework no longer supports mutable collections."));
+//    }
 
     // //////////////////////////////////////////////////////////
     // domain object action


[isis] 01/02: ISIS-3084: just comments

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 34a6180e7b5e93a34c7061b8574e127f78f2a4e0
Author: Andi Huber <ah...@apache.org>
AuthorDate: Thu Jun 30 10:44:46 2022 +0200

    ISIS-3084: just comments
---
 .../core/config/progmodel/ProgrammingModelConstants.java     | 12 +++++++++---
 1 file changed, 9 insertions(+), 3 deletions(-)

diff --git a/core/config/src/main/java/org/apache/isis/core/config/progmodel/ProgrammingModelConstants.java b/core/config/src/main/java/org/apache/isis/core/config/progmodel/ProgrammingModelConstants.java
index ea17f20629..a161a9ad7f 100644
--- a/core/config/src/main/java/org/apache/isis/core/config/progmodel/ProgrammingModelConstants.java
+++ b/core/config/src/main/java/org/apache/isis/core/config/progmodel/ProgrammingModelConstants.java
@@ -508,15 +508,17 @@ public final class ProgrammingModelConstants {
 
     }
 
-    //TODO needs an update to reflect Java 7->11 Language changes
+    //TODO perhaps needs an update to reflect Java 7->11 Language changes
     @RequiredArgsConstructor
     public static enum WrapperFactoryProxy {
         COLLECTION(
+                // intercepted ...
                 List.of(
                         getMethod(Collection.class, "contains", Object.class),
                         getMethod(Collection.class, "size"),
                         getMethod(Collection.class, "isEmpty")
                 ),
+                // vetoed ...
                 List.of(
                         getMethod(Collection.class, "add", Object.class),
                         getMethod(Collection.class, "remove", Object.class),
@@ -526,24 +528,28 @@ public final class ProgrammingModelConstants {
                         getMethod(Collection.class, "clear")
                 )),
         LIST(
+                // intercepted ...
                 _Lists.concat(
-                        WrapperFactoryProxy.COLLECTION.intercepted,
+                        COLLECTION.intercepted,
                         List.of(
                                 getMethod(List.class, "get", int.class)
                         )
                 ),
+                // vetoed ...
                 _Lists.concat(
-                        WrapperFactoryProxy.COLLECTION.vetoed,
+                        COLLECTION.vetoed,
                         List.of(
                         )
                 )),
         MAP(
+                // intercepted ...
                 List.of(
                         getMethod(Map.class, "containsKey", Object.class),
                         getMethod(Map.class, "containsValue", Object.class),
                         getMethod(Map.class, "size"),
                         getMethod(Map.class, "isEmpty")
                 ),
+                // vetoed ...
                 List.of(
                         getMethod(Map.class, "put", Object.class, Object.class),
                         getMethod(Map.class, "remove", Object.class),