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 73e4367d0135e812100b1714966dce718594dd19 Author: danhaywood <[email protected]> AuthorDate: Thu Feb 22 21:17:12 2024 +0000 CAUSEWAY-3676: working towards simplifying Holder interfaces --- .../model/domain/rich/query/GqlvAction.java | 17 +++++----- .../model/domain/rich/query/GqlvActionInvoke.java | 29 +++------------- .../domain/rich/query/GqlvActionInvokeArgs.java | 19 ++--------- .../domain/rich/query/GqlvActionInvokeArgsArg.java | 21 ++---------- .../domain/rich/query/GqlvActionInvokeResult.java | 31 ++--------------- .../model/domain/rich/query/GqlvActionParams.java | 25 ++------------ .../domain/rich/query/GqlvActionParamsParam.java | 39 ++++++---------------- .../query/GqlvActionParamsParamAutoComplete.java | 31 ++--------------- .../rich/query/GqlvActionParamsParamChoices.java | 31 ++--------------- .../rich/query/GqlvActionParamsParamDatatype.java | 12 ++----- .../rich/query/GqlvActionParamsParamDefault.java | 32 ++---------------- .../rich/query/GqlvActionParamsParamDisabled.java | 26 ++------------- .../rich/query/GqlvActionParamsParamHidden.java | 28 ++-------------- .../rich/query/GqlvActionParamsParamValidate.java | 25 ++------------ .../domain/rich/query/GqlvActionValidity.java | 19 ++--------- .../domain/rich/query/GqlvAssociationDatatype.java | 12 ++----- .../domain/rich/query/GqlvAssociationGet.java | 15 ++------- .../model/domain/rich/query/GqlvCollection.java | 12 +++---- .../domain/rich/query/GqlvCollectionDatatype.java | 2 +- .../model/domain/rich/query/GqlvCollectionGet.java | 5 ++- .../domain/rich/query/GqlvMemberDisabled.java | 12 ++----- .../model/domain/rich/query/GqlvMemberHidden.java | 12 ++----- .../model/domain/rich/query/GqlvMemberHolder.java | 12 +++++++ .../model/domain/rich/query/GqlvProperty.java | 25 +++++++------- .../rich/query/GqlvPropertyAutoComplete.java | 13 ++------ .../domain/rich/query/GqlvPropertyChoices.java | 16 ++------- .../domain/rich/query/GqlvPropertyDatatype.java | 2 +- .../model/domain/rich/query/GqlvPropertyGet.java | 12 ++----- .../domain/rich/query/GqlvPropertyGetBlob.java | 15 ++------- .../rich/query/GqlvPropertyGetBlobAbstract.java | 10 ++---- .../rich/query/GqlvPropertyGetBlobBytes.java | 2 +- .../rich/query/GqlvPropertyGetBlobMimeType.java | 2 +- .../domain/rich/query/GqlvPropertyGetBlobName.java | 2 +- .../domain/rich/query/GqlvPropertyGetClob.java | 15 ++------- .../rich/query/GqlvPropertyGetClobAbstract.java | 10 ++---- .../rich/query/GqlvPropertyGetClobChars.java | 2 +- .../rich/query/GqlvPropertyGetClobMimeType.java | 2 +- .../domain/rich/query/GqlvPropertyGetClobName.java | 2 +- .../model/domain/rich/query/GqlvPropertySet.java | 16 ++------- .../domain/rich/query/GqlvPropertyValidate.java | 16 ++------- .../domain/rich/query/HolderActionInvoke.java | 31 +++++++++++++++++ .../domain/rich/query/HolderActionInvokeArgs.java | 21 ++++++++++++ .../rich/query/HolderActionInvokeArgsArg.java | 21 ++++++++++++ .../rich/query/HolderActionInvokeResult.java | 30 +++++++++++++++++ .../domain/rich/query/HolderActionParams.java | 30 +++++++++++++++++ .../domain/rich/query/HolderActionParamsParam.java | 30 +++++++++++++++++ .../query/HolderActionParamsParamAutoComplete.java | 33 ++++++++++++++++++ .../rich/query/HolderActionParamsParamChoices.java | 33 ++++++++++++++++++ .../query/HolderActionParamsParamDatatype.java | 9 +++++ .../rich/query/HolderActionParamsParamDefault.java | 34 +++++++++++++++++++ .../query/HolderActionParamsParamDisabled.java | 29 ++++++++++++++++ .../rich/query/HolderActionParamsParamHidden.java | 32 ++++++++++++++++++ .../query/HolderActionParamsParamValidate.java | 28 ++++++++++++++++ .../domain/rich/query/HolderActionValidity.java | 21 ++++++++++++ .../rich/query/HolderAssociationDatatype.java | 10 ++++++ .../domain/rich/query/HolderAssociationGet.java | 13 ++++++++ .../domain/rich/query/HolderGetPropertyBlob.java | 13 ++++++++ .../rich/query/HolderPropertyAutoComplete.java | 12 +++++++ .../domain/rich/query/HolderPropertyChoices.java | 17 ++++++++++ .../model/domain/rich/query/HolderPropertyGet.java | 12 +++++++ .../rich/query/HolderPropertyGetBlobAbstract.java | 8 +++++ .../domain/rich/query/HolderPropertyGetClob.java | 13 ++++++++ .../rich/query/HolderPropertyGetClobAbstract.java | 8 +++++ .../model/domain/rich/query/HolderPropertySet.java | 17 ++++++++++ .../domain/rich/query/HolderPropertyValidate.java | 17 ++++++++++ 65 files changed, 638 insertions(+), 513 deletions(-) diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAction.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAction.java index fa17c210d1..2c45239fb3 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAction.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAction.java @@ -40,7 +40,6 @@ import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.Parent; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; -import org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder; import org.apache.causeway.viewer.graphql.model.domain.common.query.GvqlActionUtils; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; @@ -50,13 +49,13 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvAction - extends GqlvMember<ObjectAction, GqlvMemberHolder> - implements GqlvMemberHidden.Holder<ObjectAction>, - GqlvMemberDisabled.Holder<ObjectAction>, - GqlvActionInvoke.Holder, - GqlvActionValidity.Holder, - GqlvActionParams.Holder, - Parent { + extends GqlvMember<ObjectAction, org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder> + implements + GqlvMemberHolder<ObjectAction>, + HolderActionInvoke, + HolderActionValidity, + HolderActionParams, + Parent, org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider, org.apache.causeway.viewer.graphql.model.mmproviders.ObjectMemberProvider<ObjectAction>, org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider { private final GqlvMemberHidden<ObjectAction> hidden; private final GqlvMemberDisabled<ObjectAction> disabled; @@ -71,7 +70,7 @@ public class GqlvAction private final GqlvActionParams params; public GqlvAction( - final GqlvMemberHolder holder, + final org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder holder, final ObjectAction objectAction, final Context context) { super(holder, objectAction, TypeNames.actionTypeNameFor(holder.getObjectSpecification(), objectAction, holder.getSchemaType()), context); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvoke.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvoke.java index 945beb038e..832501fef3 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvoke.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvoke.java @@ -34,9 +34,6 @@ import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstractCustom; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -45,15 +42,15 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionInvoke extends GqlvAbstractCustom - implements GqlvActionInvokeResult.Holder, - GqlvActionInvokeArgs.Holder { + implements HolderActionInvokeResult, + HolderActionInvokeArgs { - private final Holder holder; + private final HolderActionInvoke holder; private final GqlvActionInvokeResult result; private final GqlvActionInvokeArgs args; public GqlvActionInvoke( - final Holder holder, + final HolderActionInvoke holder, final Context context) { super(TypeNames.actionInvokeTypeNameFor(holder.getObjectSpecification(), holder.getObjectAction(), holder.getSchemaType()), context); @@ -141,24 +138,6 @@ public class GqlvActionInvoke return holder.getObjectSpecification(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - void addGqlArguments( - final ObjectAction objectAction, - final GraphQLFieldDefinition.Builder fieldBuilder, - final TypeMapper.InputContext inputContext, - final int parameterCount); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment dataFetchingEnvironment, - ObjectAction objectAction, - BookmarkService bookmarkService); - - } - @Override public SchemaType getSchemaType() { return holder.getSchemaType(); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgs.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgs.java index a940663212..566ede3835 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgs.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgs.java @@ -35,9 +35,6 @@ import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstractCustom; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.Getter; import lombok.val; @@ -46,14 +43,14 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionInvokeArgs extends GqlvAbstractCustom - implements GqlvActionInvokeArgsArg.Holder { + implements HolderActionInvokeArgsArg { - @Getter private final Holder holder; + @Getter private final HolderActionInvokeArgs holder; private final List<GqlvActionInvokeArgsArg> args = new ArrayList<>(); public GqlvActionInvokeArgs( - final Holder holder, + final HolderActionInvokeArgs holder, final Context context) { super(TypeNames.actionArgsTypeNameFor(holder.getObjectSpecification(), holder.getObjectAction(), holder.getSchemaType()), context); this.holder = holder; @@ -110,14 +107,4 @@ public class GqlvActionInvokeArgs return holder.getSchemaType(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - Can<ManagedObject> argumentManagedObjectsFor( - Environment dataFetchingEnvironment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgsArg.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgsArg.java index 7436d2f608..66bd91e902 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgsArg.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeArgsArg.java @@ -23,18 +23,11 @@ import graphql.schema.GraphQLList; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; -import org.apache.causeway.applib.services.bookmark.BookmarkService; -import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.core.metamodel.spec.feature.ObjectActionParameter; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; -import org.apache.causeway.viewer.graphql.model.domain.SchemaType; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.Getter; import lombok.val; @@ -44,12 +37,12 @@ import lombok.extern.log4j.Log4j2; public class GqlvActionInvokeArgsArg extends GqlvAbstract { - @Getter private final Holder holder; + @Getter private final HolderActionInvokeArgsArg holder; @Getter private final ObjectActionParameter objectActionParameter; @Getter private final int paramNum; public GqlvActionInvokeArgsArg( - final Holder holder, + final HolderActionInvokeArgsArg holder, final ObjectActionParameter objectActionParameter, final Context context, final int paramNum) { @@ -85,14 +78,4 @@ public class GqlvActionInvokeArgsArg } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - Can<ManagedObject> argumentManagedObjectsFor( - Environment dataFetchingEnvironment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeResult.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeResult.java index dc2963fb12..fdac25c5c1 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeResult.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionInvokeResult.java @@ -19,7 +19,6 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLList; import graphql.schema.GraphQLOutputType; import graphql.schema.GraphQLType; @@ -29,15 +28,9 @@ import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; -import org.apache.causeway.viewer.graphql.model.domain.SchemaType; - -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; - import org.springframework.lang.Nullable; import org.apache.causeway.applib.annotation.Where; -import org.apache.causeway.applib.services.bookmark.BookmarkService; -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; @@ -46,9 +39,6 @@ import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.exceptions.DisabledException; import org.apache.causeway.viewer.graphql.model.exceptions.HiddenException; 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 org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; import lombok.extern.log4j.Log4j2; @@ -56,10 +46,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionInvokeResult extends GqlvAbstract { - private final GqlvActionInvokeResult.Holder holder; + private final HolderActionInvokeResult holder; public GqlvActionInvokeResult( - final GqlvActionInvokeResult.Holder holder, + final HolderActionInvokeResult holder, final Context context) { super(context); @@ -147,21 +137,4 @@ public class GqlvActionInvokeResult extends GqlvAbstract { } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - void addGqlArguments( - final ObjectAction objectAction, - final GraphQLFieldDefinition.Builder fieldBuilder, - final TypeMapper.InputContext inputContext, - final int parameterCount); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment dataFetchingEnvironment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } - } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParams.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParams.java index f3b4c79eba..e058e28184 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParams.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParams.java @@ -36,9 +36,6 @@ import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstractCustom; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.Getter; @@ -48,14 +45,14 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionParams extends GqlvAbstractCustom - implements GqlvActionParamsParam.Holder { + implements HolderActionParamsParam { - @Getter private final Holder holder; + @Getter private final HolderActionParams holder; private final List<GqlvActionParamsParam> params = new ArrayList<>(); public GqlvActionParams( - final Holder holder, + final HolderActionParams holder, final Context context) { super(TypeNames.actionParamsTypeNameFor(holder.getObjectSpecification(), holder.getObjectAction(), holder.getSchemaType()), context); this.holder = holder; @@ -120,20 +117,4 @@ public class GqlvActionParams return holder.getSchemaType(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment dataFetchingEnvironment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParam.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParam.java index 33249873cf..7581e0f62a 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParam.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParam.java @@ -33,9 +33,6 @@ import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstractCustom; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.Getter; @@ -44,15 +41,15 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionParamsParam extends GqlvAbstractCustom - implements GqlvActionParamsParamHidden.Holder, - GqlvActionParamsParamDisabled.Holder, - GqlvActionParamsParamChoices.Holder, - GqlvActionParamsParamAutoComplete.Holder, - GqlvActionParamsParamDefault.Holder, - GqlvActionParamsParamValidate.Holder, - GqlvActionParamsParamDatatype.Holder { - - @Getter private final Holder holder; + implements HolderActionParamsParamHidden, + HolderActionParamsParamDisabled, + HolderActionParamsParamChoices, + HolderActionParamsParamAutoComplete, + HolderActionParamsParamDefault, + HolderActionParamsParamValidate, + HolderActionParamsParamDatatype { + + @Getter private final HolderActionParamsParam holder; @Getter private final ObjectActionParameter objectActionParameter; @Getter private final int paramNum; @@ -74,7 +71,7 @@ public class GqlvActionParamsParam private final GqlvActionParamsParamDatatype datatype; public GqlvActionParamsParam( - final Holder holder, + final HolderActionParamsParam holder, final ObjectActionParameter oap, final Context context, final int paramNum) { @@ -182,20 +179,4 @@ public class GqlvActionParamsParam return holder.getSchemaType(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment dataFetchingEnvironment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamAutoComplete.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamAutoComplete.java index e48569dbbd..a38c7c7ea7 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamAutoComplete.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamAutoComplete.java @@ -24,29 +24,20 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import graphql.schema.DataFetchingEnvironment; import graphql.schema.GraphQLArgument; - import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLList; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import static graphql.schema.GraphQLNonNull.nonNull; import org.apache.causeway.applib.annotation.Where; - import org.apache.causeway.applib.services.bookmark.BookmarkService; - import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.interactions.managed.ManagedAction; import org.apache.causeway.core.metamodel.interactions.managed.ParameterNegotiationModel; import org.apache.causeway.core.metamodel.object.ManagedObject; - import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; - import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -57,10 +48,10 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; private static final String SEARCH_PARAM_NAME = "search"; - private final Holder holder; + private final HolderActionParamsParamAutoComplete holder; public GqlvActionParamsParamAutoComplete( - final Holder holder, + final HolderActionParamsParamAutoComplete holder, final Context context) { super(context); this.holder = holder; @@ -107,22 +98,4 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; .collect(Collectors.toList()); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - ObjectActionParameterProvider, - SchemaTypeProvider { - GqlvActionParamsParam.Holder getHolder(); - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment environment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamChoices.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamChoices.java index aa160e47f4..ff1a5b5c4d 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamChoices.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamChoices.java @@ -23,28 +23,19 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import java.util.stream.Collectors; import graphql.schema.DataFetchingEnvironment; - import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLList; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.applib.annotation.Where; - import org.apache.causeway.applib.services.bookmark.BookmarkService; - import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.interactions.managed.ManagedAction; import org.apache.causeway.core.metamodel.interactions.managed.ParameterNegotiationModel; import org.apache.causeway.core.metamodel.object.ManagedObject; - import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; - import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -53,10 +44,10 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; @Log4j2 public class GqlvActionParamsParamChoices extends GqlvAbstract { - private final Holder holder; + private final HolderActionParamsParamChoices holder; public GqlvActionParamsParamChoices( - final Holder holder, + final HolderActionParamsParamChoices holder, final Context context) { super(context); this.holder = holder; @@ -98,22 +89,4 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; .collect(Collectors.toList()); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - ObjectActionParameterProvider, - SchemaTypeProvider { - GqlvActionParamsParam.Holder getHolder(); - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment environment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDatatype.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDatatype.java index 8c0c25eb36..52e74b7565 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDatatype.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDatatype.java @@ -25,19 +25,16 @@ import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; -import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; public class GqlvActionParamsParamDatatype extends GqlvAbstract { - private final Holder holder; + private final HolderActionParamsParamDatatype holder; public GqlvActionParamsParamDatatype( - final Holder holder, + final HolderActionParamsParamDatatype holder, final Context context) { super(context); this.holder = holder; @@ -54,9 +51,4 @@ public class GqlvActionParamsParamDatatype extends GqlvAbstract { return TypeNames.objectTypeNameFor(returnType, holder.getSchemaType()); } - public interface Holder - extends ObjectActionParameterProvider, - SchemaTypeProvider { - } - } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDefault.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDefault.java index d2a3ab2190..281b9e6070 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDefault.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDefault.java @@ -21,26 +21,17 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import java.util.Collections; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.applib.annotation.Where; -import org.apache.causeway.applib.services.bookmark.BookmarkService; -import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.interactions.managed.ManagedAction; import org.apache.causeway.core.metamodel.interactions.managed.ParameterNegotiationModel; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; -import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -48,10 +39,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionParamsParamDefault extends GqlvAbstract { - private final Holder holder; + private final HolderActionParamsParamDefault holder; public GqlvActionParamsParamDefault( - final Holder holder, + final HolderActionParamsParamDefault holder, final Context context) { super(context); this.holder = holder; @@ -85,23 +76,4 @@ public class GqlvActionParamsParamDefault extends GqlvAbstract { return defaultManagedObject.getPojo(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - ObjectActionParameterProvider, - SchemaTypeProvider { - - GqlvActionParamsParam.Holder getHolder(); - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment environment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDisabled.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDisabled.java index a2491b5675..fc3eccdeac 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDisabled.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamDisabled.java @@ -19,23 +19,16 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLOutputType; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; -import org.apache.causeway.applib.services.bookmark.BookmarkService; -import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -45,10 +38,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionParamsParamDisabled extends GqlvAbstract { - private final Holder holder; + private final HolderActionParamsParamDisabled holder; public GqlvActionParamsParamDisabled( - final Holder holder, + final HolderActionParamsParamDisabled holder, final Context context) { super(context); this.holder = holder; @@ -80,19 +73,4 @@ public class GqlvActionParamsParamDisabled extends GqlvAbstract { return usable.isVetoed() ? usable.getReasonAsString().orElse("Disabled") : null; } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - ObjectActionParameterProvider { - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int i); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment environment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamHidden.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamHidden.java index 6acbe524c3..5219ef309a 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamHidden.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamHidden.java @@ -23,19 +23,12 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; - import org.apache.causeway.applib.services.bookmark.BookmarkService; - import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.object.ManagedObject; - import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; - import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -44,10 +37,10 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; @Log4j2 public class GqlvActionParamsParamHidden extends GqlvAbstract { - private final Holder holder; + private final HolderActionParamsParamHidden holder; public GqlvActionParamsParamHidden( - final Holder holder, + final HolderActionParamsParamHidden holder, final Context context) { super(context); this.holder = holder; @@ -83,21 +76,4 @@ public class GqlvActionParamsParamHidden extends GqlvAbstract { return visible.isVetoed(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - ObjectActionParameterProvider, - SchemaTypeProvider { - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment environment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamValidate.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamValidate.java index a8751c00fc..b407de6742 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamValidate.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionParamsParamValidate.java @@ -19,24 +19,16 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLOutputType; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; -import org.apache.causeway.applib.services.bookmark.BookmarkService; -import org.apache.causeway.commons.collections.Can; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.Environment; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -45,10 +37,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionParamsParamValidate extends GqlvAbstract { - private final Holder holder; + private final HolderActionParamsParamValidate holder; public GqlvActionParamsParamValidate( - final Holder holder, + final HolderActionParamsParamValidate holder, final Context context) { super(context); this.holder = holder; @@ -83,17 +75,4 @@ public class GqlvActionParamsParamValidate extends GqlvAbstract { return usable.isVetoed() ? usable.getReasonAsString().orElse("Invalid") : null; } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - ObjectActionParameterProvider, - SchemaTypeProvider { - - void addGqlArgument(ObjectAction objectAction, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext, int paramNum); - - Can<ManagedObject> argumentManagedObjectsFor( - Environment environment, - ObjectAction objectAction, - BookmarkService bookmarkService); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionValidity.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionValidity.java index 4b1e679e29..b9d9897429 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionValidity.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvActionValidity.java @@ -21,7 +21,6 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import java.util.Map; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLOutputType; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; @@ -35,9 +34,6 @@ import org.apache.causeway.core.metamodel.spec.feature.ObjectActionParameter; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; @@ -46,10 +42,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvActionValidity extends GqlvAbstract { - private final Holder holder; + private final HolderActionValidity holder; public GqlvActionValidity( - final Holder holder, + final HolderActionValidity holder, final Context context ) { super(context); @@ -96,15 +92,4 @@ public class GqlvActionValidity extends GqlvAbstract { return consent.isVetoed() ? consent.getReasonAsString().orElse("Invalid") : null; } - public interface Holder - extends ObjectSpecificationProvider, - ObjectActionProvider, - SchemaTypeProvider { - - void addGqlArguments( - ObjectAction objectAction, - GraphQLFieldDefinition.Builder fieldBuilder, - TypeMapper.InputContext inputContext, - int parameterCount); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationDatatype.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationDatatype.java index 34cea21891..344b40e83f 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationDatatype.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationDatatype.java @@ -26,19 +26,16 @@ import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.core.metamodel.spec.feature.ObjectAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; -import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; public abstract class GqlvAssociationDatatype<T extends ObjectAssociation> extends GqlvAbstract { - private final Holder<T> holder; + private final HolderAssociationDatatype<T> holder; public GqlvAssociationDatatype( - final Holder<T> holder, + final HolderAssociationDatatype<T> holder, final Context context) { super(context); this.holder = holder; @@ -55,9 +52,4 @@ public abstract class GqlvAssociationDatatype<T extends ObjectAssociation> exten return TypeNames.objectTypeNameFor(returnType, holder.getSchemaType()); } - public interface Holder<T extends ObjectAssociation> - extends ObjectAssociationProvider<T>, - SchemaTypeProvider { - } - } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationGet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationGet.java index bccf42ba64..1358463be1 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationGet.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvAssociationGet.java @@ -28,18 +28,15 @@ import org.apache.causeway.core.metamodel.spec.feature.ObjectAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; public abstract class GqlvAssociationGet<T extends ObjectAssociation> extends GqlvAbstract { - final Holder<T> holder; + final HolderAssociationGet<T> holder; public GqlvAssociationGet( - final Holder<T> holder, + final HolderAssociationGet<T> holder, final Context context) { super(context); this.holder = holder; @@ -55,7 +52,7 @@ public abstract class GqlvAssociationGet<T extends ObjectAssociation> extends Gq } } - abstract GraphQLOutputType outputTypeFor(Holder<T> holder); + abstract GraphQLOutputType outputTypeFor(HolderAssociationGet<T> holder); @Override protected Object fetchData(final DataFetchingEnvironment environment) { @@ -79,10 +76,4 @@ public abstract class GqlvAssociationGet<T extends ObjectAssociation> extends Gq : null; } - public interface Holder<T extends ObjectAssociation> - extends ObjectSpecificationProvider, - ObjectAssociationProvider<T>, - SchemaTypeProvider { - - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollection.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollection.java index e81e672685..d29ddd8bb9 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollection.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollection.java @@ -23,14 +23,12 @@ import org.apache.causeway.core.metamodel.spec.feature.OneToManyAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; -import org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder; public class GqlvCollection - extends GqlvAssociation<OneToManyAssociation, GqlvMemberHolder> - implements GqlvAssociationGet.Holder<OneToManyAssociation>, - GqlvMemberHidden.Holder<OneToManyAssociation>, - GqlvMemberDisabled.Holder<OneToManyAssociation>, - GqlvAssociationDatatype.Holder<OneToManyAssociation> { + extends GqlvAssociation<OneToManyAssociation, org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder> + implements HolderAssociationGet<OneToManyAssociation>, + GqlvMemberHolder<OneToManyAssociation>, + HolderAssociationDatatype<OneToManyAssociation>, org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider, org.apache.causeway.viewer.graphql.model.mmproviders.ObjectMemberProvider<OneToManyAssociation>, org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider { private final GqlvMemberHidden<OneToManyAssociation> hidden; private final GqlvMemberDisabled<OneToManyAssociation> disabled; @@ -38,7 +36,7 @@ public class GqlvCollection private final GqlvCollectionDatatype datatype; public GqlvCollection( - final GqlvMemberHolder holder, + final org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder holder, final OneToManyAssociation otma, final Context context ) { diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionDatatype.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionDatatype.java index 0766f75753..e2026f17ad 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionDatatype.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionDatatype.java @@ -24,7 +24,7 @@ import org.apache.causeway.viewer.graphql.model.context.Context; public class GqlvCollectionDatatype extends GqlvAssociationDatatype<OneToManyAssociation> { public GqlvCollectionDatatype( - final Holder<OneToManyAssociation> holder, + final HolderAssociationDatatype<OneToManyAssociation> holder, final Context context) { super(holder, context); } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionGet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionGet.java index c830879ff6..5014a0e04c 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionGet.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvCollectionGet.java @@ -22,20 +22,19 @@ import graphql.schema.GraphQLOutputType; import org.apache.causeway.core.metamodel.spec.feature.OneToManyAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; -import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import lombok.val; public class GqlvCollectionGet extends GqlvAssociationGet<OneToManyAssociation> { public GqlvCollectionGet( - final Holder holder, + final HolderAssociationGet holder, final Context context) { super(holder, context); } @Override - GraphQLOutputType outputTypeFor(GqlvAssociationGet.Holder<OneToManyAssociation> holder) { + GraphQLOutputType outputTypeFor(HolderAssociationGet<OneToManyAssociation> holder) { val oneToManyAssociation = holder.getObjectAssociation(); return context.typeMapper.listTypeForElementTypeOf(oneToManyAssociation, holder.getSchemaType()); } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberDisabled.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberDisabled.java index 4349236ac9..f1c635b3e7 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberDisabled.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberDisabled.java @@ -30,9 +30,6 @@ import org.apache.causeway.core.metamodel.spec.feature.ObjectMember; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; import lombok.extern.log4j.Log4j2; @@ -40,10 +37,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvMemberDisabled<T extends ObjectMember> extends GqlvAbstract { - private final Holder<T> holder; + private final GqlvMemberHolder<T> holder; public GqlvMemberDisabled( - final Holder<T> holder, + final GqlvMemberHolder<T> holder, final Context context ) { super(context); @@ -73,9 +70,4 @@ public class GqlvMemberDisabled<T extends ObjectMember> extends GqlvAbstract { return usable.getReasonAsString().orElse(null); } - public interface Holder<T extends ObjectMember> - extends ObjectSpecificationProvider, - ObjectMemberProvider<T>, - SchemaTypeProvider { - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHidden.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHidden.java index 0ab6f72d8c..3d6038a253 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHidden.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHidden.java @@ -30,9 +30,6 @@ import org.apache.causeway.core.metamodel.spec.feature.ObjectMember; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; import lombok.extern.log4j.Log4j2; @@ -40,10 +37,10 @@ import lombok.extern.log4j.Log4j2; @Log4j2 public class GqlvMemberHidden<T extends ObjectMember> extends GqlvAbstract { - private final Holder<T> holder; + private final GqlvMemberHolder<T> holder; public GqlvMemberHidden( - final Holder<T> holder, + final GqlvMemberHolder<T> holder, final Context context ) { super(context); @@ -74,9 +71,4 @@ public class GqlvMemberHidden<T extends ObjectMember> extends GqlvAbstract { return visibleConsent.isVetoed(); } - public interface Holder<T extends ObjectMember> - extends ObjectSpecificationProvider, - ObjectMemberProvider<T>, - SchemaTypeProvider { - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHolder.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHolder.java new file mode 100644 index 0000000000..7509a78cd9 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvMemberHolder.java @@ -0,0 +1,12 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.core.metamodel.spec.feature.ObjectMember; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectMemberProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface GqlvMemberHolder<T extends ObjectMember> + extends ObjectSpecificationProvider, + ObjectMemberProvider<T>, + SchemaTypeProvider { +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvProperty.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvProperty.java index 5c58a785f5..6d8abc2849 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvProperty.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvProperty.java @@ -29,23 +29,22 @@ import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; -import org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; public class GqlvProperty - extends GqlvAssociation<OneToOneAssociation, GqlvMemberHolder> - implements GqlvMemberHidden.Holder<OneToOneAssociation>, - GqlvMemberDisabled.Holder<OneToOneAssociation>, - GqlvPropertyGet.Holder, - GqlvPropertyChoices.Holder, - GqlvPropertyAutoComplete.Holder, - GqlvPropertyValidate.Holder, - GqlvPropertySet.Holder, - GqlvAssociationDatatype.Holder<OneToOneAssociation>, - GqlvPropertyGetBlob.Holder, - GqlvPropertyGetClob.Holder { + extends GqlvAssociation<OneToOneAssociation, org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder> + implements + GqlvMemberHolder<OneToOneAssociation>, + HolderPropertyGet, + HolderPropertyChoices, + HolderPropertyAutoComplete, + HolderPropertyValidate, + HolderPropertySet, + HolderAssociationDatatype<OneToOneAssociation>, + HolderGetPropertyBlob, + HolderPropertyGetClob, org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider, org.apache.causeway.viewer.graphql.model.mmproviders.ObjectMemberProvider<OneToOneAssociation>, org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider { private final GqlvMemberHidden<OneToOneAssociation> hidden; private final GqlvMemberDisabled<OneToOneAssociation> disabled; @@ -67,7 +66,7 @@ public class GqlvProperty private final GqlvPropertyDatatype datatype; public GqlvProperty( - final GqlvMemberHolder holder, + final org.apache.causeway.viewer.graphql.model.domain.common.query.GqlvMemberHolder holder, final OneToOneAssociation otoa, final Context context) { super(holder, otoa, TypeNames.propertyTypeNameFor(holder.getObjectSpecification(), otoa, holder.getSchemaType()), context); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyAutoComplete.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyAutoComplete.java index fcd9efb6d7..8bcf2b19a6 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyAutoComplete.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyAutoComplete.java @@ -33,9 +33,6 @@ import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; @@ -43,10 +40,10 @@ public class GqlvPropertyAutoComplete extends GqlvAbstract { private static final String SEARCH_PARAM_NAME = "search"; - private final Holder holder; + private final HolderPropertyAutoComplete holder; public GqlvPropertyAutoComplete( - final Holder holder, + final HolderPropertyAutoComplete holder, final Context context) { super(context); this.holder = holder; @@ -88,10 +85,4 @@ public class GqlvPropertyAutoComplete extends GqlvAbstract { .collect(Collectors.toList()); } - public interface Holder - extends ObjectSpecificationProvider, - OneToOneAssociationProvider, - SchemaTypeProvider { - - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyChoices.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyChoices.java index 05263d1b92..fd7173aff6 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyChoices.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyChoices.java @@ -21,31 +21,26 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import java.util.stream.Collectors; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLList; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; public class GqlvPropertyChoices extends GqlvAbstract { - final Holder holder; + final HolderPropertyChoices holder; public GqlvPropertyChoices( - final Holder holder, + final HolderPropertyChoices holder, final Context context) { super(context); this.holder = holder; @@ -82,11 +77,4 @@ public class GqlvPropertyChoices extends GqlvAbstract { .collect(Collectors.toList()); } - public interface Holder - extends ObjectSpecificationProvider, - OneToOneAssociationProvider, - SchemaTypeProvider { - - void addGqlArgument(OneToOneAssociation otoa, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyDatatype.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyDatatype.java index 2dca4546ff..51da87feb0 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyDatatype.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyDatatype.java @@ -24,7 +24,7 @@ import org.apache.causeway.viewer.graphql.model.context.Context; public class GqlvPropertyDatatype extends GqlvAssociationDatatype<OneToOneAssociation> { public GqlvPropertyDatatype( - final Holder<OneToOneAssociation> holder, + final HolderAssociationDatatype<OneToOneAssociation> holder, final Context context) { super(holder, context); } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGet.java index 028602ca94..071f8b3241 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGet.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGet.java @@ -22,29 +22,21 @@ import graphql.schema.GraphQLOutputType; import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; public class GqlvPropertyGet extends GqlvAssociationGet<OneToOneAssociation> { public GqlvPropertyGet( - final Holder holder, + final HolderPropertyGet holder, final Context context) { super(holder, context); } @Override - GraphQLOutputType outputTypeFor(GqlvAssociationGet.Holder<OneToOneAssociation> holder) { + GraphQLOutputType outputTypeFor(HolderAssociationGet<OneToOneAssociation> holder) { val oneToOneAssociation = holder.getObjectAssociation(); return context.typeMapper.outputTypeFor(oneToOneAssociation, holder.getSchemaType()); } - public interface Holder - extends GqlvAssociationGet.Holder<OneToOneAssociation>, - SchemaTypeProvider { - - @Override - OneToOneAssociation getObjectAssociation(); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlob.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlob.java index 3bb63dde91..6f93b933af 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlob.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlob.java @@ -30,16 +30,13 @@ import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstractCustom; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; public class GqlvPropertyGetBlob extends GqlvAbstractCustom - implements GqlvPropertyGetBlobBytes.Holder + implements HolderPropertyGetBlobAbstract { - final Holder holder; + final HolderGetPropertyBlob holder; final GqlvPropertyGetBlobBytes blobName; final GqlvPropertyGetBlobMimeType blobMimeType; final GqlvPropertyGetBlobName blobBytes; @@ -47,7 +44,7 @@ public class GqlvPropertyGetBlob private final CausewayConfiguration.Viewer.Graphql graphqlConfiguration; public GqlvPropertyGetBlob( - final Holder holder, + final HolderGetPropertyBlob holder, final Context context) { super(TypeNames.propertyBlobTypeNameFor(holder.getObjectSpecification(), holder.getObjectMember(), holder.getSchemaType()), context); this.holder = holder; @@ -113,10 +110,4 @@ public class GqlvPropertyGetBlob return holder.getSchemaType(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectAssociationProvider<OneToOneAssociation>, - SchemaTypeProvider { - - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobAbstract.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobAbstract.java index 96be1c52cd..36e89b2e47 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobAbstract.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobAbstract.java @@ -30,16 +30,15 @@ import org.apache.causeway.core.metamodel.object.ManagedObject; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; public abstract class GqlvPropertyGetBlobAbstract extends GqlvAbstract { - final Holder holder; + final HolderPropertyGetBlobAbstract holder; public GqlvPropertyGetBlobAbstract( - final Holder holder, + final HolderPropertyGetBlobAbstract holder, final Context context, String name) { super(context); this.holder = holder; @@ -72,9 +71,4 @@ public abstract class GqlvPropertyGetBlobAbstract extends GqlvAbstract { .orElse(null); } - public interface Holder - extends GqlvPropertyGet.Holder, - SchemaTypeProvider { - } - } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobBytes.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobBytes.java index 96f95fc36c..9abca86912 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobBytes.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobBytes.java @@ -30,7 +30,7 @@ public class GqlvPropertyGetBlobBytes extends GqlvPropertyGetBlobAbstract { private final String graphqlPath; public GqlvPropertyGetBlobBytes( - final Holder holder, + final HolderPropertyGetBlobAbstract holder, final Context context) { super(holder, context, "bytes"); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobMimeType.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobMimeType.java index f612f7ea00..c9f54aeec3 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobMimeType.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobMimeType.java @@ -25,7 +25,7 @@ import org.apache.causeway.viewer.graphql.model.context.Context; public class GqlvPropertyGetBlobMimeType extends GqlvPropertyGetBlobAbstract { public GqlvPropertyGetBlobMimeType( - final Holder holder, + final HolderPropertyGetBlobAbstract holder, final Context context) { super(holder, context, "mimeType"); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobName.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobName.java index ee3c3b1745..9fe755af79 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobName.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetBlobName.java @@ -26,7 +26,7 @@ import org.apache.causeway.viewer.graphql.model.context.Context; public class GqlvPropertyGetBlobName extends GqlvPropertyGetBlobAbstract { public GqlvPropertyGetBlobName( - final Holder holder, + final HolderPropertyGetBlobAbstract holder, final Context context) { super(holder, context, "name"); } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClob.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClob.java index 518fec9c83..20cc95703d 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClob.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClob.java @@ -30,16 +30,13 @@ import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstractCustom; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; import org.apache.causeway.viewer.graphql.model.domain.TypeNames; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; public class GqlvPropertyGetClob extends GqlvAbstractCustom - implements GqlvPropertyGetClobChars.Holder + implements HolderPropertyGetClobAbstract { - final Holder holder; + final HolderPropertyGetClob holder; final GqlvPropertyGetClobName clobName; final GqlvPropertyGetClobMimeType clobMimeType; final GqlvPropertyGetClobChars clobChars; @@ -47,7 +44,7 @@ public class GqlvPropertyGetClob private final CausewayConfiguration.Viewer.Graphql graphqlConfiguration; public GqlvPropertyGetClob( - final Holder holder, + final HolderPropertyGetClob holder, final Context context) { super(TypeNames.propertyBlobTypeNameFor(holder.getObjectSpecification(), holder.getObjectMember(), holder.getSchemaType()), context); this.holder = holder; @@ -113,10 +110,4 @@ public class GqlvPropertyGetClob return holder.getSchemaType(); } - public interface Holder - extends ObjectSpecificationProvider, - ObjectAssociationProvider<OneToOneAssociation>, - SchemaTypeProvider { - - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobAbstract.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobAbstract.java index 70fae768c6..36d2f29650 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobAbstract.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobAbstract.java @@ -30,16 +30,15 @@ import org.apache.causeway.core.metamodel.object.ManagedObject; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import lombok.val; public abstract class GqlvPropertyGetClobAbstract extends GqlvAbstract { - final Holder holder; + final HolderPropertyGetClobAbstract holder; public GqlvPropertyGetClobAbstract( - final Holder holder, + final HolderPropertyGetClobAbstract holder, final Context context, String name) { super(context); this.holder = holder; @@ -72,9 +71,4 @@ public abstract class GqlvPropertyGetClobAbstract extends GqlvAbstract { .orElse(null); } - public interface Holder - extends GqlvPropertyGet.Holder, - SchemaTypeProvider { - } - } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobChars.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobChars.java index b475ee9495..382d6d9879 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobChars.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobChars.java @@ -30,7 +30,7 @@ public class GqlvPropertyGetClobChars extends GqlvPropertyGetClobAbstract { private final String graphqlPath; public GqlvPropertyGetClobChars( - final Holder holder, + final HolderPropertyGetClobAbstract holder, final Context context) { super(holder, context, "chars"); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobMimeType.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobMimeType.java index a40f779143..d7cde052b1 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobMimeType.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobMimeType.java @@ -25,7 +25,7 @@ import org.apache.causeway.viewer.graphql.model.context.Context; public class GqlvPropertyGetClobMimeType extends GqlvPropertyGetClobAbstract { public GqlvPropertyGetClobMimeType( - final Holder holder, + final HolderPropertyGetClobAbstract holder, final Context context) { super(holder, context, "mimeType"); diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobName.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobName.java index 357af0ff08..32d53e7a04 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobName.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyGetClobName.java @@ -26,7 +26,7 @@ import org.apache.causeway.viewer.graphql.model.context.Context; public class GqlvPropertyGetClobName extends GqlvPropertyGetClobAbstract { public GqlvPropertyGetClobName( - final Holder holder, + final HolderPropertyGetClobAbstract holder, final Context context) { super(holder, context, "name"); } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertySet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertySet.java index b367ef8fd3..0072da69cd 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertySet.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertySet.java @@ -21,14 +21,12 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import java.util.Map; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.applib.annotation.Where; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; import org.apache.causeway.viewer.graphql.model.domain.SchemaType; @@ -36,19 +34,16 @@ import org.apache.causeway.viewer.graphql.model.exceptions.DisabledException; 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.fetcher.BookmarkedPojo; -import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider; -import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; public class GqlvPropertySet extends GqlvAbstract { - final Holder holder; + final HolderPropertySet holder; public GqlvPropertySet( - final Holder holder, + final HolderPropertySet holder, final Context context) { super(context); this.holder = holder; @@ -101,11 +96,4 @@ public class GqlvPropertySet extends GqlvAbstract { return managedObject; // return the original object because setters return void } - public interface Holder - extends ObjectSpecificationProvider, - OneToOneAssociationProvider, - SchemaTypeProvider { - - void addGqlArgument(OneToOneAssociation oneToOneAssociation, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyValidate.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyValidate.java index 60d66b7e66..ee5d15e121 100644 --- a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyValidate.java +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/GqlvPropertyValidate.java @@ -19,30 +19,25 @@ package org.apache.causeway.viewer.graphql.model.domain.rich.query; import graphql.schema.DataFetchingEnvironment; -import graphql.schema.GraphQLFieldDefinition; import graphql.schema.GraphQLOutputType; import static graphql.schema.GraphQLFieldDefinition.newFieldDefinition; import org.apache.causeway.core.metamodel.consent.InteractionInitiatedBy; import org.apache.causeway.core.metamodel.object.ManagedObject; -import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; import org.apache.causeway.viewer.graphql.model.context.Context; import org.apache.causeway.viewer.graphql.model.domain.GqlvAbstract; 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 org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; import org.apache.causeway.viewer.graphql.model.types.TypeMapper; import lombok.val; public class GqlvPropertyValidate extends GqlvAbstract { - final Holder holder; + final HolderPropertyValidate holder; public GqlvPropertyValidate( - final Holder holder, + final HolderPropertyValidate holder, final Context context) { super(context); this.holder = holder; @@ -76,11 +71,4 @@ public class GqlvPropertyValidate extends GqlvAbstract { return valid.isVetoed() ? valid.getReasonAsString().orElse("invalid") : null; } - public interface Holder - extends ObjectSpecificationProvider, - OneToOneAssociationProvider, - SchemaTypeProvider { - - void addGqlArgument(OneToOneAssociation oneToOneAssociation, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext); - } } diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvoke.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvoke.java new file mode 100644 index 0000000000..1a3c231261 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvoke.java @@ -0,0 +1,31 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionInvoke + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + void addGqlArguments( + final ObjectAction objectAction, + final GraphQLFieldDefinition.Builder fieldBuilder, + final TypeMapper.InputContext inputContext, + final int parameterCount); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment dataFetchingEnvironment, + ObjectAction objectAction, + BookmarkService bookmarkService); + +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeArgs.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeArgs.java new file mode 100644 index 0000000000..96e46cb749 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeArgs.java @@ -0,0 +1,21 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderActionInvokeArgs + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + Can<ManagedObject> argumentManagedObjectsFor( + Environment dataFetchingEnvironment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeArgsArg.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeArgsArg.java new file mode 100644 index 0000000000..1a61bc3a1c --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeArgsArg.java @@ -0,0 +1,21 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderActionInvokeArgsArg + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + Can<ManagedObject> argumentManagedObjectsFor( + Environment dataFetchingEnvironment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeResult.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeResult.java new file mode 100644 index 0000000000..bce5a111a5 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionInvokeResult.java @@ -0,0 +1,30 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionInvokeResult + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + void addGqlArguments( + final ObjectAction objectAction, + final GraphQLFieldDefinition.Builder fieldBuilder, + final TypeMapper.InputContext inputContext, + final int parameterCount); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment dataFetchingEnvironment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParams.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParams.java new file mode 100644 index 0000000000..4f2c773bb3 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParams.java @@ -0,0 +1,30 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParams + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment dataFetchingEnvironment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParam.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParam.java new file mode 100644 index 0000000000..9ea0c078c2 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParam.java @@ -0,0 +1,30 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParam + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment dataFetchingEnvironment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamAutoComplete.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamAutoComplete.java new file mode 100644 index 0000000000..09f509a6f7 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamAutoComplete.java @@ -0,0 +1,33 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParamAutoComplete + extends ObjectSpecificationProvider, + ObjectActionProvider, + ObjectActionParameterProvider, + SchemaTypeProvider { + HolderActionParamsParam getHolder(); + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment environment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamChoices.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamChoices.java new file mode 100644 index 0000000000..b0082c4a51 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamChoices.java @@ -0,0 +1,33 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParamChoices + extends ObjectSpecificationProvider, + ObjectActionProvider, + ObjectActionParameterProvider, + SchemaTypeProvider { + HolderActionParamsParam getHolder(); + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment environment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDatatype.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDatatype.java new file mode 100644 index 0000000000..38aa044cf5 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDatatype.java @@ -0,0 +1,9 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderActionParamsParamDatatype + extends ObjectActionParameterProvider, + SchemaTypeProvider { +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDefault.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDefault.java new file mode 100644 index 0000000000..b974e0eca2 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDefault.java @@ -0,0 +1,34 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParamDefault + extends ObjectSpecificationProvider, + ObjectActionProvider, + ObjectActionParameterProvider, + SchemaTypeProvider { + + HolderActionParamsParam getHolder(); + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment environment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDisabled.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDisabled.java new file mode 100644 index 0000000000..a6b27f9c3a --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamDisabled.java @@ -0,0 +1,29 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParamDisabled + extends ObjectSpecificationProvider, + ObjectActionProvider, + ObjectActionParameterProvider { + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int i); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment environment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamHidden.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamHidden.java new file mode 100644 index 0000000000..2cf3262d10 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamHidden.java @@ -0,0 +1,32 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParamHidden + extends ObjectSpecificationProvider, + ObjectActionProvider, + ObjectActionParameterProvider, + SchemaTypeProvider { + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment environment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamValidate.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamValidate.java new file mode 100644 index 0000000000..96114798b0 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionParamsParamValidate.java @@ -0,0 +1,28 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.applib.services.bookmark.BookmarkService; +import org.apache.causeway.commons.collections.Can; +import org.apache.causeway.core.metamodel.object.ManagedObject; +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.domain.Environment; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionParameterProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionParamsParamValidate + extends ObjectSpecificationProvider, + ObjectActionProvider, + ObjectActionParameterProvider, + SchemaTypeProvider { + + void addGqlArgument(ObjectAction objectAction, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext, int paramNum); + + Can<ManagedObject> argumentManagedObjectsFor( + Environment environment, + ObjectAction objectAction, + BookmarkService bookmarkService); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionValidity.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionValidity.java new file mode 100644 index 0000000000..49240f89c0 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderActionValidity.java @@ -0,0 +1,21 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.core.metamodel.spec.feature.ObjectAction; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectActionProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderActionValidity + extends ObjectSpecificationProvider, + ObjectActionProvider, + SchemaTypeProvider { + + void addGqlArguments( + ObjectAction objectAction, + GraphQLFieldDefinition.Builder fieldBuilder, + TypeMapper.InputContext inputContext, + int parameterCount); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderAssociationDatatype.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderAssociationDatatype.java new file mode 100644 index 0000000000..73d86ea872 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderAssociationDatatype.java @@ -0,0 +1,10 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.core.metamodel.spec.feature.ObjectAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderAssociationDatatype<T extends ObjectAssociation> + extends ObjectAssociationProvider<T>, + SchemaTypeProvider { +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderAssociationGet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderAssociationGet.java new file mode 100644 index 0000000000..878d21ce33 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderAssociationGet.java @@ -0,0 +1,13 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.core.metamodel.spec.feature.ObjectAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderAssociationGet<T extends ObjectAssociation> + extends ObjectSpecificationProvider, + ObjectAssociationProvider<T>, + SchemaTypeProvider { + +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderGetPropertyBlob.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderGetPropertyBlob.java new file mode 100644 index 0000000000..bdd1d8fad7 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderGetPropertyBlob.java @@ -0,0 +1,13 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderGetPropertyBlob + extends ObjectSpecificationProvider, + ObjectAssociationProvider<OneToOneAssociation>, + SchemaTypeProvider { + +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyAutoComplete.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyAutoComplete.java new file mode 100644 index 0000000000..cce609a192 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyAutoComplete.java @@ -0,0 +1,12 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderPropertyAutoComplete + extends ObjectSpecificationProvider, + OneToOneAssociationProvider, + SchemaTypeProvider { + +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyChoices.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyChoices.java new file mode 100644 index 0000000000..a355cebddf --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyChoices.java @@ -0,0 +1,17 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderPropertyChoices + extends ObjectSpecificationProvider, + OneToOneAssociationProvider, + SchemaTypeProvider { + + void addGqlArgument(OneToOneAssociation otoa, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGet.java new file mode 100644 index 0000000000..bdccda5dc0 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGet.java @@ -0,0 +1,12 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderPropertyGet + extends HolderAssociationGet<OneToOneAssociation>, + SchemaTypeProvider { + + @Override + OneToOneAssociation getObjectAssociation(); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetBlobAbstract.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetBlobAbstract.java new file mode 100644 index 0000000000..34fe53293f --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetBlobAbstract.java @@ -0,0 +1,8 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderPropertyGetBlobAbstract + extends HolderPropertyGet, + SchemaTypeProvider { +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetClob.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetClob.java new file mode 100644 index 0000000000..b52e4f9a3e --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetClob.java @@ -0,0 +1,13 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderPropertyGetClob + extends ObjectSpecificationProvider, + ObjectAssociationProvider<OneToOneAssociation>, + SchemaTypeProvider { + +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetClobAbstract.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetClobAbstract.java new file mode 100644 index 0000000000..eea6d61132 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyGetClobAbstract.java @@ -0,0 +1,8 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; + +public interface HolderPropertyGetClobAbstract + extends HolderPropertyGet, + SchemaTypeProvider { +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertySet.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertySet.java new file mode 100644 index 0000000000..f07804dfca --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertySet.java @@ -0,0 +1,17 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderPropertySet + extends ObjectSpecificationProvider, + OneToOneAssociationProvider, + SchemaTypeProvider { + + void addGqlArgument(OneToOneAssociation oneToOneAssociation, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext); +} diff --git a/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyValidate.java b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyValidate.java new file mode 100644 index 0000000000..ab58875854 --- /dev/null +++ b/viewers/graphql/model/src/main/java/org/apache/causeway/viewer/graphql/model/domain/rich/query/HolderPropertyValidate.java @@ -0,0 +1,17 @@ +package org.apache.causeway.viewer.graphql.model.domain.rich.query; + +import graphql.schema.GraphQLFieldDefinition; + +import org.apache.causeway.core.metamodel.spec.feature.OneToOneAssociation; +import org.apache.causeway.viewer.graphql.model.mmproviders.ObjectSpecificationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.OneToOneAssociationProvider; +import org.apache.causeway.viewer.graphql.model.mmproviders.SchemaTypeProvider; +import org.apache.causeway.viewer.graphql.model.types.TypeMapper; + +public interface HolderPropertyValidate + extends ObjectSpecificationProvider, + OneToOneAssociationProvider, + SchemaTypeProvider { + + void addGqlArgument(OneToOneAssociation oneToOneAssociation, GraphQLFieldDefinition.Builder fieldBuilder, TypeMapper.InputContext inputContext); +}
