org.codehaus.groovy.grails.orm.hibernate.support
Class ClosureEventListener

java.lang.Object
  extended by org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener
All Implemented Interfaces:
java.io.Serializable, org.hibernate.event.PostDeleteEventListener, org.hibernate.event.PostInsertEventListener, org.hibernate.event.PostLoadEventListener, org.hibernate.event.PostUpdateEventListener, org.hibernate.event.PreDeleteEventListener, org.hibernate.event.PreLoadEventListener, org.hibernate.event.PreUpdateEventListener, org.hibernate.event.SaveOrUpdateEventListener

public class ClosureEventListener
extends java.lang.Object
implements org.hibernate.event.SaveOrUpdateEventListener, org.hibernate.event.PreLoadEventListener, org.hibernate.event.PostLoadEventListener, org.hibernate.event.PostInsertEventListener, org.hibernate.event.PostUpdateEventListener, org.hibernate.event.PostDeleteEventListener, org.hibernate.event.PreDeleteEventListener, org.hibernate.event.PreUpdateEventListener

Invokes closure events on domain entities such as beforeInsert, beforeUpdate and beforeDelete.

Also deals with auto time stamping of domain classes that have properties named 'lastUpdated' and/or 'dateCreated'.

Since:
1.3.5
See Also:
Serialized Form

Constructor Summary
ClosureEventListener(java.lang.Class<?> domainClazz, boolean failOnError, java.util.List failOnErrorPackages)
           
 
Method Summary
 void onPostDelete(org.hibernate.event.PostDeleteEvent event)
           
 void onPostInsert(org.hibernate.event.PostInsertEvent event)
           
 void onPostLoad(org.hibernate.event.PostLoadEvent event)
           
 void onPostUpdate(org.hibernate.event.PostUpdateEvent event)
           
 boolean onPreDelete(org.hibernate.event.PreDeleteEvent event)
           
 boolean onPreInsert(org.hibernate.event.PreInsertEvent event)
           
 void onPreLoad(org.hibernate.event.PreLoadEvent event)
           
 boolean onPreUpdate(org.hibernate.event.PreUpdateEvent event)
           
 void onSaveOrUpdate(org.hibernate.event.SaveOrUpdateEvent event)
           
 void onValidate(org.grails.datastore.mapping.engine.event.ValidationEvent event)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClosureEventListener

public ClosureEventListener(java.lang.Class<?> domainClazz,
                            boolean failOnError,
                            java.util.List failOnErrorPackages)
Method Detail

onSaveOrUpdate

public void onSaveOrUpdate(org.hibernate.event.SaveOrUpdateEvent event)
                    throws org.hibernate.HibernateException
Specified by:
onSaveOrUpdate in interface org.hibernate.event.SaveOrUpdateEventListener
Throws:
org.hibernate.HibernateException

onPreLoad

public void onPreLoad(org.hibernate.event.PreLoadEvent event)
Specified by:
onPreLoad in interface org.hibernate.event.PreLoadEventListener

onPostLoad

public void onPostLoad(org.hibernate.event.PostLoadEvent event)
Specified by:
onPostLoad in interface org.hibernate.event.PostLoadEventListener

onPostInsert

public void onPostInsert(org.hibernate.event.PostInsertEvent event)
Specified by:
onPostInsert in interface org.hibernate.event.PostInsertEventListener

onPostUpdate

public void onPostUpdate(org.hibernate.event.PostUpdateEvent event)
Specified by:
onPostUpdate in interface org.hibernate.event.PostUpdateEventListener

onPostDelete

public void onPostDelete(org.hibernate.event.PostDeleteEvent event)
Specified by:
onPostDelete in interface org.hibernate.event.PostDeleteEventListener

onPreDelete

public boolean onPreDelete(org.hibernate.event.PreDeleteEvent event)
Specified by:
onPreDelete in interface org.hibernate.event.PreDeleteEventListener

onPreUpdate

public boolean onPreUpdate(org.hibernate.event.PreUpdateEvent event)
Specified by:
onPreUpdate in interface org.hibernate.event.PreUpdateEventListener

onPreInsert

public boolean onPreInsert(org.hibernate.event.PreInsertEvent event)

onValidate

public void onValidate(org.grails.datastore.mapping.engine.event.ValidationEvent event)