Example usage for org.hibernate.event.spi PostUpdateEvent getOldState

List of usage examples for org.hibernate.event.spi PostUpdateEvent getOldState

Introduction

In this page you can find the example usage for org.hibernate.event.spi PostUpdateEvent getOldState.

Prototype

public Object[] getOldState() 

Source Link

Usage

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
}