public interface TemplateOnlyQueryExtensionHandler extends ExtensionHandler
SparseTranslationOverrideStrategy
is an example use case. This is generally used in multitenant scenarios.| Modifier and Type | Method and Description |
|---|---|
ExtensionResultStatusType |
breakdown(Class<?> type)
Perform any breakdown operations.
|
ExtensionResultStatusType |
buildStatus(Object entity,
ExtensionResultHolder<ItemStatus> response) |
ExtensionResultStatusType |
filterResults(Class<?> type,
Object testObject,
List results)
Deprecated.
It's difficult to determine this efficiently at runtime. The current implementation will no longer check the use case described above.
|
ExtensionResultStatusType |
isValidState(ExtensionResultHolder<Boolean> response)
Determine if the current thread is in a valid state for sparse cache handling
|
ExtensionResultStatusType |
refineOrder(Class<?> type,
javax.persistence.criteria.CriteriaBuilder builder,
javax.persistence.criteria.CriteriaQuery criteria,
javax.persistence.criteria.Root root,
List<javax.persistence.criteria.Order> sorts)
Add sorting to the fetch query
|
ExtensionResultStatusType |
refineParameterRetrieve(Class<?> type,
Object testObject,
javax.persistence.criteria.CriteriaBuilder builder,
javax.persistence.criteria.CriteriaQuery criteria,
javax.persistence.criteria.Root root,
List<javax.persistence.criteria.Predicate> restrictions)
Add additional restrictions to the fetch query.
|
ExtensionResultStatusType |
refineQuery(Class<?> type,
Object testObject,
javax.persistence.TypedQuery query)
Finish the query - possibly setting parameters
|
ExtensionResultStatusType |
setup(Class<?> type)
Perform any setup operations.
|
getPriority, isEnabledExtensionResultStatusType refineQuery(Class<?> type, Object testObject, javax.persistence.TypedQuery query)
type - the class type for the querytestObject - supporting implementations may use this object to test for possible catalog query optimizations. This value can be null, in which case it is ignored.query - the final Query instance to embellishExtensionResultStatusType refineParameterRetrieve(Class<?> type, Object testObject, javax.persistence.criteria.CriteriaBuilder builder, javax.persistence.criteria.CriteriaQuery criteria, javax.persistence.criteria.Root root, List<javax.persistence.criteria.Predicate> restrictions)
refineQuery(Class, Object, TypedQuery) to set
actual parameter values before retrieving results.type - the class type for the querytestObject - supporting implementations may use this object to test for possible catalog query optimizations. This value can be null, in which case it is ignored.builder - criteria - root - restrictions - any additional JPA criteria restrictions should be added hereExtensionResultStatusType setup(Class<?> type)
type - the class type for the queryExtensionResultStatusType breakdown(Class<?> type)
type - the class type for the queryExtensionResultStatusType refineOrder(Class<?> type, javax.persistence.criteria.CriteriaBuilder builder, javax.persistence.criteria.CriteriaQuery criteria, javax.persistence.criteria.Root root, List<javax.persistence.criteria.Order> sorts)
type - the class type for the querybuilder - criteria - root - sorts - any additional JPA order expressions should be added hereExtensionResultStatusType isValidState(ExtensionResultHolder<Boolean> response)
response - ExtensionResultStatusType buildStatus(Object entity, ExtensionResultHolder<ItemStatus> response)
@Deprecated ExtensionResultStatusType filterResults(Class<?> type, Object testObject, List results)
type - testObject - results - Copyright © 2022. All rights reserved.