org.grails.datastore.gorm.events
Class DomainEventListener

java.lang.Object
  extended by org.grails.datastore.mapping.engine.event.AbstractPersistenceEventListener
      extended by org.grails.datastore.gorm.events.DomainEventListener
All Implemented Interfaces:
java.util.EventListener, org.grails.datastore.mapping.engine.event.PersistenceEventListener, org.grails.datastore.mapping.model.MappingContext.Listener, org.springframework.context.ApplicationListener<org.springframework.context.ApplicationEvent>, org.springframework.context.event.SmartApplicationListener, org.springframework.core.Ordered

public class DomainEventListener
extends org.grails.datastore.mapping.engine.event.AbstractPersistenceEventListener
implements org.grails.datastore.mapping.model.MappingContext.Listener

An event listener that provides support for GORM domain events.

Since:
1.0

Field Summary
static java.lang.String EVENT_BEFORE_INSERT
           
static java.lang.Class[] ZERO_PARAMS
           
 
Fields inherited from class org.grails.datastore.mapping.engine.event.AbstractPersistenceEventListener
datastore
 
Fields inherited from interface org.grails.datastore.mapping.engine.event.PersistenceEventListener
DEFAULT_ORDER
 
Fields inherited from interface org.springframework.core.Ordered
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
 
Constructor Summary
DomainEventListener(org.grails.datastore.mapping.core.Datastore datastore)
           
 
Method Summary
 void afterDelete(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 void afterDelete(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PostDeleteEvent event)
           
 void afterInsert(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 void afterInsert(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PostInsertEvent event)
           
 void afterLoad(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 void afterLoad(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PostLoadEvent event)
           
 void afterUpdate(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 void afterUpdate(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PostUpdateEvent event)
           
protected  void autowireBeanProperties(java.lang.Object entity)
           
 boolean beforeDelete(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 boolean beforeDelete(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PreDeleteEvent event)
           
 boolean beforeInsert(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
          Deprecated. Use beforeInsert(org.grails.datastore.mapping.model.PersistentEntity, org.grails.datastore.mapping.engine.EntityAccess, org.grails.datastore.mapping.engine.event.PreInsertEvent) instead
 boolean beforeInsert(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PreInsertEvent event)
           
 void beforeLoad(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 void beforeLoad(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PreLoadEvent event)
           
 boolean beforeUpdate(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea)
           
 boolean beforeUpdate(org.grails.datastore.mapping.model.PersistentEntity entity, org.grails.datastore.mapping.engine.EntityAccess ea, org.grails.datastore.mapping.engine.event.PreUpdateEvent event)
           
protected  void onPersistenceEvent(org.grails.datastore.mapping.engine.event.AbstractPersistenceEvent event)
           
 void persistentEntityAdded(org.grails.datastore.mapping.model.PersistentEntity entity)
          
protected  void setVersion(org.grails.datastore.mapping.engine.EntityAccess ea)
           
 boolean supportsEventType(java.lang.Class<? extends org.springframework.context.ApplicationEvent> eventType)
          
 
Methods inherited from class org.grails.datastore.mapping.engine.event.AbstractPersistenceEventListener
getOrder, onApplicationEvent, supportsSourceType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

ZERO_PARAMS

public static final java.lang.Class[] ZERO_PARAMS

EVENT_BEFORE_INSERT

public static final java.lang.String EVENT_BEFORE_INSERT
See Also:
Constant Field Values
Constructor Detail

DomainEventListener

public DomainEventListener(org.grails.datastore.mapping.core.Datastore datastore)
Method Detail

onPersistenceEvent

protected void onPersistenceEvent(org.grails.datastore.mapping.engine.event.AbstractPersistenceEvent event)
Specified by:
onPersistenceEvent in class org.grails.datastore.mapping.engine.event.AbstractPersistenceEventListener

beforeInsert

public boolean beforeInsert(org.grails.datastore.mapping.model.PersistentEntity entity,
                            org.grails.datastore.mapping.engine.EntityAccess ea)
Deprecated. Use beforeInsert(org.grails.datastore.mapping.model.PersistentEntity, org.grails.datastore.mapping.engine.EntityAccess, org.grails.datastore.mapping.engine.event.PreInsertEvent) instead


beforeInsert

public boolean beforeInsert(org.grails.datastore.mapping.model.PersistentEntity entity,
                            org.grails.datastore.mapping.engine.EntityAccess ea,
                            org.grails.datastore.mapping.engine.event.PreInsertEvent event)

setVersion

protected void setVersion(org.grails.datastore.mapping.engine.EntityAccess ea)

beforeUpdate

public boolean beforeUpdate(org.grails.datastore.mapping.model.PersistentEntity entity,
                            org.grails.datastore.mapping.engine.EntityAccess ea)

beforeUpdate

public boolean beforeUpdate(org.grails.datastore.mapping.model.PersistentEntity entity,
                            org.grails.datastore.mapping.engine.EntityAccess ea,
                            org.grails.datastore.mapping.engine.event.PreUpdateEvent event)

beforeDelete

public boolean beforeDelete(org.grails.datastore.mapping.model.PersistentEntity entity,
                            org.grails.datastore.mapping.engine.EntityAccess ea)

beforeDelete

public boolean beforeDelete(org.grails.datastore.mapping.model.PersistentEntity entity,
                            org.grails.datastore.mapping.engine.EntityAccess ea,
                            org.grails.datastore.mapping.engine.event.PreDeleteEvent event)

beforeLoad

public void beforeLoad(org.grails.datastore.mapping.model.PersistentEntity entity,
                       org.grails.datastore.mapping.engine.EntityAccess ea)

beforeLoad

public void beforeLoad(org.grails.datastore.mapping.model.PersistentEntity entity,
                       org.grails.datastore.mapping.engine.EntityAccess ea,
                       org.grails.datastore.mapping.engine.event.PreLoadEvent event)

afterDelete

public void afterDelete(org.grails.datastore.mapping.model.PersistentEntity entity,
                        org.grails.datastore.mapping.engine.EntityAccess ea)

afterDelete

public void afterDelete(org.grails.datastore.mapping.model.PersistentEntity entity,
                        org.grails.datastore.mapping.engine.EntityAccess ea,
                        org.grails.datastore.mapping.engine.event.PostDeleteEvent event)

afterInsert

public void afterInsert(org.grails.datastore.mapping.model.PersistentEntity entity,
                        org.grails.datastore.mapping.engine.EntityAccess ea)

afterInsert

public void afterInsert(org.grails.datastore.mapping.model.PersistentEntity entity,
                        org.grails.datastore.mapping.engine.EntityAccess ea,
                        org.grails.datastore.mapping.engine.event.PostInsertEvent event)

afterUpdate

public void afterUpdate(org.grails.datastore.mapping.model.PersistentEntity entity,
                        org.grails.datastore.mapping.engine.EntityAccess ea)

afterUpdate

public void afterUpdate(org.grails.datastore.mapping.model.PersistentEntity entity,
                        org.grails.datastore.mapping.engine.EntityAccess ea,
                        org.grails.datastore.mapping.engine.event.PostUpdateEvent event)

afterLoad

public void afterLoad(org.grails.datastore.mapping.model.PersistentEntity entity,
                      org.grails.datastore.mapping.engine.EntityAccess ea)

afterLoad

public void afterLoad(org.grails.datastore.mapping.model.PersistentEntity entity,
                      org.grails.datastore.mapping.engine.EntityAccess ea,
                      org.grails.datastore.mapping.engine.event.PostLoadEvent event)

autowireBeanProperties

protected void autowireBeanProperties(java.lang.Object entity)

persistentEntityAdded

public void persistentEntityAdded(org.grails.datastore.mapping.model.PersistentEntity entity)

Specified by:
persistentEntityAdded in interface org.grails.datastore.mapping.model.MappingContext.Listener
See Also:
MappingContext.Listener.persistentEntityAdded( org.grails.datastore.mapping.model.PersistentEntity)

supportsEventType

public boolean supportsEventType(java.lang.Class<? extends org.springframework.context.ApplicationEvent> eventType)

Specified by:
supportsEventType in interface org.springframework.context.event.SmartApplicationListener
See Also:
SmartApplicationListener.supportsEventType( java.lang.Class)