Class HvlOAuthAbstractEntityClaimQueryGenerator<M extends tr.com.havelsan.javarch.dto.model.query.HvlQueryModel & HvlOAuthEntityClaimQueryModelStructure<? extends Enum<?>>,Q extends com.querydsl.core.types.dsl.EntityPathBase<? extends tr.com.havelsan.javarch.data.commons.structure.HvlEntityStructure<Long>>,X extends com.querydsl.core.types.dsl.EntityPathBase<? extends tr.com.havelsan.javarch.domain.model.entity.HvlEntity>,Y extends com.querydsl.core.types.dsl.EntityPathBase<? extends tr.com.havelsan.javarch.domain.model.entity.HvlEntity>>

java.lang.Object
tr.com.havelsan.javarch.data.jpa.query.generator.HvlBaseQueryGenerator<HQM,HQ>
tr.com.havelsan.javarch.data.jpa.query.generator.HvlEntityQueryGenerator<M,Q>
tr.com.havelsan.javarch.oauth.jpa.data.provider.generator.HvlOAuthAbstractEntityClaimQueryGenerator<M,Q,X,Y>
Type Parameters:
M - the type parameter
Q - the type parameter
X - the type parameter
Y - the type parameter
All Implemented Interfaces:
tr.com.havelsan.javarch.data.jpa.query.generator.HvlQueryGenerator<M,Q>
Direct Known Subclasses:
HvlOAuthAuthorityClaimRoleQueryGenerator, HvlOAuthBaseProfileClaimQueryGenerator, HvlOAuthBaseProfileDetailClaimQueryGenerator, HvlOAuthBaseProfileGroupClaimQueryGenerator, HvlOAuthBaseRoleClaimQueryGenerator, HvlOAuthBaseRoleGroupClaimQueryGenerator, HvlOAuthBaseUserClaimQueryGenerator

public abstract class HvlOAuthAbstractEntityClaimQueryGenerator<M extends tr.com.havelsan.javarch.dto.model.query.HvlQueryModel & HvlOAuthEntityClaimQueryModelStructure<? extends Enum<?>>,Q extends com.querydsl.core.types.dsl.EntityPathBase<? extends tr.com.havelsan.javarch.data.commons.structure.HvlEntityStructure<Long>>,X extends com.querydsl.core.types.dsl.EntityPathBase<? extends tr.com.havelsan.javarch.domain.model.entity.HvlEntity>,Y extends com.querydsl.core.types.dsl.EntityPathBase<? extends tr.com.havelsan.javarch.domain.model.entity.HvlEntity>> extends tr.com.havelsan.javarch.data.jpa.query.generator.HvlEntityQueryGenerator<M,Q>
The type abstract entity claim relation query generator.
  • Field Summary

    Fields inherited from class tr.com.havelsan.javarch.data.jpa.query.generator.HvlBaseQueryGenerator

    entityClass, pathBuilder
  • Constructor Summary

    Constructors
    Modifier
    Constructor
    Description
    protected
    HvlOAuthAbstractEntityClaimQueryGenerator(Q entityClaimQuery, X targetEntityRelQuery, Y assignedEntityQuery)
    Instantiates a new abstract entity claim query generator.
  • Method Summary

    Modifier and Type
    Method
    Description
    <V extends HvlOAuthClaimDataModelStructure>
    Function<com.querydsl.jpa.sql.JPASQLQuery<Void>,com.querydsl.jpa.sql.JPASQLQuery<V>>
    generateClaimDataProjectionQuery(M entityClaimQueryModel, com.querydsl.core.types.QBean<V> claimDataProjection)
    Generate claim data projection query jpql query.
    protected abstract com.querydsl.core.types.dsl.BooleanExpression
    prepareAssignedEntityJoinPredicate(M entityClaimQueryModel, X targetEntityRelQuery, Y assignedEntityQuery)
    Prepare assigned entity join predicate boolean expression.
    protected com.querydsl.jpa.sql.JPASQLQuery<Integer>
    prepareClaimDataBaseQuery(com.querydsl.jpa.sql.JPASQLQuery<Void> entityBaseQuery, M entityClaimQueryModel, Q entityQuery, com.querydsl.core.types.dsl.BooleanExpression onlyAssignedEntityPredicate)
    Prepare claim data base query jpasql query.
    protected com.querydsl.core.types.dsl.BooleanExpression
    prepareOnlyAssignedEntityPredicate(Long assignedEntityId, Q entityQuery, X targetEntityRelQuery, Y assignedEntityQuery)
    Prepare only assigned entity predicate boolean expression.
    protected abstract com.querydsl.core.types.dsl.BooleanExpression
    prepareTargetEntityRelJoinPredicate(M entityClaimQueryModel, Q entityQuery, X targetEntityRelQuery)
    Prepare target entity rel join predicate boolean expression.

    Methods inherited from class tr.com.havelsan.javarch.data.jpa.query.generator.HvlEntityQueryGenerator

    expressionBuilder

    Methods inherited from class tr.com.havelsan.javarch.data.jpa.query.generator.HvlBaseQueryGenerator

    addContainsIgnoreCase, generate, prepareFilterPredicate, preparePredicate

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • HvlOAuthAbstractEntityClaimQueryGenerator

      protected HvlOAuthAbstractEntityClaimQueryGenerator(@NonNull Q entityClaimQuery, @NonNull X targetEntityRelQuery, @NonNull Y assignedEntityQuery)
      Instantiates a new abstract entity claim query generator.
      Parameters:
      entityClaimQuery - the entity claim query
      targetEntityRelQuery - the target entity rel query
      assignedEntityQuery - the assigned entity query
  • Method Details

    • generateClaimDataProjectionQuery

      public <V extends HvlOAuthClaimDataModelStructure> Function<com.querydsl.jpa.sql.JPASQLQuery<Void>,com.querydsl.jpa.sql.JPASQLQuery<V>> generateClaimDataProjectionQuery(M entityClaimQueryModel, com.querydsl.core.types.QBean<V> claimDataProjection)
      Generate claim data projection query jpql query.
      Type Parameters:
      V - the type parameter
      Parameters:
      entityClaimQueryModel - the entity claim query model
      claimDataProjection - the claim data projection
      Returns:
      the jpql query
    • prepareClaimDataBaseQuery

      protected com.querydsl.jpa.sql.JPASQLQuery<Integer> prepareClaimDataBaseQuery(com.querydsl.jpa.sql.JPASQLQuery<Void> entityBaseQuery, M entityClaimQueryModel, Q entityQuery, com.querydsl.core.types.dsl.BooleanExpression onlyAssignedEntityPredicate)
      Prepare claim data base query jpasql query.
      Parameters:
      entityBaseQuery - the entity base query
      entityClaimQueryModel - the entity claim query model
      entityQuery - the entity query
      onlyAssignedEntityPredicate - the only assigned entity predicate
      Returns:
      the jpasql query
    • prepareOnlyAssignedEntityPredicate

      protected com.querydsl.core.types.dsl.BooleanExpression prepareOnlyAssignedEntityPredicate(Long assignedEntityId, Q entityQuery, X targetEntityRelQuery, Y assignedEntityQuery)
      Prepare only assigned entity predicate boolean expression.
      Parameters:
      assignedEntityId - the assigned entity id
      entityQuery - the entity query
      targetEntityRelQuery - the target entity rel query
      assignedEntityQuery - the assigned entity query
      Returns:
      the boolean expression
    • prepareTargetEntityRelJoinPredicate

      protected abstract com.querydsl.core.types.dsl.BooleanExpression prepareTargetEntityRelJoinPredicate(M entityClaimQueryModel, Q entityQuery, X targetEntityRelQuery)
      Prepare target entity rel join predicate boolean expression.
      Parameters:
      entityClaimQueryModel - the entity claim query model
      entityQuery - the entity query
      targetEntityRelQuery - the target entity rel query
      Returns:
      the boolean expression
    • prepareAssignedEntityJoinPredicate

      protected abstract com.querydsl.core.types.dsl.BooleanExpression prepareAssignedEntityJoinPredicate(M entityClaimQueryModel, X targetEntityRelQuery, Y assignedEntityQuery)
      Prepare assigned entity join predicate boolean expression.
      Parameters:
      entityClaimQueryModel - the entity claim query model
      targetEntityRelQuery - the target entity rel query
      assignedEntityQuery - the assigned entity query
      Returns:
      the boolean expression