List of usage examples for org.hibernate.action.spi AfterTransactionCompletionProcess AfterTransactionCompletionProcess
AfterTransactionCompletionProcess
From source file:com.googlecode.hibernate.audit.synchronization.AuditProcessManager.java
License:Open Source License
public AuditProcess get(EventSource session) { final Transaction transaction = session.accessTransaction(); AuditProcess auditProcess = auditProcesses.get(transaction); if (auditProcess == null) { auditProcess = new AuditProcess(auditConfiguration, session); auditProcesses.put(transaction, auditProcess); session.getActionQueue().registerProcess(new BeforeTransactionCompletionProcess() { @Override/*from ww w.j a v a 2s . c om*/ public void doBeforeTransactionCompletion(SessionImplementor session) { AuditProcess process = auditProcesses.get(transaction); if (process != null) { process.doBeforeTransactionCompletion(session); } } }); session.getActionQueue().registerProcess(new AfterTransactionCompletionProcess() { @Override public void doAfterTransactionCompletion(boolean success, SharedSessionContractImplementor session) { auditProcesses.remove(transaction); } }); } return auditProcess; }
From source file:com.googlecode.hibernate.audit.synchronization.AuditSynchronizationManager.java
License:Open Source License
public AuditSynchronization get(EventSource session) { final Transaction transaction = session.getTransaction(); AuditSynchronization synchronization = syncronizations.get(transaction); if (synchronization == null) { synchronization = new AuditSynchronization(this, session); syncronizations.put(transaction, synchronization); session.getActionQueue().registerProcess(synchronization); session.getActionQueue().registerProcess(new AfterTransactionCompletionProcess() { public void doAfterTransactionCompletion(boolean success, SessionImplementor session) { syncronizations.remove(transaction); }//from w w w.ja v a 2 s . c o m }); //auditConfiguration.getExtensionManager().getTransactionSyncronization().registerSynchronization(session, synchronization); } return synchronization; }
From source file:de.dktk.dd.rpb.portal.audit.AuditLogListener.java
License:Open Source License
private void audit(AbstractEvent hibernateEvent, final AuditLog auditLog) { hibernateEvent.getSession().getActionQueue().registerProcess(new AfterTransactionCompletionProcess() { @Override//from ww w .j a va 2 s .c om public void doAfterTransactionCompletion(boolean success, SessionImplementor session) { if (success) { auditLogService.log(auditLog); } } }); }