List of usage examples for org.hibernate.event.spi AbstractPreDatabaseOperationEvent getEntity
@Override
public Object getEntity()
From source file:org.grails.orm.hibernate.support.ClosureEventListener.java
License:Apache License
private void synchronizePersisterState(AbstractPreDatabaseOperationEvent event, Object[] state) { Object entity = event.getEntity(); EntityPersister persister = event.getPersister(); String[] propertyNames = persister.getPropertyNames(); HashMap<Integer, Object> changedState = new HashMap<Integer, Object>(); for (int i = 0; i < propertyNames.length; i++) { String p = propertyNames[i]; MetaProperty metaProperty = domainMetaClass.getMetaProperty(p); if (ClosureEventTriggeringInterceptor.IGNORED.contains(p) || metaProperty == null) { continue; }// ww w .jav a 2 s.c o m Object value = metaProperty.getProperty(entity); if (state[i] != value) { changedState.put(i, value); } state[i] = value; persister.setPropertyValue(entity, i, value); } synchronizeEntityUpdateActionState(event, entity, changedState); }