public class EntityListener<T>
extends DescriptorEventAdapter
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
POST_BUILD |
static java.lang.String |
POST_CLONE |
static java.lang.String |
POST_DELETE |
static java.lang.String |
POST_INSERT |
static java.lang.String |
POST_REFRESH |
static java.lang.String |
POST_UPDATE |
static java.lang.String |
PRE_PERSIST |
static java.lang.String |
PRE_REMOVE |
static java.lang.String |
PRE_UPDATE_WITH_CHANGES |
| Modifier | Constructor and Description |
|---|---|
protected |
EntityListener(java.lang.Class entityClass)
INTERNAL:
|
|
EntityListener(java.lang.Class<T> listenerClass,
java.lang.Class entityClass) |
| Modifier and Type | Method and Description |
|---|---|
void |
addEventMethod(java.lang.String event,
java.lang.reflect.Method method)
INTERNAL:
You can have multiple event methods for the same event, however, only
one event method per class is permitted.
|
protected T |
constructListenerInstance()
Construct an instance of the wrapped entity listener
This method will attempt to create the listener in a CDI injection
friendly manner and if that fails, reflectively instantiate the class
|
protected T |
createEntityListenerAndInjectDependencies(java.lang.Class<T> entityListenerClass)
Create the wrapped listener and trigger CDI injection.
|
java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> |
getAllEventMethods()
INTERNAL:
|
java.lang.Class |
getEntityClass()
INTERNAL:
|
protected java.util.List<java.lang.reflect.Method> |
getEventMethods(int eventCode)
INTERNAL:
|
protected java.util.List<java.lang.reflect.Method> |
getEventMethods(java.lang.String event)
INTERNAL:
|
protected java.lang.reflect.Method |
getLastEventMethod(java.lang.String event)
INTERNAL:
Assumes a check for event methods for the given event has been called
beforehand.
|
T |
getListener() |
java.lang.Class |
getListenerClass()
INTERNAL:
|
AbstractSession |
getOwningSession()
INTERNAL:
|
boolean |
hasCallbackMethods()
INTERNAL:
|
protected boolean |
hasEventMethods(int eventCode)
INTERNAL:
|
protected boolean |
hasEventMethods(java.lang.String event)
INTERNAL:
|
protected boolean |
hasOverriddenEventMethod(java.util.List<java.lang.reflect.Method> eventMethods,
java.lang.reflect.Method eventMethod)
INTERNAL:
|
protected boolean |
hasOverriddenEventMethod(java.lang.reflect.Method eventMethod,
int eventCode)
INTERNAL:
|
protected boolean |
hasOverriddenEventMethod(java.lang.reflect.Method eventMethod,
java.lang.String eventCode)
INTERNAL:
|
boolean |
isOverriddenEvent(DescriptorEvent event,
java.util.List<DescriptorEventManager> eventManagers)
INTERNAL:
Return true if listener has a lifecycle callback method that is
overridden in a subclass.
|
void |
postBuild(DescriptorEvent event)
INTERNAL:
|
void |
postClone(DescriptorEvent event)
INTERNAL:
|
void |
postDelete(DescriptorEvent event)
INTERNAL:
|
void |
postInsert(DescriptorEvent event)
INTERNAL:
|
void |
postRefresh(DescriptorEvent event)
INTERNAL:
|
void |
postUpdate(DescriptorEvent event)
INTERNAL:
|
void |
prePersist(DescriptorEvent event)
INTERNAL:
|
void |
preRemove(DescriptorEvent event)
INTERNAL:
|
void |
preUpdateWithChanges(DescriptorEvent event)
INTERNAL:
|
void |
setAllEventMethods(java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> methods)
INTERNAL:
|
void |
setOwningSession(AbstractSession owningSession)
INTERNAL:
|
void |
setPostBuildMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPostCloneMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPostDeleteMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPostInsertMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPostRefreshMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPostUpdateMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPrePersistMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPreRemoveMethod(java.lang.reflect.Method method)
INTERNAL:
|
void |
setPreUpdateWithChangesMethod(java.lang.reflect.Method method)
INTERNAL:
|
java.lang.String |
toString()
INTERNAL:
Used in the debugger.
|
protected void |
validateMethod(java.lang.reflect.Method method)
INTERNAL:
|
protected void |
validateMethodModifiers(java.lang.reflect.Method method)
INTERNAL:
|
public static final java.lang.String POST_BUILD
public static final java.lang.String POST_CLONE
public static final java.lang.String POST_DELETE
public static final java.lang.String POST_INSERT
public static final java.lang.String POST_REFRESH
public static final java.lang.String POST_UPDATE
public static final java.lang.String PRE_PERSIST
public static final java.lang.String PRE_REMOVE
public static final java.lang.String PRE_UPDATE_WITH_CHANGES
protected EntityListener(java.lang.Class entityClass)
public EntityListener(java.lang.Class<T> listenerClass, java.lang.Class entityClass)
public void addEventMethod(java.lang.String event,
java.lang.reflect.Method method)
protected T createEntityListenerAndInjectDependencies(java.lang.Class<T> entityListenerClass)
entityListenerClass - the EntityListener classprotected T constructListenerInstance()
public java.lang.Class getEntityClass()
public java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> getAllEventMethods()
public void setAllEventMethods(java.util.Map<java.lang.String,java.util.List<java.lang.reflect.Method>> methods)
public void setOwningSession(AbstractSession owningSession)
protected java.util.List<java.lang.reflect.Method> getEventMethods(int eventCode)
protected java.util.List<java.lang.reflect.Method> getEventMethods(java.lang.String event)
protected java.lang.reflect.Method getLastEventMethod(java.lang.String event)
public T getListener()
public java.lang.Class getListenerClass()
public AbstractSession getOwningSession()
public boolean hasCallbackMethods()
protected boolean hasEventMethods(int eventCode)
protected boolean hasEventMethods(java.lang.String event)
protected boolean hasOverriddenEventMethod(java.util.List<java.lang.reflect.Method> eventMethods,
java.lang.reflect.Method eventMethod)
protected boolean hasOverriddenEventMethod(java.lang.reflect.Method eventMethod,
int eventCode)
protected boolean hasOverriddenEventMethod(java.lang.reflect.Method eventMethod,
java.lang.String eventCode)
public boolean isOverriddenEvent(DescriptorEvent event,
java.util.List<DescriptorEventManager> eventManagers)
public void postBuild(DescriptorEvent event)
public void postClone(DescriptorEvent event)
public void postDelete(DescriptorEvent event)
public void postInsert(DescriptorEvent event)
public void postRefresh(DescriptorEvent event)
public void postUpdate(DescriptorEvent event)
public void prePersist(DescriptorEvent event)
public void preRemove(DescriptorEvent event)
public void preUpdateWithChanges(DescriptorEvent event)
public void setPostBuildMethod(java.lang.reflect.Method method)
public void setPostCloneMethod(java.lang.reflect.Method method)
public void setPostDeleteMethod(java.lang.reflect.Method method)
public void setPostInsertMethod(java.lang.reflect.Method method)
public void setPostRefreshMethod(java.lang.reflect.Method method)
public void setPostUpdateMethod(java.lang.reflect.Method method)
public void setPrePersistMethod(java.lang.reflect.Method method)
public void setPreRemoveMethod(java.lang.reflect.Method method)
public void setPreUpdateWithChangesMethod(java.lang.reflect.Method method)
public java.lang.String toString()
protected void validateMethod(java.lang.reflect.Method method)
protected void validateMethodModifiers(java.lang.reflect.Method method)