Package org.jbpm.process.audit.jms
Class AsyncAuditLogReceiver
- java.lang.Object
-
- org.jbpm.process.audit.jms.AsyncAuditLogReceiver
-
- All Implemented Interfaces:
javax.jms.MessageListener
,AuditLoggerArchiveTreat
- Direct Known Subclasses:
AuditJMSProcessor
,AuditJMSProcessor
public class AsyncAuditLogReceiver extends Object implements javax.jms.MessageListener, AuditLoggerArchiveTreat
Asynchronous audit event receiver. Receives messages from JMS queue that it is attached to asMessageListener
. This is the second part of asynchronous BAM support backed by JMS (producer is provide byAsyncAuditLogProducer
class). Thus it shares the same message format that is TextMessage with Xstream serialized *Log classes (ProcessInstanceLog, NodeInstanceLog, VaraiableInstanceLog) as content. by default it uses entity manager factory and creates entity manager for each message although it provides getEntityManager method that can be overloaded by extensions to supply entity managers instead of creating it for every message. For more enterprise based solution this class can be extended by MDB implementations to provide additional details that are required by MDB such as:- annotations - @MessageDriven, @ActivationConfigurationProperty
- dependency injection - inject entity manager factory or entity manager by annotating methods
-
-
Constructor Summary
Constructors Constructor Description AsyncAuditLogReceiver(javax.persistence.EntityManagerFactory entityManagerFactory)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javax.persistence.EntityManager
getEntityManager()
javax.persistence.EntityManagerFactory
getEntityManagerFactory()
void
onMessage(javax.jms.Message message)
void
setEntityManagerFactory(javax.persistence.EntityManagerFactory entityManagerFactory)
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.jbpm.process.audit.AuditLoggerArchiveTreat
initArchiveLoggerProvider
-
-
-
-
Method Detail
-
onMessage
public void onMessage(javax.jms.Message message)
- Specified by:
onMessage
in interfacejavax.jms.MessageListener
-
getEntityManagerFactory
public javax.persistence.EntityManagerFactory getEntityManagerFactory()
-
setEntityManagerFactory
public void setEntityManagerFactory(javax.persistence.EntityManagerFactory entityManagerFactory)
-
getEntityManager
public javax.persistence.EntityManager getEntityManager()
-
-