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

danhaywood pushed a commit to branch CAUSEWAY-3676
in repository https://gitbox.apache.org/repos/asf/causeway.git

commit cee920e46bcfb0ab37f01f1e374315033b3e2fa9
Author: danhaywood <[email protected]>
AuthorDate: Mon Feb 12 19:48:39 2024 +0000

    CAUSEWAY-3676: passes in holder to addDataFetchers
---
 .../causeway/viewer/graphql/model/domain/GqlvAction.java | 12 ++++++------
 .../viewer/graphql/model/domain/GqlvActionInvoke.java    |  3 +--
 .../viewer/graphql/model/domain/GqlvActionParam.java     | 14 +++++++-------
 .../model/domain/GqlvActionParamAutoComplete.java        |  2 +-
 .../graphql/model/domain/GqlvActionParamChoices.java     |  3 +--
 .../graphql/model/domain/GqlvActionParamDefault.java     |  2 +-
 .../graphql/model/domain/GqlvActionParamDisabled.java    |  3 +--
 .../graphql/model/domain/GqlvActionParamHidden.java      |  3 +--
 .../graphql/model/domain/GqlvActionParamValidate.java    |  3 +--
 .../viewer/graphql/model/domain/GqlvActionParams.java    |  4 ++--
 .../viewer/graphql/model/domain/GqlvActionValidity.java  |  3 +--
 .../viewer/graphql/model/domain/GqlvAssociationGet.java  |  2 +-
 .../viewer/graphql/model/domain/GqlvCollection.java      |  8 ++++----
 .../viewer/graphql/model/domain/GqlvDomainObject.java    | 13 ++++++-------
 .../viewer/graphql/model/domain/GqlvDomainService.java   |  5 ++---
 .../viewer/graphql/model/domain/GqlvMemberDisabled.java  |  4 +---
 .../viewer/graphql/model/domain/GqlvMemberHidden.java    |  4 +---
 .../causeway/viewer/graphql/model/domain/GqlvMeta.java   |  2 +-
 .../graphql/model/domain/GqlvMutationForAction.java      |  2 +-
 .../graphql/model/domain/GqlvMutationForProperty.java    |  9 +--------
 .../viewer/graphql/model/domain/GqlvProperty.java        | 16 ++++++++--------
 .../graphql/model/domain/GqlvPropertyAutoComplete.java   |  2 +-
 .../viewer/graphql/model/domain/GqlvPropertyChoices.java |  2 +-
 .../viewer/graphql/model/domain/GqlvPropertySet.java     |  3 +--
 .../graphql/model/domain/GqlvPropertyValidate.java       |  3 +--
 .../viewer/graphql/model/domain/GqlvScenario.java        |  4 ++--
 .../viewer/graphql/model/domain/GqlvScenarioGiven.java   |  4 ++--
 .../viewer/graphql/model/domain/GqlvScenarioName.java    |  5 +----
 .../graphql/model/toplevel/GqlvTopLevelMutation.java     |  4 ++--
 .../viewer/graphql/model/toplevel/GqlvTopLevelQuery.java |  4 ++--
 30 files changed, 62 insertions(+), 86 deletions(-)

diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java
index 73f38544ea..82c421e224 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java
@@ -248,19 +248,19 @@ public class GqlvAction
         return getObjectMember();
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 new BookmarkedPojoFetcher(context.bookmarkService));
 
-        hidden.addDataFetcher();
-        disabled.addDataFetcher();
-        validate.addDataFetcher();
+        hidden.addDataFetcher(this);
+        disabled.addDataFetcher(this);
+        validate.addDataFetcher(this);
         if (invoke != null) {
-            invoke.addDataFetcher();
+            invoke.addDataFetcher(this);
         }
         if (params != null) {
-            params.addDataFetcher();
+            params.addDataFetcher(this);
         }
     }
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java
index 183ef0bf6c..86e2bdda5e 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java
@@ -34,7 +34,6 @@ import org.apache.causeway.commons.collections.Can;
 import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy;
 import org.apache.causeway.core.metamodel.facets.actcoll.typeof.TypeOfFacet;
 import org.apache.causeway.core.metamodel.object.ManagedObject;
-import org.apache.causeway.core.metamodel.spec.ObjectSpecification;
 import org.apache.causeway.core.metamodel.spec.feature.ObjectAction;
 import org.apache.causeway.viewer.graphql.model.types.TypeMapper;
 import org.apache.causeway.viewer.graphql.model.context.Context;
@@ -120,7 +119,7 @@ public class GqlvActionInvoke extends GqlvAbstract {
         }
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::invoke
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParam.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParam.java
index 9b6ca82501..ce20ab578a 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParam.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParam.java
@@ -130,23 +130,23 @@ public class GqlvActionParam
         return holder.getObjectAction();
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 new BookmarkedPojoFetcher(context.bookmarkService));
 
-        hidden.addDataFetcher();
-        disabled.addDataFetcher();
+        hidden.addDataFetcher(this);
+        disabled.addDataFetcher(this);
         if (choices != null) {
-            choices.addDataFetcher();
+            choices.addDataFetcher(this);
         }
         if (autoComplete != null) {
-            autoComplete.addDataFetcher();
+            autoComplete.addDataFetcher(this);
         }
         if (default_ != null) {
-            default_.addDataFetcher();
+            default_.addDataFetcher(this);
         }
-        validate.addDataFetcher();
+        validate.addDataFetcher(this);
     }
 
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamAutoComplete.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamAutoComplete.java
index 72e224fff6..6f7e28fc38 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamAutoComplete.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamAutoComplete.java
@@ -78,7 +78,7 @@ package org.apache.causeway.viewer.graphql.model.domain;
          }
      }
 
-     public void addDataFetcher() {
+     public void addDataFetcher(Holder holder) {
          context.codeRegistryBuilder.dataFetcher(
                  holder.coordinatesFor(getField()),
                  this::choices
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamChoices.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamChoices.java
index 1ced208c2e..7b25b4394a 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamChoices.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamChoices.java
@@ -43,7 +43,6 @@ package org.apache.causeway.viewer.graphql.model.domain;
  import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider;
  import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
- import lombok.Getter;
  import lombok.val;
  import lombok.extern.log4j.Log4j2;
 
@@ -71,7 +70,7 @@ package org.apache.causeway.viewer.graphql.model.domain;
          }
      }
 
-     public void addDataFetcher() {
+     public void addDataFetcher(Holder holder) {
          context.codeRegistryBuilder.dataFetcher(
                  holder.coordinatesFor(getField()),
                  this::choices
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDefault.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDefault.java
index a3033bf8e2..c179858180 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDefault.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDefault.java
@@ -67,7 +67,7 @@ package org.apache.causeway.viewer.graphql.model.domain;
          }
      }
 
-     public void addDataFetcher() {
+     public void addDataFetcher(Holder holder) {
          context.codeRegistryBuilder.dataFetcher(
                  holder.coordinatesFor(getField()),
                  this::default_
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDisabled.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDisabled.java
index f2cbfbd73b..3c3fb212bf 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDisabled.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamDisabled.java
@@ -35,7 +35,6 @@ import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParamete
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
-import lombok.Getter;
 import lombok.val;
 import lombok.extern.log4j.Log4j2;
 
@@ -59,7 +58,7 @@ public class GqlvActionParamDisabled extends GqlvAbstract {
     }
 
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::disabled
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamHidden.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamHidden.java
index 472246a0ba..59d47c5d0e 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamHidden.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamHidden.java
@@ -35,7 +35,6 @@ package org.apache.causeway.viewer.graphql.model.domain;
  import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider;
  import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
- import lombok.Getter;
  import lombok.val;
  import lombok.extern.log4j.Log4j2;
 
@@ -58,7 +57,7 @@ public class GqlvActionParamHidden extends GqlvAbstract {
     }
 
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::hidden
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamValidate.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamValidate.java
index 3aab19e087..dc746594e2 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamValidate.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParamValidate.java
@@ -35,7 +35,6 @@ import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParamete
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
-import lombok.Getter;
 import lombok.val;
 import lombok.extern.log4j.Log4j2;
 
@@ -58,7 +57,7 @@ public class GqlvActionParamValidate extends GqlvAbstract {
     }
 
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::disabled
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParams.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParams.java
index 03b95dbbef..89289762cf 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParams.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionParams.java
@@ -94,12 +94,12 @@ public class GqlvActionParams
     }
 
 
-    void addDataFetcher() {
+    void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 new BookmarkedPojoFetcher(context.bookmarkService));
 
-        params.forEach((id, param) -> param.addDataFetcher());
+        params.forEach((id, param) -> param.addDataFetcher(this));
     }
 
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionValidity.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionValidity.java
index 945aecdbc9..cec167a4cb 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionValidity.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionValidity.java
@@ -38,7 +38,6 @@ import 
org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
-import lombok.Getter;
 import lombok.val;
 import lombok.extern.log4j.Log4j2;
 
@@ -69,7 +68,7 @@ public class GqlvActionValidity extends GqlvAbstract {
         }
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::validate
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java
index 35ccd1814a..3ebec23973 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java
@@ -55,7 +55,7 @@ public abstract class GqlvAssociationGet<T extends 
ObjectAssociation> extends Gq
 
     abstract GraphQLOutputType outputTypeFor(Holder<T> holder);
 
-    void addDataFetcher() {
+    void addDataFetcher(Holder<T> holder) {
 
         val association = holder.getObjectAssociation();
         val fieldObjectSpecification = association.getElementType();
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java
index f5c0ef75b2..df00c908e6 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java
@@ -63,14 +63,14 @@ public class GqlvCollection
         return getObjectAssociation();
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 new BookmarkedPojoFetcher(context.bookmarkService));
 
-        hidden.addDataFetcher();
-        disabled.addDataFetcher();
-        get.addDataFetcher();
+        hidden.addDataFetcher(this);
+        disabled.addDataFetcher(this);
+        get.addDataFetcher(this);
     }
 
     public interface Holder extends GqlvAssociation.Holder {
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainObject.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainObject.java
index ab1c1fc88e..83b8739d6a 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainObject.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainObject.java
@@ -22,7 +22,6 @@ import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.SortedMap;
 import java.util.TreeMap;
-import java.util.function.Function;
 
 import graphql.Scalars;
 import graphql.schema.DataFetcher;
@@ -164,20 +163,20 @@ public class GqlvDomainObject
     }
 
 
-    public void addDataFetchers() {
+    public void addDataFetchers(Holder holder1) {
 
         this.context.codeRegistryBuilder.dataFetcher(
-                holder.coordinatesFor(getLookupField()),
+                holder1.coordinatesFor(getLookupField()),
                 (DataFetcher<Object>) environment -> {
                     Object target = environment.getArgument("object");
                     return GqlvAction.asPojo(getObjectSpecification(), target, 
this.context.bookmarkService)
                             .orElse(null);
                 });
 
-        meta.addDataFetchers();
-        properties.forEach((id, property) -> property.addDataFetcher());
-        collections.forEach((id, collection) -> collection.addDataFetcher());
-        actions.forEach((id, action) -> action.addDataFetcher());
+        meta.addDataFetchers(this);
+        properties.forEach((id, property) -> property.addDataFetcher(this));
+        collections.forEach((id, collection) -> 
collection.addDataFetcher(this));
+        actions.forEach((id, action) -> action.addDataFetcher(this));
     }
 
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainService.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainService.java
index aac70cdaed..57550556d2 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainService.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvDomainService.java
@@ -20,7 +20,6 @@ package org.apache.causeway.viewer.graphql.model.domain;
 
 import java.util.LinkedHashMap;
 import java.util.Map;
-import java.util.function.Function;
 
 import graphql.schema.DataFetcher;
 
@@ -98,12 +97,12 @@ public class GqlvDomainService
     }
 
 
-    public void addDataFetchers() {
+    public void addDataFetchers(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 (DataFetcher<Object>) environment -> getServicePojo());
         if (hasActions()) {
-            actions.forEach((id, gqlva) -> gqlva.addDataFetcher());
+            actions.forEach((id, gqlva) -> gqlva.addDataFetcher(this));
         }
     }
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java
index 98ac117852..3fee26c450 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java
@@ -19,7 +19,6 @@
 package org.apache.causeway.viewer.graphql.model.domain;
 
 import graphql.schema.DataFetchingEnvironment;
-import graphql.schema.GraphQLFieldDefinition;
 
 import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition;
 
@@ -32,7 +31,6 @@ import 
org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectMemberProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
-import lombok.Getter;
 import lombok.val;
 import lombok.extern.log4j.Log4j2;
 
@@ -54,7 +52,7 @@ public class GqlvMemberDisabled<T extends ObjectMember> 
extends GqlvAbstract {
                 .build());
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder<T> holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::disabled
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java
index ab116ebed8..2f529c0630 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java
@@ -19,7 +19,6 @@
 package org.apache.causeway.viewer.graphql.model.domain;
 
 import graphql.schema.DataFetchingEnvironment;
-import graphql.schema.GraphQLFieldDefinition;
 
 import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition;
 
@@ -32,7 +31,6 @@ import 
org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectMemberProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 
-import lombok.Getter;
 import lombok.val;
 import lombok.extern.log4j.Log4j2;
 
@@ -54,7 +52,7 @@ public class GqlvMemberHidden<T extends ObjectMember> extends 
GqlvAbstract {
                 .build());
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder<T> holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::hidden
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMeta.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMeta.java
index c9ded6804d..c7173c0d03 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMeta.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMeta.java
@@ -68,7 +68,7 @@ public class GqlvMeta extends GqlvAbstractCustom {
     }
 
 
-    public void addDataFetchers() {
+    public void addDataFetchers(Holder holder) {
 
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForAction.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForAction.java
index 9b501a301b..dbe584fab9 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForAction.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForAction.java
@@ -118,7 +118,7 @@ public class GqlvMutationForAction extends GqlvAbstract {
         }
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 this::invoke
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForProperty.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForProperty.java
index 65ab2e2e40..c422970dc4 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForProperty.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMutationForProperty.java
@@ -38,7 +38,6 @@ import 
org.apache.causeway.viewer.graphql.model.exceptions.HiddenException;
 import org.apache.causeway.viewer.graphql.model.exceptions.InvalidException;
 import org.apache.causeway.viewer.graphql.model.types.TypeMapper;
 
-import lombok.Getter;
 import lombok.val;
 
 //@Log4j2
@@ -80,7 +79,7 @@ public class GqlvMutationForProperty extends GqlvAbstract {
     }
 
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
 
         val beanSort = oneToOneAssociation.getElementType().getBeanSort();
 
@@ -94,12 +93,6 @@ public class GqlvMutationForProperty extends GqlvAbstract {
 
                 break;
         }
-
-        // looks to be unnecessary...
-//        context.codeRegistryBuilder.dataFetcher(
-//                holder.coordinatesFor(getField()),
-//                this::set
-//        );
     }
 
     private Object set(final DataFetchingEnvironment dataFetchingEnvironment) {
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java
index 5482c699ec..1062b0ca13 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java
@@ -132,23 +132,23 @@ public class GqlvProperty
         return getObjectAssociation();
     }
 
-    public void addDataFetcher() {
+    public void addDataFetcher(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 new BookmarkedPojoFetcher(context.bookmarkService));
 
-        hidden.addDataFetcher();
-        disabled.addDataFetcher();
-        get.addDataFetcher();
+        hidden.addDataFetcher(this);
+        disabled.addDataFetcher(this);
+        get.addDataFetcher(this);
         if(choices != null) {
-            choices.addDataFetcher();
+            choices.addDataFetcher(this);
         }
         if(autoComplete != null) {
-            autoComplete.addDataFetcher();
+            autoComplete.addDataFetcher(this);
         }
-        validate.addDataFetcher();
+        validate.addDataFetcher(this);
         if (set != null) {
-            set.addDataFetcher();
+            set.addDataFetcher(this);
         }
     }
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyAutoComplete.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyAutoComplete.java
index 09e1fa9840..ee3c39cc45 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyAutoComplete.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyAutoComplete.java
@@ -69,7 +69,7 @@ public class GqlvPropertyAutoComplete extends GqlvAbstract {
         return this.getField() != null;
     }
 
-    void addDataFetcher() {
+    void addDataFetcher(Holder holder) {
 
         val association = holder.getOneToOneAssociation();
         val fieldObjectSpecification = association.getElementType();
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyChoices.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyChoices.java
index c6a9f3b905..519f87b630 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyChoices.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyChoices.java
@@ -65,7 +65,7 @@ public class GqlvPropertyChoices extends GqlvAbstract {
         return this.getField() != null;
     }
 
-    void addDataFetcher() {
+    void addDataFetcher(Holder holder) {
 
         val association = holder.getOneToOneAssociation();
         val fieldObjectSpecification = association.getElementType();
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertySet.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertySet.java
index d3d91c102d..2fd31e4c0e 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertySet.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertySet.java
@@ -39,7 +39,6 @@ import 
org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider;
 
-import lombok.Getter;
 import lombok.val;
 
 public class GqlvPropertySet extends GqlvAbstract {
@@ -68,7 +67,7 @@ public class GqlvPropertySet extends GqlvAbstract {
         return 
context.typeMapper.outputTypeFor(holder.getObjectSpecification());   // setters 
return void, so we return the domain object instead
     }
 
-    void addDataFetcher() {
+    void addDataFetcher(Holder holder) {
 
         val association = holder.getOneToOneAssociation();
         val fieldObjectSpecification = association.getElementType();
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyValidate.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyValidate.java
index 2664888d58..8728b4a974 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyValidate.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvPropertyValidate.java
@@ -32,7 +32,6 @@ import 
org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider;
 import 
org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider;
 
-import lombok.Getter;
 import lombok.val;
 
 public class GqlvPropertyValidate extends GqlvAbstract {
@@ -53,7 +52,7 @@ public class GqlvPropertyValidate extends GqlvAbstract {
         setField(fieldBuilder.build());
     }
 
-    void addDataFetcher() {
+    void addDataFetcher(Holder holder) {
 
         val association = holder.getOneToOneAssociation();
         val fieldObjectSpecification = association.getElementType();
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenario.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenario.java
index 1ede77d259..a43860f969 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenario.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenario.java
@@ -70,12 +70,12 @@ public class GqlvScenario
     }
 
 
-    public void addDataFetchers() {
+    public void addDataFetchers(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 (DataFetcher<Object>) environment -> scenarioPojo);
 
-        scenarioName.addDataFetchers();
+        scenarioName.addDataFetchers(this);
         scenarioGiven.addDataFetchers();
     }
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioGiven.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioGiven.java
index 7c3c5c80d2..0495dfa209 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioGiven.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioGiven.java
@@ -63,11 +63,11 @@ public class GqlvScenarioGiven
         domainServices.forEach(domainService -> {
             boolean actionsAdded = domainService.hasActions();
             if (actionsAdded) {
-                domainService.addDataFetchers();
+                domainService.addDataFetchers(this);
             }
         });
 
-        domainObjects.forEach(GqlvDomainObject::addDataFetchers);
+        domainObjects.forEach(domainObject -> 
domainObject.addDataFetchers(this));
     }
 
     public interface Holder
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioName.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioName.java
index aa5c7ddd76..6e5b1330bf 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioName.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvScenarioName.java
@@ -4,9 +4,6 @@ import graphql.GraphQLContext;
 import graphql.Scalars;
 import graphql.schema.DataFetcher;
 import graphql.schema.DataFetchingEnvironment;
-import graphql.schema.GraphQLFieldDefinition;
-
-import lombok.Getter;
 
 import static graphql.schema.GraphQLFieldDefinition.*;
 import static graphql.schema.GraphQLObjectType.newObject;
@@ -32,7 +29,7 @@ public class GqlvScenarioName extends GqlvAbstract {
         );
     }
 
-    public void addDataFetchers() {
+    public void addDataFetchers(Holder holder) {
         context.codeRegistryBuilder.dataFetcher(
                 holder.coordinatesFor(getField()),
                 (DataFetcher<Object>) environment ->  name(environment));
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelMutation.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelMutation.java
index 6a8af3dce7..a87e0e82b3 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelMutation.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelMutation.java
@@ -64,8 +64,8 @@ public class GqlvTopLevelMutation
     }
 
     public void addDataFetchers() {
-        actions.forEach(GqlvMutationForAction::addDataFetcher);
-        properties.forEach(GqlvMutationForProperty::addDataFetcher);
+        actions.forEach(gqlvMutationForAction -> 
gqlvMutationForAction.addDataFetcher(this));
+        properties.forEach(gqlvMutationForProperty -> 
gqlvMutationForProperty.addDataFetcher(this));
     }
 
 
diff --git 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelQuery.java
 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelQuery.java
index b3bfdcac82..47a16a199b 100644
--- 
a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelQuery.java
+++ 
b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/toplevel/GqlvTopLevelQuery.java
@@ -73,12 +73,12 @@ public class GqlvTopLevelQuery
         domainServices.forEach(domainService -> {
             boolean actionsAdded = domainService.hasActions();
             if (actionsAdded) {
-                domainService.addDataFetchers();
+                domainService.addDataFetchers(this);
             }
         });
 
 
-        domainObjects.forEach(GqlvDomainObject::addDataFetchers);
+        domainObjects.forEach(domainObject -> 
domainObject.addDataFetchers(this));
 
 //        scenario.addDataFetchers();
     }


Reply via email to