Interface JpaCteCriteria<T>

All Superinterfaces:
JpaCriteriaNode, Serializable
All Known Implementing Classes:
SqmCteStatement

@Incubating public interface JpaCteCriteria<T> extends JpaCriteriaNode
A CTE (common table expression) criteria.
  • Method Details

    • getName

      @Nullable String getName()
      The name under which this CTE is registered.
    • getType

      JpaCteCriteriaType<T> getType()
      The type of the CTE.
    • getCteDefinition

      JpaSelectCriteria<?> getCteDefinition()
      The definition of the CTE.
    • getCteContainer

      JpaCteContainer getCteContainer()
      The container within this CTE is registered.
    • getMaterialization

      CteMaterialization getMaterialization()
      The materialization hint for the CTE.
    • setMaterialization

      void setMaterialization(CteMaterialization materialization)
    • getSearchClauseKind

      @Nullable CteSearchClauseKind getSearchClauseKind()
      The kind of search (breadth-first or depth-first) that should be done for a recursive query. May be null if unspecified or if this is not a recursive query.
    • getSearchBySpecifications

      List<JpaSearchOrder> getSearchBySpecifications()
      The order by which should be searched.
    • getSearchAttributeName

      @Nullable String getSearchAttributeName()
      The attribute name by which one can order the final CTE result, to achieve the search order. Note that an implicit JpaCteCriteriaAttribute will be made available for this.
    • search

      default void search(CteSearchClauseKind kind, String searchAttributeName, JpaSearchOrder... searchOrders)
    • search

      void search(CteSearchClauseKind kind, String searchAttributeName, List<JpaSearchOrder> searchOrders)
    • getCycleAttributes

      List<JpaCteCriteriaAttribute> getCycleAttributes()
      The attributes to use for cycle detection.
    • getCycleMarkAttributeName

      @Nullable String getCycleMarkAttributeName()
      The attribute name which is used to mark when a cycle has been detected. Note that an implicit JpaCteCriteriaAttribute will be made available for this.
    • getCyclePathAttributeName

      @Nullable String getCyclePathAttributeName()
      The attribute name that represents the computation path, which is used for cycle detection. Note that an implicit JpaCteCriteriaAttribute will be made available for this.
    • getCycleValue

      @Nullable Object getCycleValue()
      The value which is set for the cycle mark attribute when a cycle is detected.
    • getNoCycleValue

      @Nullable Object getNoCycleValue()
      The default value for the cycle mark attribute when no cycle is detected.
    • cycle

      default void cycle(String cycleMarkAttributeName, JpaCteCriteriaAttribute... cycleColumns)
    • cycle

      default void cycle(String cycleMarkAttributeName, List<JpaCteCriteriaAttribute> cycleColumns)
    • cycleUsing

      default void cycleUsing(String cycleMarkAttributeName, String cyclePathAttributeName, JpaCteCriteriaAttribute... cycleColumns)
    • cycleUsing

      default void cycleUsing(String cycleMarkAttributeName, String cyclePathAttributeName, List<JpaCteCriteriaAttribute> cycleColumns)
    • cycle

      default <X> void cycle(String cycleMarkAttributeName, X cycleValue, X noCycleValue, JpaCteCriteriaAttribute... cycleColumns)
    • cycle

      default <X> void cycle(String cycleMarkAttributeName, X cycleValue, X noCycleValue, List<JpaCteCriteriaAttribute> cycleColumns)
    • cycleUsing

      default <X> void cycleUsing(String cycleMarkAttributeName, String cyclePathAttributeName, X cycleValue, X noCycleValue, JpaCteCriteriaAttribute... cycleColumns)
    • cycleUsing

      <X> void cycleUsing(String cycleMarkAttributeName, String cyclePathAttributeName, X cycleValue, X noCycleValue, List<JpaCteCriteriaAttribute> cycleColumns)