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 7e9aa99c95c8e15ca49a077a13ce951889ab6efd Author: danhaywood <[email protected]> AuthorDate: Thu Jan 25 23:18:20 2024 +0000 CAUSEWAY-3676: cleaning up is all --- .../viewer/graphql/model/domain/GqlvAction.java | 33 +++++++++++----------- .../graphql/model/domain/GqlvActionInvoke.java | 1 - .../graphql/model/domain/GqlvAssociation.java | 5 ++-- .../graphql/model/domain/GqlvAssociationGet.java | 4 +-- .../graphql/model/domain/GqlvCollection.java | 12 +++++--- .../graphql/model/domain/GqlvCollectionGet.java | 5 ++-- .../viewer/graphql/model/domain/GqlvMember.java | 6 ++-- .../graphql/model/domain/GqlvMemberDisabled.java | 19 +++++-------- .../graphql/model/domain/GqlvMemberHidden.java | 25 ++++++++-------- .../viewer/graphql/model/domain/GqlvProperty.java | 20 ++++++------- 10 files changed, 65 insertions(+), 65 deletions(-) diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java index 901f0c7268..e67d93f3bd 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAction.java @@ -45,8 +45,8 @@ import static graphql.schema.GraphQLObjectType.newObject; @Log4j2 public class GqlvAction extends GqlvMember<ObjectAction, GqlvAction.Holder> - implements GqlvMemberHidden.Holder, - GqlvMemberDisabled.Holder, + implements GqlvMemberHidden.Holder<ObjectAction>, + GqlvMemberDisabled.Holder<ObjectAction>, GqlvActionInvoke.Holder, GqlvActionValidate.Holder, GqlvActionParams.Holder { @@ -54,8 +54,8 @@ public class GqlvAction private final GraphQLObjectType.Builder gqlObjectTypeBuilder; private final GraphQLObjectType gqlObjectType; - private final GqlvMemberHidden hidden; - private final GqlvMemberDisabled disabled; + private final GqlvMemberHidden<ObjectAction> hidden; + private final GqlvMemberDisabled<ObjectAction> disabled; private final GqlvActionValidate validate; private final GqlvActionInvoke invoke; /** @@ -66,14 +66,13 @@ public class GqlvAction public GqlvAction( final Holder holder, final ObjectAction objectAction, - final Context context - ) { + final Context context) { super(holder, objectAction, context); this.gqlObjectTypeBuilder = newObject().name(TypeNames.actionTypeNameFor(holder.getObjectSpecification(), objectAction)); - this.hidden = new GqlvMemberHidden(this, context); - this.disabled = new GqlvMemberDisabled(this, context); + this.hidden = new GqlvMemberHidden<>(this, context); + this.disabled = new GqlvMemberDisabled<>(this, context); this.validate = new GqlvActionValidate(this, context); this.invoke = new GqlvActionInvoke(this, context); val params = new GqlvActionParams(this, context); @@ -158,10 +157,10 @@ public class GqlvAction } static <T> T evaluate( - ObjectActionProvider holder, - Context context, - DataFetchingEnvironment dataFetchingEnvironment, - Evaluator<T, ObjectAction> evaluator) { + final ObjectActionProvider holder, + final Context context, + final DataFetchingEnvironment dataFetchingEnvironment, + final Evaluator<T, ObjectAction> evaluator) { val sourcePojo = BookmarkedPojo.sourceFrom(dataFetchingEnvironment); @@ -180,10 +179,10 @@ public class GqlvAction } static <T> T evaluate( - ObjectActionParameterProvider holder, - Context context, - DataFetchingEnvironment dataFetchingEnvironment, - Evaluator<T, ObjectActionParameter> evaluator) { + final ObjectActionParameterProvider holder, + final Context context, + final DataFetchingEnvironment dataFetchingEnvironment, + final Evaluator<T, ObjectActionParameter> evaluator) { val sourcePojo = BookmarkedPojo.sourceFrom(dataFetchingEnvironment); @@ -199,7 +198,7 @@ public class GqlvAction val objectActionParameter = objectAction.getParameterById(holder.getObjectActionParameter().getId()); - final Can<ManagedObject> argumentManagedObjects = argumentManagedObjectsFor(dataFetchingEnvironment, objectAction, context.bookmarkService); + val argumentManagedObjects = argumentManagedObjectsFor(dataFetchingEnvironment, objectAction, context.bookmarkService); return evaluator.evaluate(actionInteractionHead, objectActionParameter, argumentManagedObjects); } diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java index 6193442a0d..fc2af7a8ff 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvActionInvoke.java @@ -135,7 +135,6 @@ public class GqlvActionInvoke { private Object invoke(final DataFetchingEnvironment dataFetchingEnvironment) { - val evaluator = new Evaluator<Object, ObjectAction>(null) { @Override public Object evaluate(ActionInteractionHead head, ObjectAction objectAction, final Can<ManagedObject> argumentManagedObjects) { diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociation.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociation.java index 630e9dccf7..aff32ff15a 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociation.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociation.java @@ -52,8 +52,7 @@ public abstract class GqlvAssociation<T extends ObjectAssociation, H extends Gql return getObjectMember(); } - public interface Holder extends GqlvMember.Holder { - - ObjectSpecification getObjectSpecification(); + public interface Holder + extends GqlvMember.Holder { } } diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java index 948c8e7989..496c39edc7 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvAssociationGet.java @@ -86,8 +86,7 @@ public abstract class GqlvAssociationGet<T extends ObjectAssociation> { Object get(final DataFetchingEnvironment dataFetchingEnvironment) { - val association = holder.getObjectAssociation(); - + // TODO: introduce evaluator val sourcePojo = BookmarkedPojo.sourceFrom(dataFetchingEnvironment); val sourcePojoClass = sourcePojo.getClass(); @@ -97,6 +96,7 @@ public abstract class GqlvAssociationGet<T extends ObjectAssociation> { return null; } + val association = holder.getObjectAssociation(); val managedObject = ManagedObject.adaptSingular(objectSpecification, sourcePojo); val resultManagedObject = association.get(managedObject); diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java index 8c2fdb0059..42fe77b0a0 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollection.java @@ -31,12 +31,16 @@ import graphql.schema.GraphQLObjectType; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import static graphql.schema.GraphQLObjectType.newObject; -public class GqlvCollection extends GqlvAssociation<OneToManyAssociation, GqlvCollection.Holder> implements GqlvCollectionGet.Holder, GqlvMemberHidden.Holder, GqlvMemberDisabled.Holder { +public class GqlvCollection + extends GqlvAssociation<OneToManyAssociation, GqlvCollection.Holder> + implements GqlvCollectionGet.Holder, + GqlvMemberHidden.Holder<OneToManyAssociation>, + GqlvMemberDisabled.Holder<OneToManyAssociation> { private final GraphQLObjectType.Builder gqlObjectTypeBuilder; private final GraphQLObjectType gqlObjectType; - private final GqlvMemberHidden hidden; - private final GqlvMemberDisabled disabled; + private final GqlvMemberHidden<OneToManyAssociation> hidden; + private final GqlvMemberDisabled<OneToManyAssociation> disabled; private final GqlvCollectionGet get; public GqlvCollection( @@ -48,7 +52,7 @@ public class GqlvCollection extends GqlvAssociation<OneToManyAssociation, GqlvCo this.gqlObjectTypeBuilder = newObject().name(TypeNames.collectionTypeNameFor(holder.getObjectSpecification(), oneToManyAssociation)); this.hidden = new GqlvMemberHidden(this, context); - this.disabled = new GqlvMemberDisabled(this, context); + this.disabled = new GqlvMemberDisabled<>(this, context); this.get = new GqlvCollectionGet(this, context); this.gqlObjectType = gqlObjectTypeBuilder.build(); diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollectionGet.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollectionGet.java index 3a220f3129..82b4b1452f 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollectionGet.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvCollectionGet.java @@ -44,7 +44,8 @@ public class GqlvCollectionGet extends GqlvAssociationGet<OneToManyAssociation> return TypeMapper.listTypeForElementTypeOf(oneToManyAssociation); } - public interface Holder extends GqlvAssociationGet.Holder<OneToManyAssociation> { - + public interface Holder + extends GqlvAssociationGet.Holder<OneToManyAssociation> { + OneToManyAssociation getOneToManyAssociation(); } } diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMember.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMember.java index 987cb52f28..d979a67276 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMember.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMember.java @@ -63,9 +63,9 @@ public abstract class GqlvMember<T extends ObjectMember, H extends GqlvMember.Ho return objectMember.getFeatureIdentifier().getFullIdentityString(); } - public static interface Holder extends GqlvHolder { - - ObjectSpecification getObjectSpecification(); + public interface Holder + extends GqlvHolder, + ObjectSpecificationProvider{ } } diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java index b91ce4686c..fdba6fa846 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberDisabled.java @@ -34,14 +34,14 @@ import graphql.schema.GraphQLFieldDefinition; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; @Log4j2 -public class GqlvMemberDisabled { +public class GqlvMemberDisabled<T extends ObjectMember> { - private final Holder holder; + private final Holder<T> holder; private final Context context; private final GraphQLFieldDefinition field; public GqlvMemberDisabled( - final Holder holder, + final Holder<T> holder, final Context context ) { this.holder = holder; @@ -71,30 +71,25 @@ public class GqlvMemberDisabled { private String disabled( final DataFetchingEnvironment dataFetchingEnvironment) { - final ObjectMember objectMember = holder.getObjectMember(); - val sourcePojo = BookmarkedPojo.sourceFrom(dataFetchingEnvironment); val sourcePojoClass = sourcePojo.getClass(); val specificationLoader = holder.getObjectMember().getSpecificationLoader(); val objectSpecification = specificationLoader.loadSpecification(sourcePojoClass); if (objectSpecification == null) { - // not expected return String.format("Disabled; could not determine target object's type ('%s')", sourcePojoClass.getName()); } + val objectMember = holder.getObjectMember(); val managedObject = ManagedObject.adaptSingular(objectSpecification, sourcePojo); val usable = objectMember.isUsable(managedObject, InteractionInitiatedBy.USER, Where.ANYWHERE); return usable.getReasonAsString().orElse(null); } - public interface Holder + public interface Holder<T extends ObjectMember> extends GqlvHolder, - ObjectSpecificationProvider{ - - ObjectSpecification getObjectSpecification(); - - ObjectMember getObjectMember(); + ObjectSpecificationProvider, + ObjectMemberProvider<T> { } } diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java index f47b224336..facdd8e7f0 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvMemberHidden.java @@ -25,6 +25,8 @@ import org.apache.causeway.core.metamodel.spec.ObjectSpecification; import org.apache.causeway.core.metamodel.spec.feature.ObjectMember; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; +import org.springframework.beans.factory.ObjectProvider; + import lombok.val; import lombok.extern.log4j.Log4j2; @@ -34,14 +36,14 @@ import graphql.schema.GraphQLFieldDefinition; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; @Log4j2 -public class GqlvMemberHidden { +public class GqlvMemberHidden<T extends ObjectMember> { - private final Holder holder; + private final Holder<T> holder; private final Context context; private final GraphQLFieldDefinition field; public GqlvMemberHidden( - final Holder holder, + final Holder<T> holder, final Context context ) { this.holder = holder; @@ -49,7 +51,7 @@ public class GqlvMemberHidden { this.field = fieldDefinition(holder); } - private static GraphQLFieldDefinition fieldDefinition(final Holder holder) { + private static <T extends ObjectMember> GraphQLFieldDefinition fieldDefinition(final Holder<T> holder) { GraphQLFieldDefinition fieldDefinition = newFieldDefinition() @@ -71,28 +73,29 @@ public class GqlvMemberHidden { private boolean hidden( final DataFetchingEnvironment dataFetchingEnvironment) { - val objectMember = holder.getObjectMember(); + // TODO: introduce Evaluator + val sourcePojo = BookmarkedPojo.sourceFrom(dataFetchingEnvironment); val sourcePojoClass = sourcePojo.getClass(); - val specificationLoader = holder.getObjectMember().getSpecificationLoader(); - val objectSpecification = specificationLoader.loadSpecification(sourcePojoClass); + val objectSpecification = context.specificationLoader.loadSpecification(sourcePojoClass); if (objectSpecification == null) { // not expected return true; } + val objectMember = holder.getObjectMember(); val managedObject = ManagedObject.adaptSingular(objectSpecification, sourcePojo); val visibleConsent = objectMember.isVisible(managedObject, InteractionInitiatedBy.USER, Where.ANYWHERE); return visibleConsent.isVetoed(); } - public interface Holder extends GqlvHolder { - - ObjectSpecification getObjectSpecification(); + public interface Holder<T extends ObjectMember> + extends GqlvHolder, + ObjectSpecificationProvider, + ObjectMemberProvider<T> { - ObjectMember getObjectMember(); } } diff --git a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java index 9ac47e791a..499b19d190 100644 --- a/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java +++ b/incubator/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/GqlvProperty.java @@ -32,16 +32,16 @@ import static graphql.schema.GraphQLObjectType.newObject; public class GqlvProperty extends GqlvAssociation<OneToOneAssociation, GqlvProperty.Holder> - implements GqlvMemberHidden.Holder, - GqlvMemberDisabled.Holder, - GqlvPropertyGet.Holder, - GqlvPropertySet.Holder, - GqlvPropertyValidate.Holder { + implements GqlvMemberHidden.Holder<OneToOneAssociation>, + GqlvMemberDisabled.Holder<OneToOneAssociation>, + GqlvPropertyGet.Holder, + GqlvPropertySet.Holder, + GqlvPropertyValidate.Holder { private final GraphQLObjectType.Builder gqlObjectTypeBuilder; private final GraphQLObjectType gqlObjectType; - private final GqlvMemberHidden hidden; - private final GqlvMemberDisabled disabled; + private final GqlvMemberHidden<OneToOneAssociation> hidden; + private final GqlvMemberDisabled<OneToOneAssociation> disabled; private final GqlvPropertyGet get; private final GqlvPropertySet set; private final GqlvPropertyValidate validate; @@ -55,7 +55,7 @@ public class GqlvProperty this.gqlObjectTypeBuilder = newObject().name(TypeNames.propertyTypeNameFor(this.holder.getObjectSpecification(), oneToOneAssociation)); this.hidden = new GqlvMemberHidden(this, context); - this.disabled = new GqlvMemberDisabled(this, context); + this.disabled = new GqlvMemberDisabled<>(this, context); this.get = new GqlvPropertyGet(this, context); this.set = new GqlvPropertySet(this, context); this.validate = new GqlvPropertyValidate(this, context); @@ -123,7 +123,7 @@ public class GqlvProperty } - public interface Holder extends GqlvAssociation.Holder { - + public interface Holder + extends GqlvAssociation.Holder { } }
