Interface RootStream<X>
- All Superinterfaces:
ExprStream<X,
,Root<X>> FromStream<X,
,Root<X>> PathStream<X,
,Root<X>> QueryConfigurer<AbstractQuery<?>,
,X, Root<X>> QueryStream<X,
,Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> SearchStream<X,
Root<X>>
- All Known Subinterfaces:
RootValue<X>
SearchStream
containing items representable as Root
s.-
Nested Class Summary
Nested classes/interfaces inherited from interface org.dellroad.querystream.jpa.QueryStream
QueryStream.Builder
-
Method Summary
Modifier and TypeMethodDescription<R> RootStream<X>
Bind an unbound reference to a new query root that will be added to the query.Bind an unbound reference to the items in this stream.<X2,
S2 extends Selection<X2>>
RootStream<X>Bind an unbound reference to the result of applying the given function to the items in this stream.<Y extends X>
RootStream<Y>Map this stream into a stream whose elements are the result of applying the given narrowing cast.distinct()
Suppress duplicates.fetch
(PluralAttribute<? super X, ?, ?> attribute) Add a plural fetch join to this stream.fetch
(PluralAttribute<? super X, ?, ?> attribute, JoinType joinType) Add a plural fetch join to this stream.fetch
(SingularAttribute<? super X, ?> attribute) Add a singular fetch inner join to this stream.fetch
(SingularAttribute<? super X, ?> attribute, JoinType joinType) Add a singular fetch join to this stream.filter
(SingularAttribute<? super X, Boolean> attribute) Filter results using the specified boolean property.Filter results using the boolean expression produced by the given function.findAny()
Find any instance in the stream.Find the first instance in the stream.Find the only instance in the stream or null.groupBy
(SingularAttribute<? super X, ?> attribute) Apply grouping based on the specified property.groupBy
(Function<? super Root<X>, ? extends Expression<?>> groupFunction) Apply grouping based on a single expression.groupBy
(Ref<?, ? extends Expression<?>> ref) Apply grouping based on an expression reference.groupByMulti
(Function<? super Root<X>, ? extends List<Expression<?>>> groupFunction) Apply grouping based on a list of expressions.Add a "having" restriction.limit
(int maxSize) Return this stream truncated to the specified maximum length.Order results using the specifiedOrder
s.orderBy
(SingularAttribute<? super X, ?> attribute, boolean asc) Order results using the specified property.orderBy
(SingularAttribute<? super X, ?> attribute1, boolean asc1, SingularAttribute<? super X, ?> attribute2, boolean asc2) Order results using the specified properties.orderBy
(SingularAttribute<? super X, ?> attribute1, boolean asc1, SingularAttribute<? super X, ?> attribute2, boolean asc2, SingularAttribute<? super X, ?> attribute3, boolean asc3) Order results using the specified properties.orderBy
(Function<? super Root<X>, ? extends Expression<?>> orderExprFunction, boolean asc) Order results using theExpression
produced by the givenFunction
.orderBy
(Ref<?, ? extends Expression<?>> ref, boolean asc) Order results using the specified expression reference.Peek at the items in this stream.skip
(int num) Return this stream with the specified number of initial elements skipped.thenOrderBy
(Order... orders) Order results using the specifiedOrder
s after existing sort.thenOrderBy
(SingularAttribute<? super X, ?> attribute, boolean asc) Order results using the specified property after existing sort.thenOrderBy
(Function<? super Root<X>, ? extends Expression<?>> orderExprFunction, boolean asc) Order results using theExpression
produced by the givenFunction
after existing sort.thenOrderBy
(Ref<?, ? extends Expression<?>> ref, boolean asc) Order results using the specified expression reference after existing sort.withFetchGraph
(String name) Configure a fetch graph for this query.withFlushMode
(FlushModeType flushMode) Set theFlushModeType
associated with this query.Associate a hint with this query.Associate hints with this query.withLoadGraph
(String name) Configure a load graph for this query.withLockMode
(LockModeType lockMode) Set theLockModeType
associated with this query.withParam
(Parameter<Calendar> parameter, Calendar value, TemporalType temporalType) Bind the value of a query parameter of typeCalendar
.withParam
(Parameter<Date> parameter, Date value, TemporalType temporalType) Bind the value of a query parameter of typeDate
.<T> RootStream<X>
Bind the value of a query parameter.withParams
(Iterable<? extends ParamBinding<?>> params) Associate parameter bindings with this query.Methods inherited from interface org.dellroad.querystream.jpa.ExprStream
asSubquery, count, countDistinct, exists
Methods inherited from interface org.dellroad.querystream.jpa.QueryConfigurer
configure
Methods inherited from interface org.dellroad.querystream.jpa.QueryStream
getEntityManager, getFirstResult, getFlushMode, getHints, getLockMode, getMaxResults, getParams, toCriteriaQuery, toQuery
Methods inherited from interface org.dellroad.querystream.jpa.SearchStream
allMatch, allMatch, anyMatch, anyMatch, flatMap, flatMap, flatMap, flatMapKeys, flatMapValues, getQueryType, getResultList, getResultStream, isEmpty, join, join, join, join, join, join, join, join, join, join, join, join, join, join, join, map, map, map, map, mapToDouble, mapToDouble, mapToExpr, mapToFrom, mapToInt, mapToInt, mapToLong, mapToLong, mapToPath, mapToRef, mapToRef, mapToRef, mapToRef, mapToRoot, mapToSelection, noneMatch, noneMatch
-
Method Details
-
cast
Description copied from interface:PathStream
Map this stream into a stream whose elements are the result of applying the given narrowing cast.- Specified by:
cast
in interfacePathStream<X,
Root<X>> - Type Parameters:
Y
- narrower type- Parameters:
type
- new, narrower item type- Returns:
- recast stream
- See Also:
-
distinct
RootStream<X> distinct()Description copied from interface:SearchStream
Suppress duplicates.- Specified by:
distinct
in interfaceExprStream<X,
Root<X>> - Specified by:
distinct
in interfaceFromStream<X,
Root<X>> - Specified by:
distinct
in interfacePathStream<X,
Root<X>> - Specified by:
distinct
in interfaceSearchStream<X,
Root<X>> - Returns:
- a new stream with duplicates removed
-
orderBy
Description copied from interface:SearchStream
Order results using the specified expression reference.Replaces any existing sort ordering.
- Specified by:
orderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
orderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
orderBy
in interfacePathStream<X,
Root<X>> - Specified by:
orderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
ref
- previously bound expression referenceasc
- true for ascending, false for descending- Returns:
- a new stream with specified ordering
-
orderBy
Description copied from interface:SearchStream
Order results using the specified property.Replaces any existing sort ordering.
- Specified by:
orderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
orderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
orderBy
in interfacePathStream<X,
Root<X>> - Specified by:
orderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated propertyasc
- true for ascending, false for descending- Returns:
- a new stream with specified ordering
-
orderBy
RootStream<X> orderBy(SingularAttribute<? super X, ?> attribute1, boolean asc1, SingularAttribute<? super X, ?> attribute2, boolean asc2) Description copied from interface:SearchStream
Order results using the specified properties.Replaces any existing sort ordering.
- Specified by:
orderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
orderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
orderBy
in interfacePathStream<X,
Root<X>> - Specified by:
orderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute1
- associated propertyasc1
- true forattribute1
ascending, false forattribute1
descendingattribute2
- associated propertyasc2
- true forattribute2
ascending, false forattribute2
descending- Returns:
- a new stream with specified ordering
-
orderBy
RootStream<X> orderBy(SingularAttribute<? super X, ?> attribute1, boolean asc1, SingularAttribute<? super X, ?> attribute2, boolean asc2, SingularAttribute<? super X, ?> attribute3, boolean asc3) Description copied from interface:SearchStream
Order results using the specified properties.Replaces any existing sort ordering.
- Specified by:
orderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
orderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
orderBy
in interfacePathStream<X,
Root<X>> - Specified by:
orderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute1
- associated propertyasc1
- true forattribute1
ascending, false forattribute1
descendingattribute2
- associated propertyasc2
- true forattribute2
ascending, false forattribute2
descendingattribute3
- associated propertyasc3
- true forattribute3
ascending, false forattribute3
descending- Returns:
- a new stream with specified ordering
-
orderBy
RootStream<X> orderBy(Function<? super Root<X>, ? extends Expression<?>> orderExprFunction, boolean asc) Description copied from interface:SearchStream
Order results using theExpression
produced by the givenFunction
.Replaces any existing sort ordering.
- Specified by:
orderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
orderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
orderBy
in interfacePathStream<X,
Root<X>> - Specified by:
orderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
orderExprFunction
-Function
that produces anExpression
to order on given an item expressionasc
- true for ascending, false for descending- Returns:
- a new stream with specified ordering
-
orderBy
Description copied from interface:SearchStream
Order results using the specifiedOrder
s.Replaces any existing sort ordering.
- Specified by:
orderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
orderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
orderBy
in interfacePathStream<X,
Root<X>> - Specified by:
orderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
orders
- ordering(s), with higher precedence orderings first- Returns:
- a new stream with specified ordering(s)
-
orderByMulti
RootStream<X> orderByMulti(Function<? super Root<X>, ? extends List<? extends Order>> orderListFunction) Description copied from interface:SearchStream
Order results using theOrder
list produced by the givenFunction
.Replaces any existing sort ordering.
- Specified by:
orderByMulti
in interfaceExprStream<X,
Root<X>> - Specified by:
orderByMulti
in interfaceFromStream<X,
Root<X>> - Specified by:
orderByMulti
in interfacePathStream<X,
Root<X>> - Specified by:
orderByMulti
in interfaceSearchStream<X,
Root<X>> - Parameters:
orderListFunction
-Function
that produces the sort ordering given an item expression- Returns:
- a new stream with specified ordering
-
thenOrderBy
Description copied from interface:SearchStream
Order results using the specified property after existing sort.Adds to any existing sort ordering.
- Specified by:
thenOrderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfacePathStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated propertyasc
- true for ascending, false for descending- Returns:
- a new stream with specified additional ordering
-
thenOrderBy
Description copied from interface:SearchStream
Order results using the specified expression reference after existing sort.Adds to any existing sort ordering.
- Specified by:
thenOrderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfacePathStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
ref
- previously bound expression referenceasc
- true for ascending, false for descending- Returns:
- a new stream with specified additional ordering
-
thenOrderBy
Description copied from interface:SearchStream
Order results using the specifiedOrder
s after existing sort.Adds to any existing sort ordering.
- Specified by:
thenOrderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfacePathStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
orders
- ordering(s), with higher precedence orderings first- Returns:
- a new stream with specified additional ordering(s)
-
thenOrderBy
RootStream<X> thenOrderBy(Function<? super Root<X>, ? extends Expression<?>> orderExprFunction, boolean asc) Description copied from interface:SearchStream
Order results using theExpression
produced by the givenFunction
after existing sort.Adds to any existing sort ordering.
- Specified by:
thenOrderBy
in interfaceExprStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceFromStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfacePathStream<X,
Root<X>> - Specified by:
thenOrderBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
orderExprFunction
-Function
that produces anExpression
to order on given an item expressionasc
- true for ascending, false for descending- Returns:
- a new stream with specified additional ordering
-
groupBy
Description copied from interface:SearchStream
Apply grouping based on an expression reference.Adds to any previously specified groupings.
- Specified by:
groupBy
in interfaceExprStream<X,
Root<X>> - Specified by:
groupBy
in interfaceFromStream<X,
Root<X>> - Specified by:
groupBy
in interfacePathStream<X,
Root<X>> - Specified by:
groupBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
ref
- previously bound expression reference- Returns:
- a new stream with additional grouping
-
groupBy
Description copied from interface:SearchStream
Apply grouping based on the specified property.Adds to any previously specified groupings.
- Specified by:
groupBy
in interfaceExprStream<X,
Root<X>> - Specified by:
groupBy
in interfaceFromStream<X,
Root<X>> - Specified by:
groupBy
in interfacePathStream<X,
Root<X>> - Specified by:
groupBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated property- Returns:
- a new stream with additional grouping
-
groupBy
Description copied from interface:SearchStream
Apply grouping based on a single expression.Adds to any previously specified groupings.
- Specified by:
groupBy
in interfaceExprStream<X,
Root<X>> - Specified by:
groupBy
in interfaceFromStream<X,
Root<X>> - Specified by:
groupBy
in interfacePathStream<X,
Root<X>> - Specified by:
groupBy
in interfaceSearchStream<X,
Root<X>> - Parameters:
groupFunction
- function returning an expression by which to group results- Returns:
- a new stream with additional grouping
-
groupByMulti
Description copied from interface:SearchStream
Apply grouping based on a list of expressions.Adds to any previously specified groupings.
- Specified by:
groupByMulti
in interfaceExprStream<X,
Root<X>> - Specified by:
groupByMulti
in interfaceFromStream<X,
Root<X>> - Specified by:
groupByMulti
in interfacePathStream<X,
Root<X>> - Specified by:
groupByMulti
in interfaceSearchStream<X,
Root<X>> - Parameters:
groupFunction
- function returning a list of expressions by which to group results- Returns:
- a new instance
-
having
Description copied from interface:SearchStream
Add a "having" restriction.Adds to any previously specified "having" restrictions.
- Specified by:
having
in interfaceExprStream<X,
Root<X>> - Specified by:
having
in interfaceFromStream<X,
Root<X>> - Specified by:
having
in interfacePathStream<X,
Root<X>> - Specified by:
having
in interfaceSearchStream<X,
Root<X>> - Parameters:
havingFunction
- function returning a test to apply to grouped results- Returns:
- a new instance
-
findAny
Description copied from interface:SearchStream
Find any instance in the stream.- Specified by:
findAny
in interfaceExprStream<X,
Root<X>> - Specified by:
findAny
in interfaceFromStream<X,
Root<X>> - Specified by:
findAny
in interfacePathStream<X,
Root<X>> - Specified by:
findAny
in interfaceSearchStream<X,
Root<X>> - Returns:
- single-valued stream containg any instance in this stream (or
NULL
if this stream is empty)
-
findFirst
Description copied from interface:SearchStream
Find the first instance in the stream.- Specified by:
findFirst
in interfaceExprStream<X,
Root<X>> - Specified by:
findFirst
in interfaceFromStream<X,
Root<X>> - Specified by:
findFirst
in interfacePathStream<X,
Root<X>> - Specified by:
findFirst
in interfaceSearchStream<X,
Root<X>> - Returns:
- single-valued stream containg the first instance in this stream (or
NULL
if this stream is empty)
-
findSingle
Description copied from interface:SearchStream
Find the only instance in the stream or null.Invoke this method only when you know that the result stream contains at most one value, e.g., when searching for an object by its value in a field with a unique constraint. If the stream actually contains multiple values, then invoking any of the "single value"
SearchValue
methods such asvalue()
ortoOptional()
will generate aNonUniqueResultException
.Using this method is preferable to using
SearchStream.findFirst()
orSearchStream.findAny()
for the same purpose, because it not only actually verifies the uniqueness assumption, but it also makes that assumption clearer in the code.Example:
final User user = qb.stream(User.class) .filter(u -> qb.equal(u.get(User_.username), username)) .findSingle() .orElseThrow(NoSuchUserException::new);
- Specified by:
findSingle
in interfaceExprStream<X,
Root<X>> - Specified by:
findSingle
in interfaceFromStream<X,
Root<X>> - Specified by:
findSingle
in interfacePathStream<X,
Root<X>> - Specified by:
findSingle
in interfaceSearchStream<X,
Root<X>> - Returns:
- a single value, either the only instance in this stream or null if this stream is empty
-
bind
Description copied from interface:QueryStream
Bind an unbound reference to the items in this stream.- Specified by:
bind
in interfaceExprStream<X,
Root<X>> - Specified by:
bind
in interfaceFromStream<X,
Root<X>> - Specified by:
bind
in interfacePathStream<X,
Root<X>> - Specified by:
bind
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
bind
in interfaceSearchStream<X,
Root<X>> - Parameters:
ref
- unbound reference- Returns:
- new stream that binds
ref
-
peek
Description copied from interface:QueryStream
Peek at the items in this stream.This is useful in cases where the selection can be modified, e.g., setting join
ON
conditions usingJoin.on()
.- Specified by:
peek
in interfaceExprStream<X,
Root<X>> - Specified by:
peek
in interfaceFromStream<X,
Root<X>> - Specified by:
peek
in interfacePathStream<X,
Root<X>> - Specified by:
peek
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
peek
in interfaceSearchStream<X,
Root<X>> - Parameters:
peeker
- peeker into stream- Returns:
- new stream that peeks into this stream
-
bind
<X2,S2 extends Selection<X2>> RootStream<X> bind(Ref<X2, ? super S2> ref, Function<? super Root<X>, ? extends S2> refFunction) Description copied from interface:QueryStream
Bind an unbound reference to the result of applying the given function to the items in this stream.- Specified by:
bind
in interfaceExprStream<X,
Root<X>> - Specified by:
bind
in interfaceFromStream<X,
Root<X>> - Specified by:
bind
in interfacePathStream<X,
Root<X>> - Specified by:
bind
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
bind
in interfaceSearchStream<X,
Root<X>> - Type Parameters:
X2
- type of the bound valueS2
- criteria type of the bound value- Parameters:
ref
- unbound referencerefFunction
- function mapping this stream'sSelection
to the reference value- Returns:
- new stream that binds
ref
-
addRoot
Description copied from interface:SearchStream
Bind an unbound reference to a new query root that will be added to the query.To select the new root in a
SearchStream
, useSearchStream.map()
, providing aFunction
that returnsref
.Note that this effectively creates an unconstrained (cross product) join with the new root. Typically there would be some additional restrictions imposed (e.g., via
filter()
) to relate the new root to the items in the stream.- Specified by:
addRoot
in interfaceExprStream<X,
Root<X>> - Specified by:
addRoot
in interfaceFromStream<X,
Root<X>> - Specified by:
addRoot
in interfacePathStream<X,
Root<X>> - Specified by:
addRoot
in interfaceSearchStream<X,
Root<X>> - Type Parameters:
R
- type of the new query root- Parameters:
ref
- unbound referencetype
- type of the new query root- Returns:
- new stream that binds
ref
to a new query root fromtype
-
filter
Description copied from interface:QueryStream
Filter results using the specified boolean property.Adds to any previously specified filters.
- Specified by:
filter
in interfaceExprStream<X,
Root<X>> - Specified by:
filter
in interfaceFromStream<X,
Root<X>> - Specified by:
filter
in interfacePathStream<X,
Root<X>> - Specified by:
filter
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
filter
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- boolean property- Returns:
- new filtered stream
-
filter
Description copied from interface:QueryStream
Filter results using the boolean expression produced by the given function.Adds to any previously specified filters.
- Specified by:
filter
in interfaceExprStream<X,
Root<X>> - Specified by:
filter
in interfaceFromStream<X,
Root<X>> - Specified by:
filter
in interfacePathStream<X,
Root<X>> - Specified by:
filter
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
filter
in interfaceSearchStream<X,
Root<X>> - Parameters:
predicateBuilder
- function mapping this stream's item to a booleanExpression
- Returns:
- new filtered stream
-
limit
Description copied from interface:QueryStream
Return this stream truncated to the specified maximum length.Due to limitations in the JPA Criteria API, this method is not supported on subquery streams and in general must be specified last (after any filtering, sorting, grouping, joins, etc.).
- Specified by:
limit
in interfaceExprStream<X,
Root<X>> - Specified by:
limit
in interfaceFromStream<X,
Root<X>> - Specified by:
limit
in interfacePathStream<X,
Root<X>> - Specified by:
limit
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
limit
in interfaceSearchStream<X,
Root<X>> - Parameters:
maxSize
- maximum number of elements to return- Returns:
- new truncated stream
-
skip
Description copied from interface:QueryStream
Return this stream with the specified number of initial elements skipped.Due to limitations in the JPA Criteria API, this method is not supported on subquery streams and in general must be specified last (after any filtering, sorting, grouping, joins, etc.).
- Specified by:
skip
in interfaceExprStream<X,
Root<X>> - Specified by:
skip
in interfaceFromStream<X,
Root<X>> - Specified by:
skip
in interfacePathStream<X,
Root<X>> - Specified by:
skip
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
skip
in interfaceSearchStream<X,
Root<X>> - Parameters:
num
- number of elements to skip- Returns:
- new elided stream
-
withFlushMode
Description copied from interface:QueryStream
Set theFlushModeType
associated with this query.- Specified by:
withFlushMode
in interfaceExprStream<X,
Root<X>> - Specified by:
withFlushMode
in interfaceFromStream<X,
Root<X>> - Specified by:
withFlushMode
in interfacePathStream<X,
Root<X>> - Specified by:
withFlushMode
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withFlushMode
in interfaceSearchStream<X,
Root<X>> - Parameters:
flushMode
- new flush mode- Returns:
- new stream with the specified flush mode configured
- See Also:
-
withLockMode
Description copied from interface:QueryStream
Set theLockModeType
associated with this query.- Specified by:
withLockMode
in interfaceExprStream<X,
Root<X>> - Specified by:
withLockMode
in interfaceFromStream<X,
Root<X>> - Specified by:
withLockMode
in interfacePathStream<X,
Root<X>> - Specified by:
withLockMode
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withLockMode
in interfaceSearchStream<X,
Root<X>> - Parameters:
lockMode
- new lock mode- Returns:
- new stream with the specified lock mode configured
- See Also:
-
withHint
Description copied from interface:QueryStream
Associate a hint with this query.- Specified by:
withHint
in interfaceExprStream<X,
Root<X>> - Specified by:
withHint
in interfaceFromStream<X,
Root<X>> - Specified by:
withHint
in interfacePathStream<X,
Root<X>> - Specified by:
withHint
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withHint
in interfaceSearchStream<X,
Root<X>> - Parameters:
name
- name of hintvalue
- value of hint- Returns:
- new stream with the specified hint configured
- See Also:
-
withHints
Description copied from interface:QueryStream
Associate hints with this query.- Specified by:
withHints
in interfaceExprStream<X,
Root<X>> - Specified by:
withHints
in interfaceFromStream<X,
Root<X>> - Specified by:
withHints
in interfacePathStream<X,
Root<X>> - Specified by:
withHints
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withHints
in interfaceSearchStream<X,
Root<X>> - Parameters:
hints
- hints to add- Returns:
- new stream with the specified hints added
- See Also:
-
withParam
Description copied from interface:QueryStream
Bind the value of a query parameter.Replaces any previous binding of the same parameter.
- Specified by:
withParam
in interfaceExprStream<X,
Root<X>> - Specified by:
withParam
in interfaceFromStream<X,
Root<X>> - Specified by:
withParam
in interfacePathStream<X,
Root<X>> - Specified by:
withParam
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withParam
in interfaceSearchStream<X,
Root<X>> - Type Parameters:
T
- parameter value type- Parameters:
parameter
- the parameter to setvalue
- parameter value- Returns:
- new stream with the specified parameter value set
- See Also:
-
withParam
Description copied from interface:QueryStream
Bind the value of a query parameter of typeDate
.Replaces any previous binding of the same parameter.
- Specified by:
withParam
in interfaceExprStream<X,
Root<X>> - Specified by:
withParam
in interfaceFromStream<X,
Root<X>> - Specified by:
withParam
in interfacePathStream<X,
Root<X>> - Specified by:
withParam
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withParam
in interfaceSearchStream<X,
Root<X>> - Parameters:
parameter
- the parameter to setvalue
- parameter valuetemporalType
- temporal type forvalue
- Returns:
- new stream with the specified parameter value set
- See Also:
-
withParam
Description copied from interface:QueryStream
Bind the value of a query parameter of typeCalendar
.Replaces any previous binding of the same parameter.
- Specified by:
withParam
in interfaceExprStream<X,
Root<X>> - Specified by:
withParam
in interfaceFromStream<X,
Root<X>> - Specified by:
withParam
in interfacePathStream<X,
Root<X>> - Specified by:
withParam
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withParam
in interfaceSearchStream<X,
Root<X>> - Parameters:
parameter
- the parameter to setvalue
- parameter valuetemporalType
- temporal type forvalue
- Returns:
- new stream with the specified parameter value set
- See Also:
-
withParams
Description copied from interface:QueryStream
Associate parameter bindings with this query.Replaces any previous bindings of the same parameters.
- Specified by:
withParams
in interfaceExprStream<X,
Root<X>> - Specified by:
withParams
in interfaceFromStream<X,
Root<X>> - Specified by:
withParams
in interfacePathStream<X,
Root<X>> - Specified by:
withParams
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withParams
in interfaceSearchStream<X,
Root<X>> - Parameters:
params
- bindings to add- Returns:
- new stream with the specified parameter bindings added
- See Also:
-
withLoadGraph
Description copied from interface:QueryStream
Configure a load graph for this query.Equivalent to
withHint
("jakarta.persistence.loadgraph", name)
.- Specified by:
withLoadGraph
in interfaceExprStream<X,
Root<X>> - Specified by:
withLoadGraph
in interfaceFromStream<X,
Root<X>> - Specified by:
withLoadGraph
in interfacePathStream<X,
Root<X>> - Specified by:
withLoadGraph
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withLoadGraph
in interfaceSearchStream<X,
Root<X>> - Parameters:
name
- name of load graph- Returns:
- new stream with the specified load graph configured
-
withFetchGraph
Description copied from interface:QueryStream
Configure a fetch graph for this query.Equivalent to
withHint
("jakarta.persistence.fetchgraph", name)
.- Specified by:
withFetchGraph
in interfaceExprStream<X,
Root<X>> - Specified by:
withFetchGraph
in interfaceFromStream<X,
Root<X>> - Specified by:
withFetchGraph
in interfacePathStream<X,
Root<X>> - Specified by:
withFetchGraph
in interfaceQueryStream<X,
Root<X>, AbstractQuery<?>, CriteriaQuery<X>, TypedQuery<X>> - Specified by:
withFetchGraph
in interfaceSearchStream<X,
Root<X>> - Parameters:
name
- name of fetch graph- Returns:
- new stream with the specified fetch graph configured
-
fetch
Description copied from interface:SearchStream
Add a singular fetch inner join to this stream.Equivalent to
fetch(attribute, JoinType.INNER)
.- Specified by:
fetch
in interfaceExprStream<X,
Root<X>> - Specified by:
fetch
in interfaceFromStream<X,
Root<X>> - Specified by:
fetch
in interfacePathStream<X,
Root<X>> - Specified by:
fetch
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated property- Returns:
- a new stream with specified inner fetch join
-
fetch
Description copied from interface:SearchStream
Add a singular fetch join to this stream.Unlike
join()
, this method does not change the stream's content type. In other words, this method is used simply to pre-fetch an association, to avoid having to fetch it again later for each individual element in the stream.- Specified by:
fetch
in interfaceExprStream<X,
Root<X>> - Specified by:
fetch
in interfaceFromStream<X,
Root<X>> - Specified by:
fetch
in interfacePathStream<X,
Root<X>> - Specified by:
fetch
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated propertyjoinType
- join type- Returns:
- a new stream with specified fetch join
-
fetch
Description copied from interface:SearchStream
Add a plural fetch join to this stream.Equivalent to
fetch(attribute, JoinType.INNER)
.- Specified by:
fetch
in interfaceExprStream<X,
Root<X>> - Specified by:
fetch
in interfaceFromStream<X,
Root<X>> - Specified by:
fetch
in interfacePathStream<X,
Root<X>> - Specified by:
fetch
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated property- Returns:
- a new stream with specified inner fetch join
-
fetch
Description copied from interface:SearchStream
Add a plural fetch join to this stream.Unlike
join()
, this method does not change the stream's content type. In other words, this method is used simply to pre-fetch an association, to avoid having to fetch it again later for each individual element in the stream.- Specified by:
fetch
in interfaceExprStream<X,
Root<X>> - Specified by:
fetch
in interfaceFromStream<X,
Root<X>> - Specified by:
fetch
in interfacePathStream<X,
Root<X>> - Specified by:
fetch
in interfaceSearchStream<X,
Root<X>> - Parameters:
attribute
- associated propertyjoinType
- join type- Returns:
- a new stream with specified fetch join
-