@DeclareRoles(value="org.imixs.ACCESSLEVEL.MANAGERACCESS") @RunAs(value="org.imixs.ACCESSLEVEL.MANAGERACCESS") public class AsyncEventScheduler extends Object
The AsyncEventScheduler runs on a non-persistent ejb timer with the interval 'ASYNCEVENT_PROCESSOR_INTERVAL' and an optional delay defined by 'ASYNCEVENT_PROCESSOR_INITIALDELAY'. To enable the processor 'ASYNCEVENT_PROCESSOR_ENABLED' must be set to true (default=false). 'ASYNCEVENT_PROCESSOR_DEADLOCK' deadlock timeout
In a clustered environment this timer runs in each cluster member that contains the EJB. So this means the non-persistent EJB Timer scales horizontal within a clustered environment – e.g. a Kubernetes cluster.
AsyncEventService| Modifier and Type | Field and Description |
|---|---|
static String |
ASYNCEVENT_PROCESSOR_DEADLOCK |
static String |
ASYNCEVENT_PROCESSOR_ENABLED |
static String |
ASYNCEVENT_PROCESSOR_INITIALDELAY |
static String |
ASYNCEVENT_PROCESSOR_INTERVAL |
static String |
EVENTLOG_TOPIC_ASYNC_EVENT |
| Constructor and Description |
|---|
AsyncEventScheduler() |
| Modifier and Type | Method and Description |
|---|---|
void |
init() |
void |
run(javax.ejb.Timer timer)
The method delegates the event processing to the stateless ejb
AsyncEventProcessor.
|
public static final String ASYNCEVENT_PROCESSOR_ENABLED
public static final String ASYNCEVENT_PROCESSOR_INTERVAL
public static final String ASYNCEVENT_PROCESSOR_INITIALDELAY
public static final String ASYNCEVENT_PROCESSOR_DEADLOCK
public static final String EVENTLOG_TOPIC_ASYNC_EVENT
@PostConstruct public void init()
public void run(javax.ejb.Timer timer)
Before processing the eventLog the method releases possible dead locks first. Both methods are running in separate transactions
Copyright © 2006–2020 Imixs Software Solutions GmbH. All rights reserved.