Class JdbcExecutionContextDao
java.lang.Object
org.springframework.batch.core.repository.dao.AbstractJdbcBatchMetadataDao
org.springframework.batch.core.repository.dao.JdbcExecutionContextDao
- All Implemented Interfaces:
ExecutionContextDao
,org.springframework.beans.factory.InitializingBean
public class JdbcExecutionContextDao
extends AbstractJdbcBatchMetadataDao
implements ExecutionContextDao
JDBC DAO for
ExecutionContext
.
Stores execution context data related to both Step and Job using a different table for each.
- Author:
- Lucas Ward, Robert Kasanicky, Thomas Risberg, Michael Minella, David Turanski, Mahmoud Ben Hassine
-
Field Summary
Fields inherited from class org.springframework.batch.core.repository.dao.AbstractJdbcBatchMetadataDao
DEFAULT_EXIT_MESSAGE_LENGTH, DEFAULT_TABLE_PREFIX
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
void
deleteExecutionContext
(JobExecution jobExecution) Delete the execution context of the givenJobExecution
.void
deleteExecutionContext
(StepExecution stepExecution) Delete the execution context of the givenStepExecution
.getExecutionContext
(JobExecution jobExecution) getExecutionContext
(StepExecution stepExecution) void
saveExecutionContext
(JobExecution jobExecution) Persist the execution context associated with the given jobExecution, persistent entry for the context should not exist yet.void
saveExecutionContext
(StepExecution stepExecution) Persist the execution context associated with the given stepExecution, persistent entry for the context should not exist yet.void
saveExecutionContexts
(Collection<StepExecution> stepExecutions) Persist the execution context associated with each stepExecution in a given collection, persistent entry for the context should not exist yet.void
setCharset
(Charset charset) Set theCharset
to use when serializing/deserializing the execution context.void
setLobHandler
(org.springframework.jdbc.support.lob.LobHandler lobHandler) void
setSerializer
(ExecutionContextSerializer serializer) Setter forSerializer
implementationvoid
setShortContextLength
(int shortContextLength) The maximum size that an execution context can have and still be stored completely in short form in the columnSHORT_CONTEXT
.void
updateExecutionContext
(JobExecution jobExecution) Persist the updates of execution context associated with the given jobExecution.void
updateExecutionContext
(StepExecution stepExecution) Persist the updates of execution context associated with the given stepExecution.Methods inherited from class org.springframework.batch.core.repository.dao.AbstractJdbcBatchMetadataDao
getClobTypeToUse, getJdbcTemplate, getQuery, getTablePrefix, setClobTypeToUse, setJdbcTemplate, setTablePrefix
-
Constructor Details
-
JdbcExecutionContextDao
public JdbcExecutionContextDao()
-
-
Method Details
-
setSerializer
Setter forSerializer
implementation- Parameters:
serializer
-ExecutionContextSerializer
instance to use.
-
setShortContextLength
public void setShortContextLength(int shortContextLength) The maximum size that an execution context can have and still be stored completely in short form in the columnSHORT_CONTEXT
. Anything longer than this will overflow into large-object storage, and the first part only will be retained in the short form for readability. Default value is 2500. Clients using multi-bytes charsets on the database server may need to reduce this value to as little as half the value of the column size.- Parameters:
shortContextLength
- int max length of the short context.
-
setCharset
Set theCharset
to use when serializing/deserializing the execution context. Must not benull
. Defaults to "UTF-8".- Parameters:
charset
- to use when serializing/deserializing the execution context.- Since:
- 5.0
-
getExecutionContext
- Specified by:
getExecutionContext
in interfaceExecutionContextDao
- Parameters:
jobExecution
-JobExecution
instance that contains the context.- Returns:
- execution context associated with the given jobExecution
-
getExecutionContext
- Specified by:
getExecutionContext
in interfaceExecutionContextDao
- Parameters:
stepExecution
-StepExecution
instance that contains the context.- Returns:
- execution context associated with the given stepExecution
-
updateExecutionContext
Description copied from interface:ExecutionContextDao
Persist the updates of execution context associated with the given jobExecution. Persistent entry should already exist for this context.- Specified by:
updateExecutionContext
in interfaceExecutionContextDao
- Parameters:
jobExecution
-JobExecution
instance that contains the context.
-
updateExecutionContext
Description copied from interface:ExecutionContextDao
Persist the updates of execution context associated with the given stepExecution. Persistent entry should already exist for this context.- Specified by:
updateExecutionContext
in interfaceExecutionContextDao
- Parameters:
stepExecution
-StepExecution
instance that contains the context.
-
saveExecutionContext
Description copied from interface:ExecutionContextDao
Persist the execution context associated with the given jobExecution, persistent entry for the context should not exist yet.- Specified by:
saveExecutionContext
in interfaceExecutionContextDao
- Parameters:
jobExecution
-JobExecution
instance that contains the context.
-
saveExecutionContext
Description copied from interface:ExecutionContextDao
Persist the execution context associated with the given stepExecution, persistent entry for the context should not exist yet.- Specified by:
saveExecutionContext
in interfaceExecutionContextDao
- Parameters:
stepExecution
-StepExecution
instance that contains the context.
-
saveExecutionContexts
Description copied from interface:ExecutionContextDao
Persist the execution context associated with each stepExecution in a given collection, persistent entry for the context should not exist yet.- Specified by:
saveExecutionContexts
in interfaceExecutionContextDao
- Parameters:
stepExecutions
- a collection ofStepExecution
s that contain the contexts.
-
deleteExecutionContext
Delete the execution context of the givenJobExecution
.- Specified by:
deleteExecutionContext
in interfaceExecutionContextDao
- Parameters:
jobExecution
-JobExecution
that contains the context to delete.
-
deleteExecutionContext
Delete the execution context of the givenStepExecution
.- Specified by:
deleteExecutionContext
in interfaceExecutionContextDao
- Parameters:
stepExecution
-StepExecution
that contains the context to delete.
-
setLobHandler
public void setLobHandler(org.springframework.jdbc.support.lob.LobHandler lobHandler) -
afterPropertiesSet
- Specified by:
afterPropertiesSet
in interfaceorg.springframework.beans.factory.InitializingBean
- Overrides:
afterPropertiesSet
in classAbstractJdbcBatchMetadataDao
- Throws:
Exception
-