You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@causeway.apache.org by da...@apache.org on 2024/01/19 12:07:22 UTC

(causeway) 19/23: CAUSEWAY-3676: wip to considolate gqlvObjectSpec's two declarations of gqlObjectType

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 9caf30ad1ff9a4c8bcce513a14be65e03429bfea
Author: danhaywood <da...@haywood-associates.co.uk>
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());