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 d849118afa9d21eecaf2ef0c1730168226e3d06b
Author: danhaywood <[email protected]>
AuthorDate: Fri Jan 19 11:42:34 2024 +0000

    CAUSEWAY-3676: wip to considolate gqlvObjectSpec's two declarations of 
gqlObjectType
---
 .../viewer/graphql/viewer/source/GqlvObjectSpec.java     | 16 ++++++++--------
 .../viewer/graphql/viewer/source/ObjectTypeFactory.java  | 14 +++++++-------
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git 
a/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/GqlvObjectSpec.java
 
b/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/GqlvObjectSpec.java
index 6a6a80de08..d2c6712342 100644
--- 
a/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/GqlvObjectSpec.java
+++ 
b/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/GqlvObjectSpec.java
@@ -36,13 +36,13 @@ public class GqlvObjectSpec {
         return objectSpec.getBeanSort();
     }
 
-    @Getter private final GraphQLObjectType.Builder objectTypeBuilder;
-    @Getter private final GraphQLObjectType metaType;
+    @Getter private final GraphQLObjectType.Builder gqlObjectTypeBuilder;
+    @Getter private final GraphQLObjectType gqlObjectType;
 
     public GqlvObjectSpec(final ObjectSpecification objectSpec) {
         this.objectSpec = objectSpec;
-        this.objectTypeBuilder = 
newObject().name(getLogicalTypeNameSanitized());
-        this.metaType = 
_GraphQLObjectType.create(getLogicalTypeNameSanitized(), getBeanSort());
+        this.gqlObjectTypeBuilder = 
newObject().name(getLogicalTypeNameSanitized());
+        this.gqlObjectType = 
_GraphQLObjectType.create(getLogicalTypeNameSanitized(), getBeanSort());
     }
 
 
@@ -67,7 +67,7 @@ public class GqlvObjectSpec {
                                     
_LogicalTypeName.sanitized(logicalTypeNameOfField))
                             : nonNull(GraphQLTypeReference.typeRef(
                                     
_LogicalTypeName.sanitized(logicalTypeNameOfField))));
-                getObjectTypeBuilder().field(fieldBuilder);
+                getGqlObjectTypeBuilder().field(fieldBuilder);
 
                 break;
 
@@ -80,7 +80,7 @@ public class GqlvObjectSpec {
                     .type(otoa.isOptional()
                             ? Scalars.GraphQLString
                             : nonNull(Scalars.GraphQLString));
-                getObjectTypeBuilder().field(valueBuilder);
+                getGqlObjectTypeBuilder().field(valueBuilder);
 
                 break;
 
@@ -104,14 +104,14 @@ public class GqlvObjectSpec {
                     .name(otom.getId())
                     .type(GraphQLList.list(GraphQLTypeReference.typeRef(
                             
_LogicalTypeName.sanitized(logicalTypeNameOfField))));
-                objectTypeBuilder.field(fieldBuilder);
+                gqlObjectTypeBuilder.field(fieldBuilder);
                 break;
 
             case VALUE:
                 GraphQLFieldDefinition.Builder valueBuilder = 
newFieldDefinition()
                     .name(otom.getId())
                     
.type(GraphQLList.list(TypeMapper.typeFor(elementType.getCorrespondingClass())));
-                objectTypeBuilder.field(valueBuilder);
+                gqlObjectTypeBuilder.field(valueBuilder);
                 break;
         }
     }
diff --git 
a/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/ObjectTypeFactory.java
 
b/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/ObjectTypeFactory.java
index 31344fe9e9..c763b7a9d6 100644
--- 
a/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/ObjectTypeFactory.java
+++ 
b/incubator/viewers/graphql/viewer/src/main/java/org/apache/causeway/viewer/graphql/viewer/source/ObjectTypeFactory.java
@@ -112,13 +112,13 @@ public class ObjectTypeFactory {
         // create meta field type
         BeanSort objectSpecificationBeanSort = gqlvObjectSpec.getBeanSort();
 
-        GraphQLObjectType metaType = gqlvObjectSpec.getMetaType();
-
-        
graphQLTypeRegistry.addTypeIfNotAlreadyPresent(gqlvObjectSpec.getMetaType());
-
+        GraphQLObjectType metaType = gqlvObjectSpec.getGqlObjectType();
         // add meta field
         val _gql_meta_Field = 
newFieldDefinition().name("_gql_meta").type(metaType).build();
-        gqlvObjectSpec.getObjectTypeBuilder().field(_gql_meta_Field);
+        gqlvObjectSpec.getGqlObjectTypeBuilder().field(_gql_meta_Field);
+
+        
graphQLTypeRegistry.addTypeIfNotAlreadyPresent(gqlvObjectSpec.getGqlObjectType());
+
 
 
         // create input type
@@ -141,10 +141,10 @@ public class ObjectTypeFactory {
 
         // add actions
         MutatorsDataForEntity mutatorsDataForEntity =
-                addActions(gqlvObjectSpec.getLogicalTypeNameSanitized(), 
objectSpec, gqlvObjectSpec.getObjectTypeBuilder());
+                addActions(gqlvObjectSpec.getLogicalTypeNameSanitized(), 
objectSpec, gqlvObjectSpec.getGqlObjectTypeBuilder());
 
         // build and register object type
-        GraphQLObjectType graphQLObjectType = 
gqlvObjectSpec.getObjectTypeBuilder().build();
+        GraphQLObjectType graphQLObjectType = 
gqlvObjectSpec.getGqlObjectTypeBuilder().name(gqlvObjectSpec.getLogicalTypeNameSanitized()).build();
         graphQLTypeRegistry.addTypeIfNotAlreadyPresent(graphQLObjectType, 
gqlvObjectSpec.getLogicalTypeNameSanitized());
 
 

Reply via email to