Class AbstractRelationQueryGenerator

    • Field Detail

      • referencingIdData

        protected final MiddleIdData referencingIdData
      • revisionTypeInId

        protected final boolean revisionTypeInId
      • entityName

        protected final String entityName
      • orderByCollectionRole

        protected final String orderByCollectionRole
    • Constructor Detail

      • AbstractRelationQueryGenerator

        protected AbstractRelationQueryGenerator​(Configuration configuration,
                                                 String entityName,
                                                 MiddleIdData referencingIdData,
                                                 boolean revisionTypeInId,
                                                 String orderByCollectionRole)
    • Method Detail

      • getQuery

        public org.hibernate.query.Query getQuery​(org.hibernate.engine.spi.SharedSessionContractImplementor session,
                                                  Object primaryKey,
                                                  Number revision,
                                                  boolean removed)
        Description copied from interface: RelationQueryGenerator
        Return the query to fetch the relation.
        Specified by:
        getQuery in interface RelationQueryGenerator
        Parameters:
        session - The session.
        primaryKey - The primary key of the owning object.
        revision - The revision to be fetched.
        removed - Whether to return a query that includes the removed audit rows.
      • buildQueryBuilderCommon

        protected abstract QueryBuilder buildQueryBuilderCommon​(org.hibernate.engine.spi.SessionFactoryImplementor sessionFactory)
        Build the common aspects of a QueryBuilder used by both query and query-remove strings.
        Parameters:
        sessionFactory - The session factory.
        Returns:
        The constructed query builder instance.
      • applyValidPredicates

        protected abstract void applyValidPredicates​(QueryBuilder qb,
                                                     Parameters parameters,
                                                     boolean inclusive)
        Apply predicates used to fetch actual data.
        Parameters:
        qb - The query builder instance to apply predicates against.
        parameters - The root query parameters
        inclusive - Whether its inclusive or not.
      • applyValidAndRemovePredicates

        protected abstract void applyValidAndRemovePredicates​(QueryBuilder qb)
        Apply predicates to fetch data and deletions that took place during the same revision.
        Parameters:
        qb - The query builder instance to apply predicates against.
      • getRevisionTypePath

        protected String getRevisionTypePath()