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:
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 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
Author:
Lari Hotari
See Also:
Serialized Form

Field Summary
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller beforeInsertCaller
           
(package private)  groovy.lang.MetaProperty dateCreatedProperty
           
(package private)  groovy.lang.MetaClass domainMetaClass
           
(package private)  groovy.lang.MetaProperty errorsProperty
           
(package private)  boolean failOnErrorEnabled
           
(package private)  groovy.lang.MetaProperty lastUpdatedProperty
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postDeleteEventListener
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postInsertEventListener
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postLoadEventListener
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postUpdateEventListener
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller preDeleteEventListener
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller preLoadEventCaller
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller preUpdateEventListener
           
(package private)  org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller saveOrUpdateCaller
           
(package private)  boolean shouldTimestamp
           
(package private)  groovy.lang.MetaMethod validateMethod
           
(package private)  Map validateParams
           
 
Constructor Summary
ClosureEventListener(Class<?> domainClazz, boolean failOnError, 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)
           
 void onPreLoad(org.hibernate.event.PreLoadEvent event)
           
 boolean onPreUpdate(org.hibernate.event.PreUpdateEvent event)
           
 void onSaveOrUpdate(org.hibernate.event.SaveOrUpdateEvent event)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

saveOrUpdateCaller

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller saveOrUpdateCaller

beforeInsertCaller

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller beforeInsertCaller

preLoadEventCaller

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller preLoadEventCaller

postLoadEventListener

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postLoadEventListener

postInsertEventListener

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postInsertEventListener

postUpdateEventListener

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postUpdateEventListener

postDeleteEventListener

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller postDeleteEventListener

preDeleteEventListener

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller preDeleteEventListener

preUpdateEventListener

org.codehaus.groovy.grails.orm.hibernate.support.ClosureEventListener.EventTriggerCaller preUpdateEventListener

shouldTimestamp

boolean shouldTimestamp

dateCreatedProperty

groovy.lang.MetaProperty dateCreatedProperty

lastUpdatedProperty

groovy.lang.MetaProperty lastUpdatedProperty

domainMetaClass

groovy.lang.MetaClass domainMetaClass

failOnErrorEnabled

boolean failOnErrorEnabled

errorsProperty

groovy.lang.MetaProperty errorsProperty

validateParams

Map validateParams

validateMethod

groovy.lang.MetaMethod validateMethod
Constructor Detail

ClosureEventListener

public ClosureEventListener(Class<?> domainClazz,
                            boolean failOnError,
                            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