public class EntityManagerInvocationProviderAdapter extends Object implements EntityManagerInvocationProvider
EntityManagerInvocationProvider
Subclasses can extend for easier implementation.Constructor and Description |
---|
EntityManagerInvocationProviderAdapter() |
Modifier and Type | Method and Description |
---|---|
void |
disableFilters(org.hibernate.Session session,
org.broadleafcommerce.common.web.BroadleafRequestContext context)
Disable
Filter for a session using @#getFilterEnablers() |
void |
enableFilters(org.hibernate.Session session,
org.broadleafcommerce.common.web.BroadleafRequestContext context)
Activate
Filter for a session using EntityManagerInvocationProvider.getFilterEnablers() |
List<FilterEnabler> |
getFilterEnablers() |
int |
getOrder() |
EntityManagerInvocationProviderResponse |
handleCriteriaOperation(boolean shouldPerformAnyFilter,
Object proxy,
Method method,
Object[] args,
javax.persistence.EntityManager em,
Object responseItem,
org.hibernate.Criteria criteria)
Handle a criteria operation
|
EntityManagerInvocationProviderResponse |
handleFindOperation(boolean shouldPerformAnyFilter,
Object proxy,
Method method,
Object[] args,
javax.persistence.EntityManager em,
Object responseItem)
Handle a find operation (
EntityManager.find(Class, Object) |
EntityManagerInvocationProviderResponse |
handlePersistence(boolean shouldPerformAnyFilter,
Object proxy,
Method method,
Object entity,
javax.persistence.EntityManager em)
Handle any call to
EntityManager.persist(Object) , EntityManager.merge(Object) or
EntityManager.remove(Object) |
EntityManagerInvocationProviderResponse |
handleQueryOperation(boolean shouldPerformAnyFilter,
Object proxy,
Method method,
Object[] args,
javax.persistence.EntityManager em,
Object responseItem,
Object query)
Handle a query operation
|
boolean |
isViableForEntityManager(javax.persistence.EntityManager em)
Determine whether this provider should be used with this EntityManager
|
void |
preHandleEntityManager(javax.persistence.EntityManager em)
Perform some work before handling any operation on an EntityManager
|
void |
setFilterEnablers(List<FilterEnabler> filterEnablers) |
void |
setOrder(int order)
The order in which this provider should be executed.
|
boolean |
shouldFilterOnFind(Class<?> entityClass)
Whether or not
Filter should be activated on a standard EntityManager.find(Class, Object) |
boolean |
shouldPerformFiltration(org.broadleafcommerce.common.web.BroadleafRequestContext context,
javax.persistence.EntityManager em)
Whether or not
Filter should be activated based on the broadleaf request context. |
boolean |
shouldPerformFiltration(org.broadleafcommerce.common.web.BroadleafRequestContext context,
org.hibernate.Session session)
Whether or not
Filter should be activated based on the broadleaf request context. |
public EntityManagerInvocationProviderAdapter()
public void disableFilters(org.hibernate.Session session, org.broadleafcommerce.common.web.BroadleafRequestContext context)
EntityManagerInvocationProvider
Filter
for a session using @#getFilterEnablers()
disableFilters
in interface EntityManagerInvocationProvider
session
- the Hibernate Sessioncontext
- the broadleaf request contextpublic List<FilterEnabler> getFilterEnablers()
getFilterEnablers
in interface EntityManagerInvocationProvider
public void setFilterEnablers(List<FilterEnabler> filterEnablers)
setFilterEnablers
in interface EntityManagerInvocationProvider
public void enableFilters(org.hibernate.Session session, org.broadleafcommerce.common.web.BroadleafRequestContext context)
EntityManagerInvocationProvider
Filter
for a session using EntityManagerInvocationProvider.getFilterEnablers()
enableFilters
in interface EntityManagerInvocationProvider
session
- the Hibernate Sessioncontext
- the broadleaf request contextpublic boolean shouldPerformFiltration(org.broadleafcommerce.common.web.BroadleafRequestContext context, javax.persistence.EntityManager em)
EntityManagerInvocationProvider
Filter
should be activated based on the broadleaf request context.shouldPerformFiltration
in interface EntityManagerInvocationProvider
context
- the broadleaf request contextpublic boolean shouldPerformFiltration(org.broadleafcommerce.common.web.BroadleafRequestContext context, org.hibernate.Session session)
EntityManagerInvocationProvider
Filter
should be activated based on the broadleaf request context.shouldPerformFiltration
in interface EntityManagerInvocationProvider
context
- the broadleaf request contextpublic boolean shouldFilterOnFind(Class<?> entityClass)
EntityManagerInvocationProvider
Filter
should be activated on a standard EntityManager.find(Class, Object)
shouldFilterOnFind
in interface EntityManagerInvocationProvider
entityClass
- the entity typepublic EntityManagerInvocationProviderResponse handlePersistence(boolean shouldPerformAnyFilter, Object proxy, Method method, Object entity, javax.persistence.EntityManager em)
EntityManagerInvocationProvider
EntityManager.persist(Object)
, EntityManager.merge(Object)
or
EntityManager.remove(Object)
handlePersistence
in interface EntityManagerInvocationProvider
shouldPerformAnyFilter
- should Hibernate filters be active at allproxy
- the proxied instance of EntityManager
method
- the method on EntityManager being calledentity
- the entity instanceem
- the entity managerpublic EntityManagerInvocationProviderResponse handleQueryOperation(boolean shouldPerformAnyFilter, Object proxy, Method method, Object[] args, javax.persistence.EntityManager em, Object responseItem, Object query)
EntityManagerInvocationProvider
handleQueryOperation
in interface EntityManagerInvocationProvider
shouldPerformAnyFilter
- should Hibernate filters be active at allproxy
- the proxied instance of Query
method
- the method on Query being calledargs
- the arguments provided to the method call on Queryem
- the entity managerresponseItem
- the result from any previous invocation of another invocation providerquery
- the original, un-proxied Query instanceQuery
public EntityManagerInvocationProviderResponse handleFindOperation(boolean shouldPerformAnyFilter, Object proxy, Method method, Object[] args, javax.persistence.EntityManager em, Object responseItem)
EntityManagerInvocationProvider
EntityManager.find(Class, Object)
handleFindOperation
in interface EntityManagerInvocationProvider
shouldPerformAnyFilter
- should Hibernate filters be active at allproxy
- the proxied instance of EntityManager
method
- the method on EntityManager being calledargs
- the arguments provided to the method call on Queryem
- the entity managerresponseItem
- the result from any previous invocation of another invocation providerpublic EntityManagerInvocationProviderResponse handleCriteriaOperation(boolean shouldPerformAnyFilter, Object proxy, Method method, Object[] args, javax.persistence.EntityManager em, Object responseItem, org.hibernate.Criteria criteria)
EntityManagerInvocationProvider
handleCriteriaOperation
in interface EntityManagerInvocationProvider
shouldPerformAnyFilter
- should Hibernate filters be active at allproxy
- the proxied instance of Criteria
method
- the method on Criteria being calledargs
- the arguments provided to the method call on Queryem
- the entity managerresponseItem
- the result from any previous invocation of another invocation providercriteria
- the original, un-proxied Criteria instanceCriteria
public void preHandleEntityManager(javax.persistence.EntityManager em)
EntityManagerInvocationProvider
preHandleEntityManager
in interface EntityManagerInvocationProvider
em
- the entity managerpublic int getOrder()
getOrder
in interface org.springframework.core.Ordered
public void setOrder(int order)
EntityManagerInvocationProvider
setOrder
in interface EntityManagerInvocationProvider
order
- the execution orderpublic boolean isViableForEntityManager(javax.persistence.EntityManager em)
EntityManagerInvocationProvider
isViableForEntityManager
in interface EntityManagerInvocationProvider
Copyright © 2019. All rights reserved.