List of usage examples for org.hibernate.event.spi PostUpdateEvent getOldState
public Object[] getOldState()
From source file:com.googlecode.hibernate.audit.listener.AuditListener.java
License:Open Source License
public void onPostUpdate(PostUpdateEvent event) { try {/* w w w . j a v a 2s .c om*/ String entityName = event.getPersister().getEntityName(); if (auditConfiguration.getExtensionManager().getAuditableInformationProvider() .isAuditable(entityName)) { AuditProcess auditProcess = auditConfiguration.getAuditProcessManager().get(event.getSession()); AuditWorkUnit workUnit = new UpdateAuditWorkUnit(entityName, event.getId(), event.getEntity(), event.getPersister(), event.getOldState(), event.getState()); auditProcess.addWorkUnit(workUnit); } } catch (RuntimeException e) { if (log.isErrorEnabled()) { log.error("RuntimeException occured during onPostUpdate, will re-throw the exception", e); } throw e; } }
From source file:es.logongas.ix3.dao.impl.rules.EventListenerImplRuleEngine.java
License:Apache License
@Override public void onPostUpdate(PostUpdateEvent pue) { autowired();//from w w w . j av a2s. c om EntityMode entityMode = pue.getPersister().getEntityMode(); RuleContext ruleContext = new RuleContextImplNoPrincipal(pue.getEntity(), getOriginalEntity(pue.getOldState(), pue.getPersister())); fireRules(ruleContext, pue.getPersister(), pue.getState(), entityMode, RuleGroupPredefined.PostUpdate.class, RuleGroupPredefined.PostInsertOrUpdate.class, RuleGroupPredefined.PostUpdateOrDelete.class, RuleGroupPredefined.PostInsertOrUpdateOrDelete.class); }
From source file:org.zanata.service.impl.ReindexChildrenEntityEventListener.java
License:Open Source License
@Override public void onPostUpdate(PostUpdateEvent event) { Object entity = event.getEntity(); if (entity instanceof HProject) { HProject project = (HProject) entity; statusFieldIndexInProject = getFieldIndex(statusFieldIndexInProject, event, "status"); EntityStatus oldStatus = (EntityStatus) event.getOldState()[statusFieldIndexInProject]; reindexIfStatusChangeInvolvesObsolete(project, oldStatus); } else if (entity instanceof HProjectIteration) { HProjectIteration iteration = (HProjectIteration) entity; statusFieldIndexInIteration = getFieldIndex(statusFieldIndexInIteration, event, "status"); EntityStatus oldStatus = (EntityStatus) event.getOldState()[statusFieldIndexInIteration]; reindexIfStatusChangeInvolvesObsolete(iteration, oldStatus); }//from w ww . j a v a 2 s .c o m }