Module org.dellroad.querystream.jpa
Class SearchType<X>
java.lang.Object
org.dellroad.querystream.jpa.querytype.QueryType<X,jakarta.persistence.criteria.AbstractQuery<?>,jakarta.persistence.criteria.CriteriaQuery<X>,jakarta.persistence.TypedQuery<X>>
org.dellroad.querystream.jpa.querytype.SearchType<X>
- Type Parameters:
X- query result type
public class SearchType<X>
extends QueryType<X,jakarta.persistence.criteria.AbstractQuery<?>,jakarta.persistence.criteria.CriteriaQuery<X>,jakarta.persistence.TypedQuery<X>>
Represents the JPA Criteria API search query type.
-
Field Summary
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionjakarta.persistence.criteria.CriteriaQuery<X>createCriteriaQuery(jakarta.persistence.criteria.CriteriaBuilder builder) Create a new Criteria API query object of the appropriate type.jakarta.persistence.TypedQuery<X>createQuery(jakarta.persistence.EntityManager entityManager, jakarta.persistence.criteria.CriteriaQuery<X> query) Create a JPA query object of the appropriate type.jakarta.persistence.criteria.CriteriaQuery<X>select(jakarta.persistence.criteria.CriteriaQuery<X> query, jakarta.persistence.criteria.Selection<X> expression) Configure the result expression associated with a query.voidwhere(jakarta.persistence.criteria.AbstractQuery<?> query, jakarta.persistence.criteria.Expression<Boolean> restriction) Configure the restriction associated with the given query.voidwhere(jakarta.persistence.criteria.AbstractQuery<?> query, jakarta.persistence.criteria.Predicate restriction) Configure the restriction associated with the given query.
-
Constructor Details
-
SearchType
Constructor.- Parameters:
type- query result type- Throws:
IllegalArgumentException- iftypeis null
-
-
Method Details
-
createCriteriaQuery
public jakarta.persistence.criteria.CriteriaQuery<X> createCriteriaQuery(jakarta.persistence.criteria.CriteriaBuilder builder) Description copied from class:QueryTypeCreate a new Criteria API query object of the appropriate type.- Specified by:
createCriteriaQueryin classQueryType<X,jakarta.persistence.criteria.AbstractQuery<?>, jakarta.persistence.criteria.CriteriaQuery<X>, jakarta.persistence.TypedQuery<X>> - Parameters:
builder- criteria builder- Returns:
- new criteria query object
-
createQuery
public jakarta.persistence.TypedQuery<X> createQuery(jakarta.persistence.EntityManager entityManager, jakarta.persistence.criteria.CriteriaQuery<X> query) Description copied from class:QueryTypeCreate a JPA query object of the appropriate type.- Specified by:
createQueryin classQueryType<X,jakarta.persistence.criteria.AbstractQuery<?>, jakarta.persistence.criteria.CriteriaQuery<X>, jakarta.persistence.TypedQuery<X>> - Parameters:
entityManager- JPA entity managerquery- criteria query object- Returns:
- new executable JPA query object
-
where
public void where(jakarta.persistence.criteria.AbstractQuery<?> query, jakarta.persistence.criteria.Expression<Boolean> restriction) Description copied from class:QueryTypeConfigure the restriction associated with the given query. -
where
public void where(jakarta.persistence.criteria.AbstractQuery<?> query, jakarta.persistence.criteria.Predicate restriction) Description copied from class:QueryTypeConfigure the restriction associated with the given query. -
select
public jakarta.persistence.criteria.CriteriaQuery<X> select(jakarta.persistence.criteria.CriteriaQuery<X> query, jakarta.persistence.criteria.Selection<X> expression) Configure the result expression associated with a query.- Parameters:
query- criteria query objectexpression- query result- Returns:
- updated criteria query object
-