public class AsyncHistorySessionCommandContextCloseListener extends Object implements CommandContextCloseListener
HistoryJobEntity when the
CommandContext closes and adds them to the list of entities that will
be inserted to the database.
The reason why this is done at the very end, is because that way the historical data
can be optimized (some events cancel others, can be grouped, etc.)| Modifier and Type | Field and Description |
|---|---|
protected AsyncHistoryListener |
asyncHistoryListener |
protected AsyncHistorySession |
asyncHistorySession |
protected String |
dataFieldName |
protected String |
typeFieldName |
| Constructor and Description |
|---|
AsyncHistorySessionCommandContextCloseListener() |
AsyncHistorySessionCommandContextCloseListener(AsyncHistorySession asyncHistorySession,
AsyncHistoryListener asyncHistoryListener) |
| Modifier and Type | Method and Description |
|---|---|
void |
afterSessionsFlush(CommandContext commandContext)
Called when the
Session have been successfully flushed. |
void |
closed(CommandContext commandContext)
Called when the
CommandContext is successfully closed. |
void |
closeFailure(CommandContext commandContext)
Called when the
CommandContext has not been successfully closed due to an exception that happened. |
void |
closing(CommandContext commandContext)
Called when the
CommandContext is being closed, but no 'close logic' has been executed. |
protected void |
generateJson(JobServiceConfiguration jobServiceConfiguration,
Map<String,List<com.fasterxml.jackson.databind.node.ObjectNode>> jobData,
List<com.fasterxml.jackson.databind.node.ObjectNode> objectNodes,
String type) |
protected com.fasterxml.jackson.databind.node.ObjectNode |
generateJson(JobServiceConfiguration jobServiceConfiguration,
String type,
com.fasterxml.jackson.databind.node.ObjectNode historicData) |
AsyncHistoryListener |
getAsyncHistoryListener() |
AsyncHistorySession |
getAsyncHistorySession() |
String |
getDataFieldName() |
String |
getTypeFieldName() |
boolean |
multipleAllowed()
Determines if there are multiple occurrences allowed of this close listener
|
Integer |
order()
Determines the order in which the close listeners will be executed
|
void |
setAsyncHistoryListener(AsyncHistoryListener asyncHistoryListener) |
void |
setAsyncHistorySession(AsyncHistorySession asyncHistorySession) |
void |
setDataFieldName(String dataFieldName) |
void |
setTypeFieldName(String typeFieldName) |
protected AsyncHistorySession asyncHistorySession
protected AsyncHistoryListener asyncHistoryListener
protected String typeFieldName
protected String dataFieldName
public AsyncHistorySessionCommandContextCloseListener()
public AsyncHistorySessionCommandContextCloseListener(AsyncHistorySession asyncHistorySession, AsyncHistoryListener asyncHistoryListener)
public void closing(CommandContext commandContext)
CommandContextCloseListenerCommandContext is being closed, but no 'close logic' has been executed.
At this point, the TransactionContext (if applicable) has not yet been committed/rolledback and none of the Session instances have been flushed.
If an exception happens and it is not caught in this method: - The Session instances will *not* be flushed - The TransactionContext will be rolled back (if applicable)closing in interface CommandContextCloseListenerprotected void generateJson(JobServiceConfiguration jobServiceConfiguration, Map<String,List<com.fasterxml.jackson.databind.node.ObjectNode>> jobData, List<com.fasterxml.jackson.databind.node.ObjectNode> objectNodes, String type)
protected com.fasterxml.jackson.databind.node.ObjectNode generateJson(JobServiceConfiguration jobServiceConfiguration, String type, com.fasterxml.jackson.databind.node.ObjectNode historicData)
public void closed(CommandContext commandContext)
CommandContextCloseListenerCommandContext is successfully closed.
At this point, the TransactionContext (if applicable) has been successfully committed and no rollback has happened. All Session instances have been closed.
Note that throwing an exception here does *not* affect the transaction. The CommandContext will log the exception though.closed in interface CommandContextCloseListenerpublic void closeFailure(CommandContext commandContext)
CommandContextCloseListenerCommandContext has not been successfully closed due to an exception that happened.
Note that throwing an exception here does *not* affect the transaction. The CommandContext will log the exception though.closeFailure in interface CommandContextCloseListenerpublic void afterSessionsFlush(CommandContext commandContext)
CommandContextCloseListenerSession have been successfully flushed. When an exception happened during the flushing of the sessions, this method will not be called.
If an exception happens and it is not caught in this method: - The Session instances will *not* be flushed - The TransactionContext will be rolled back (if applicable)afterSessionsFlush in interface CommandContextCloseListenerpublic Integer order()
CommandContextCloseListenerorder in interface CommandContextCloseListenerpublic boolean multipleAllowed()
CommandContextCloseListenermultipleAllowed in interface CommandContextCloseListenerpublic AsyncHistorySession getAsyncHistorySession()
public void setAsyncHistorySession(AsyncHistorySession asyncHistorySession)
public AsyncHistoryListener getAsyncHistoryListener()
public void setAsyncHistoryListener(AsyncHistoryListener asyncHistoryListener)
public String getTypeFieldName()
public void setTypeFieldName(String typeFieldName)
public String getDataFieldName()
public void setDataFieldName(String dataFieldName)
Copyright © 2023 Flowable. All rights reserved.