Example usage for org.hibernate.event.spi PostDeleteEvent getEntity

List of usage examples for org.hibernate.event.spi PostDeleteEvent getEntity

Introduction

In this page you can find the example usage for org.hibernate.event.spi PostDeleteEvent getEntity.

Prototype

public Object getEntity() 

Source Link

Usage

From source file:at.molindo.esi4j.module.hibernate.HibernateEventListener.java

License:Apache License

@Override
public void onPostDelete(PostDeleteEvent event) {
    EventSession eventSession = findEventSession(event.getSession());
    if (eventSession != null) {
        eventSession.onPostDelete(event.getEntity());
    } else {//from   w w w .  j a  va  2 s . co  m
        _batchedEventProcessor.onPostDelete(event.getEntity());
    }
}

From source file:com.corundumstudio.hibernate.dsc.QueryCacheEntityListener.java

License:Apache License

@Override
public void onPostDelete(PostDeleteEvent event) {
    Set<Entry<String, QueryListenerEntry>> values = getValue(event.getPersister());
    for (Entry<String, QueryListenerEntry> entry : values) {
        InsertOrDeleteCommand command = new InsertOrDeleteCommand();
        CacheCallback handler = entry.getValue().getHandler();
        handler.commonParams(command, event.getEntity());
        handler.onInsertOrDelete(command, event.getEntity());

        DynamicQueryCache queryCache = getQueryCache(event.getPersister(), entry.getKey(), entry.getValue());
        removeResult(queryCache, entry.getValue(), command, event.getSession());
    }//from   w  ww.  j a v a  2 s.  c  o  m
}

From source file:com.googlecode.hibernate.audit.listener.AuditListener.java

License:Open Source License

public void onPostDelete(PostDeleteEvent event) {
    try {//from  w  ww  . j  a v  a 2s  . c  o  m
        String entityName = event.getPersister().getEntityName();

        if (auditConfiguration.getExtensionManager().getAuditableInformationProvider()
                .isAuditable(entityName)) {
            AuditProcess auditProcess = auditConfiguration.getAuditProcessManager().get(event.getSession());

            AuditWorkUnit workUnit = new DeleteAuditWorkUnit(entityName, event.getId(), event.getEntity(),
                    event.getPersister());
            auditProcess.addWorkUnit(workUnit);
        }
    } catch (RuntimeException e) {
        if (log.isErrorEnabled()) {
            log.error("RuntimeException occured during onPostDelete, will re-throw the exception", e);
        }
        throw e;
    }
}

From source file:com.invariantproperties.sandbox.springentitylistener.listener.HibernateEntityListenersAdapter.java

License:Apache License

/**
 * @see org.hibernate.event.spi.PostDeleteEventListener#onPostDelete(org.hibernate
 *      .event.spi.PostDeleteEvent)/*  ww  w  . j  av  a  2  s  .  co  m*/
 */
@Override
public void onPostDelete(PostDeleteEvent event) {
    execute(postRemove, event.getEntity());
}

From source file:de.dktk.dd.rpb.portal.audit.AuditLogListener.java

License:Open Source License

@Override
public void onPostDelete(PostDeleteEvent event) {
    audit(event, Deletion, event.getEntity());
}

From source file:es.logongas.ix3.dao.impl.rules.EventListenerImplRuleEngine.java

License:Apache License

@Override
public void onPostDelete(PostDeleteEvent pde) {
    autowired();//  w ww  .ja v  a  2  s  . c o m
    EntityMode entityMode = pde.getPersister().getEntityMode();

    RuleContext ruleContext = new RuleContextImplNoPrincipal(pde.getEntity(), null);

    fireRules(ruleContext, pde.getPersister(), null, entityMode, RuleGroupPredefined.PostDelete.class,
            RuleGroupPredefined.PostInsertOrUpdateOrDelete.class, RuleGroupPredefined.PostUpdateOrDelete.class);
}

From source file:org.audit4j.integration.hibernate.listener.AuditPostDeleteEventListenerImpl.java

License:Apache License

@Override
public void onPostDelete(PostDeleteEvent event) {
    AuditManager.getInstance()/*ww w.  ja  v a  2s .c  o m*/
            .audit(new EventBuilder().addAction("delete " + event.getEntity().getClass().toString())
                    .addField(event.getEntity().getClass().toString(), event.getEntity()).build());
}

From source file:org.cgiar.ccafs.marlo.data.HibernateAuditLogListener.java

License:Open Source License

@Override
public void onPostDelete(PostDeleteEvent postDeleteEvent) {

    Object entity = postDeleteEvent.getEntity();
    LOG.debug("begin onPostDelete for Entity : " + entity);

    AuditLogContext auditLogContext = AuditLogContextProvider.getAuditLogContext();

    /**//from   ww  w .jav a  2 s  .c o  m
     * This is because our save(entity), update(entity) and delete(entity) methods on our DAOs should not
     * execute the listeners. There might be a better way to do this like conditionally active the listeners.
     */
    if (auditLogContext.getActionName() == null
            && CollectionUtils.isEmpty(auditLogContext.getRelationsNames())) {
        LOG.debug("auditLogContext has not been initiliazed for this request, so not audit logging");
        return;
    }

    /**
     * We might delete many entities on a single request, but we only want to do the audit logging on one.
     */
    if (!entity.getClass().getCanonicalName().equals(auditLogContext.getEntityCanonicalName())) {
        LOG.debug("Entity : " + entity + " , is not the entity we want to audit log");
        return;
    }

    HashMap<String, Object> deleteRecord = new HashMap<>();
    if (entity instanceof IAuditLog) {
        deleteRecord.put(IAuditLog.ENTITY, entity);
        deleteRecord.put(IAuditLog.PRINCIPAL, new Long(1));
        auditLogContext.getDeletes().add(deleteRecord);

        ClassMetadata classMetadata = postDeleteEvent.getSession().getSessionFactory()
                .getClassMetadata(entity.getClass());
        Type[] types = classMetadata.getPropertyTypes();
        auditLogContext.getDeletes().addAll(this.relations(postDeleteEvent.getDeletedState(), types,
                ((IAuditLog) entity).getId(), true, postDeleteEvent.getSession(), entity));
    }

    postDeleteEvent.getSession().getActionQueue()
            .registerProcess(new MARLOAuditBeforeTransactionCompletionProcess());
}

From source file:org.ednovo.gooru.hibernate.configsettings.HibernateLogger.java

License:Open Source License

@Override
public void onPostDelete(PostDeleteEvent event) {
    final Serializable entityId = event.getPersister().hasIdentifierProperty()
            ? event.getPersister().getIdentifier(event.getEntity(), event.getSession())
            : null;/*  w ww .j av a2s . c om*/
    final String entityName = event.getPersister().getEntityName();
    final Date transTime = new Date();
}

From source file:org.ednovo.gooru.infrastructure.persistence.hibernate.HibernateLogger.java

License:Open Source License

@Override
public void onPostDelete(PostDeleteEvent event) {
    final Serializable entityId = event.getPersister().hasIdentifierProperty()
            ? event.getPersister().getIdentifier(event.getEntity(), event.getSession())
            : null;/*w ww .j  a  va 2 s . co  m*/
    final String entityName = event.getPersister().getEntityName();
    final Date transTime = new Date();
    LOGGER.debug("{ \"operation\" : \"DELETE\"  \"entity\" : \"" + entityId + "\" \"type\" : \"" + entityName
            + "\" \"time\" : \"" + new SimpleDateFormat().format(transTime) + "\" \"userId\" : \""
            + UserGroupSupport.getCurrentUserUid() + "\" \"eventName\" : \""
            + UserGroupSupport.getLog().get("eventName") + "\"");
}