public class JPASearchProcessor extends BaseSearchProcessor
Implementation of BaseSearchProcessor that works with JPA.
This class is designed to be used as a singleton. The constructor requires a MetadataUtil instance. Each MetadataUtil instance is typically associated with a single persistence unit (i.e. EntityManagerFactory). A JPASearchProcessor can only be used with EntityManagers that are associated with the same persistence unit as the MetadataUtil. If an application has multiple persistence units, it will need to have multiple corresponding Search Processors.
BaseSearchProcessor.AliasNode, BaseSearchProcessor.SearchContextINJECTION_CHECK, metadataUtil, qlType, QLTYPE_EQL, QLTYPE_HQL, ROOT_PATH, rootAlias| Constructor and Description |
|---|
JPASearchProcessor(MetadataUtil mdu) |
| Modifier and Type | Method and Description |
|---|---|
int |
count(javax.persistence.EntityManager entityManager,
Class<?> searchClass,
ISearch search)
Returns the total number of results that would be returned using the
given
ISearch if there were no paging or maxResult limits. |
int |
count(javax.persistence.EntityManager entityManager,
ISearch search)
Returns the total number of results that would be returned using the
given
ISearch if there were no paging or maxResult limits. |
List |
search(javax.persistence.EntityManager entityManager,
Class<?> searchClass,
ISearch search)
Search for objects based on the search parameters in the specified
ISearch object. |
List |
search(javax.persistence.EntityManager entityManager,
ISearch search)
Search for objects based on the search parameters in the specified
ISearch object. |
SearchResult |
searchAndCount(javax.persistence.EntityManager entityManager,
Class<?> searchClass,
ISearch search)
Returns a
SearchResult object that includes the list of
results like search() and the total length like
searchLength. |
SearchResult |
searchAndCount(javax.persistence.EntityManager entityManager,
ISearch search)
Returns a
SearchResult object that includes the list of
results like search() and the total length like
searchLength. |
Object |
searchUnique(javax.persistence.EntityManager entityManager,
Class<?> entityClass,
ISearch search)
Search for a single result using the given parameters.
|
Object |
searchUnique(javax.persistence.EntityManager entityManager,
ISearch search)
Search for a single result using the given parameters.
|
addExplicitNullChecks, appendCustomExpression, appendCustomExpression, applyFetches, checkAndCleanFetches, checkAndCleanFields, checkAndCleanFilters, checkAndCleanSorts, filterToQL, generateFromClause, generateJoins, generateOrderByClause, generateQL, generateRowCountQL, generateSelectClause, generateSimpleAllOrSome, generateSubquery, generateWhereClause, getAliasForPathIfItExists, getFilterFromExample, getFilterFromExample, getMetadataUtil, getOrCreateAlias, getPathRef, negate, param, prepareValue, securityCheckProperty, setFetchOnAliasNodeAndAllAncestors, setRootAlias, splitPathpublic JPASearchProcessor(MetadataUtil mdu)
public List search(javax.persistence.EntityManager entityManager, ISearch search)
ISearch object.ISearchpublic List search(javax.persistence.EntityManager entityManager, Class<?> searchClass, ISearch search)
ISearch object. Uses the specified searchClass, ignoring the
searchClass specified on the search itself.ISearchpublic int count(javax.persistence.EntityManager entityManager,
ISearch search)
ISearch if there were no paging or maxResult limits.ISearchpublic int count(javax.persistence.EntityManager entityManager,
Class<?> searchClass,
ISearch search)
ISearch if there were no paging or maxResult limits.
Uses the specified searchClass, ignoring the searchClass specified on the
search itself.ISearchpublic SearchResult searchAndCount(javax.persistence.EntityManager entityManager, ISearch search)
SearchResult object that includes the list of
results like search() and the total length like
searchLength.ISearchpublic SearchResult searchAndCount(javax.persistence.EntityManager entityManager, Class<?> searchClass, ISearch search)
SearchResult object that includes the list of
results like search() and the total length like
searchLength. Uses the specified searchClass, ignoring the
searchClass specified on the search itself.ISearchpublic Object searchUnique(javax.persistence.EntityManager entityManager, ISearch search) throws javax.persistence.NonUniqueResultException
javax.persistence.NonUniqueResultExceptionpublic Object searchUnique(javax.persistence.EntityManager entityManager, Class<?> entityClass, ISearch search) throws javax.persistence.NonUniqueResultException
javax.persistence.NonUniqueResultExceptionCopyright © 2008-2013. All Rights Reserved.