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 11:58:05 UTC
(causeway) 10/11: CAUSEWAY-3676: inlines vars obtained from gqlvObjectSpec
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 16b343bc2dc688ed7bbd588971711170825c71ac
Author: danhaywood <da...@haywood-associates.co.uk>
AuthorDate: Fri Jan 19 11:51:22 2024 +0000
CAUSEWAY-3676: inlines vars obtained from gqlvObjectSpec
---
.../viewer/graphql/viewer/source/GqlvObjectSpec.java | 13 ++++++-------
.../viewer/graphql/viewer/source/ObjectTypeFactory.java | 14 +++++---------
2 files changed, 11 insertions(+), 16 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 32c2140932..2079bb682a 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,22 +36,21 @@ public class GqlvObjectSpec {
return objectSpec.getBeanSort();
}
+ @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.gqlObjectTypeBuilder = newObject().name(getLogicalTypeNameSanitized());
- String logicalTypeNameSanitized = getLogicalTypeNameSanitized();
- BeanSort objectSpecificationBeanSort = getBeanSort();
- String metaTypeName = ObjectTypeFactory.metaTypeName(logicalTypeNameSanitized);
- GraphQLObjectType.Builder metaTypeBuilder = newObject().name(metaTypeName);
+
+ val metaTypeBuilder = newObject().name(getLogicalTypeNameSanitized() + "__DomainObject_meta");
metaTypeBuilder.field(ObjectTypeFactory.Fields.id);
metaTypeBuilder.field(ObjectTypeFactory.Fields.logicalTypeName);
- if (objectSpecificationBeanSort == BeanSort.ENTITY) {
+ if (getBeanSort() == BeanSort.ENTITY) {
metaTypeBuilder.field(ObjectTypeFactory.Fields.version);
}
- this.gqlObjectType = metaTypeBuilder.build();
+
+ this.metaType = metaTypeBuilder.build();
}
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 dd388eaf38..503a6fd4fd 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
@@ -72,6 +72,7 @@ public class ObjectTypeFactory {
final static String GQL_INPUTTYPE_PREFIX = "_gql_input__";
final static String GQL_MUTATIONS_FIELDNAME = "_gql_mutations";
+
private final BookmarkService bookmarkService;
private final SpecificationLoader specificationLoader;
private final ObjectManager objectManager;
@@ -81,10 +82,6 @@ public class ObjectTypeFactory {
return logicalTypeNameSanitized + "__DomainObject_mutators";
}
- static String metaTypeName(final String logicalTypeNameSanitized){
- return logicalTypeNameSanitized + "__DomainObject_meta";
- }
-
@UtilityClass
static class Fields {
static GraphQLFieldDefinition id =
@@ -110,15 +107,14 @@ public class ObjectTypeFactory {
val gqlvObjectSpec = new GqlvObjectSpec(objectSpec);
// create meta field type
- BeanSort objectSpecificationBeanSort = gqlvObjectSpec.getBeanSort();
- GraphQLObjectType metaType = gqlvObjectSpec.getGqlObjectType();
+ GraphQLObjectType metaType = gqlvObjectSpec.getMetaType();
// add meta field
val _gql_meta_Field = newFieldDefinition().name("_gql_meta").type(metaType).build();
gqlvObjectSpec.getGqlObjectTypeBuilder().field(_gql_meta_Field);
- graphQLTypeRegistry.addTypeIfNotAlreadyPresent(gqlvObjectSpec.getGqlObjectType());
+ graphQLTypeRegistry.addTypeIfNotAlreadyPresent(gqlvObjectSpec.getMetaType());
@@ -151,10 +147,10 @@ public class ObjectTypeFactory {
// create and register data fetchers
createAndRegisterDataFetchersForMetaData(
- codeRegistryBuilder, objectSpecificationBeanSort, metaType, _gql_meta_Field, graphQLObjectType);
+ codeRegistryBuilder, gqlvObjectSpec.getBeanSort(), gqlvObjectSpec.getMetaType(), _gql_meta_Field, graphQLObjectType);
if (mutatorsDataForEntity!=null) {
createAndRegisterDataFetchersForMutators(
- codeRegistryBuilder, objectSpecificationBeanSort, mutatorsDataForEntity, graphQLObjectType);
+ codeRegistryBuilder, gqlvObjectSpec.getBeanSort(), mutatorsDataForEntity, graphQLObjectType);
}
createAndRegisterDataFetchersForField(objectSpec, codeRegistryBuilder, graphQLObjectType);
createAndRegisterDataFetchersForCollection(objectSpec, codeRegistryBuilder, graphQLObjectType);