Class LazyBootPersistenceManager
- java.lang.Object
-
- fish.payara.jbatch.persistence.rdbms.LazyBootPersistenceManager
-
- All Implemented Interfaces:
com.ibm.jbatch.container.services.IPersistenceManagerService
,com.ibm.jbatch.spi.services.IBatchServiceBase
public class LazyBootPersistenceManager extends Object implements com.ibm.jbatch.container.services.IPersistenceManagerService
As the persistence manager is required at boot of the JBatch infrastructure previously we had to query the database to determine the correct subclass to use at boot which hurts server boot time. This class prevents that by proxying calls through itself and only accessing the database when strictly necessay- Author:
- steve
-
-
Constructor Summary
Constructors Constructor Description LazyBootPersistenceManager()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description void
createCheckpointData(com.ibm.jbatch.container.persistence.CheckpointDataKey cdk, com.ibm.jbatch.container.persistence.CheckpointData cd)
com.ibm.jbatch.container.jobinstance.RuntimeFlowInSplitExecution
createFlowInSplitExecution(jakarta.batch.runtime.JobInstance ji, jakarta.batch.runtime.BatchStatus bs)
com.ibm.jbatch.container.jobinstance.RuntimeJobExecution
createJobExecution(jakarta.batch.runtime.JobInstance ji, Properties prprts, jakarta.batch.runtime.BatchStatus bs)
jakarta.batch.runtime.JobInstance
createJobInstance(String string, String string1, String string2)
com.ibm.jbatch.container.status.JobStatus
createJobStatus(long l)
com.ibm.jbatch.container.jobinstance.StepExecutionImpl
createStepExecution(long l, com.ibm.jbatch.container.context.impl.StepContextImpl sci)
com.ibm.jbatch.container.status.StepStatus
createStepStatus(long l)
jakarta.batch.runtime.JobInstance
createSubJobInstance(String string, String string1)
com.ibm.jbatch.container.persistence.CheckpointData
getCheckpointData(com.ibm.jbatch.container.persistence.CheckpointDataKey cdk)
String
getJobCurrentTag(long l)
long
getJobInstanceIdByExecutionId(long l)
com.ibm.jbatch.container.status.JobStatus
getJobStatus(long l)
com.ibm.jbatch.container.status.JobStatus
getJobStatusFromExecution(long l)
long
getMostRecentExecutionId(long l)
Map<String,jakarta.batch.runtime.StepExecution>
getMostRecentStepExecutionsForJobInstance(long l)
Properties
getParameters(long l)
jakarta.batch.runtime.StepExecution
getStepExecutionByStepExecutionId(long l)
List<jakarta.batch.runtime.StepExecution>
getStepExecutionsForJobExecution(long l)
com.ibm.jbatch.container.status.StepStatus
getStepStatus(long l, String string)
String
getTagName(long l)
void
init(com.ibm.jbatch.spi.services.IBatchConfig ibc)
Map<Long,String>
jobOperatorGetExternalJobInstanceData()
com.ibm.jbatch.container.services.IJobExecution
jobOperatorGetJobExecution(long l)
List<com.ibm.jbatch.container.services.IJobExecution>
jobOperatorGetJobExecutions(long l)
int
jobOperatorGetJobInstanceCount(String string)
int
jobOperatorGetJobInstanceCount(String string, String string1)
List<Long>
jobOperatorGetJobInstanceIds(String string, int i, int i1)
List<Long>
jobOperatorGetJobInstanceIds(String string, String string1, int i, int i1)
Set<Long>
jobOperatorGetRunningExecutions(String string)
String
jobOperatorQueryJobExecutionBatchStatus(long l)
String
jobOperatorQueryJobExecutionExitStatus(long l)
long
jobOperatorQueryJobExecutionJobInstanceId(long l)
Timestamp
jobOperatorQueryJobExecutionTimestamp(long l, com.ibm.jbatch.container.services.IPersistenceManagerService.TimestampType tt)
void
markJobStarted(long l, Timestamp tmstmp)
void
purge(String string)
void
shutdown()
void
updateBatchStatusOnly(long l, jakarta.batch.runtime.BatchStatus bs, Timestamp tmstmp)
void
updateCheckpointData(com.ibm.jbatch.container.persistence.CheckpointDataKey cdk, com.ibm.jbatch.container.persistence.CheckpointData cd)
void
updateJobStatus(long l, com.ibm.jbatch.container.status.JobStatus js)
void
updateStepExecution(com.ibm.jbatch.container.context.impl.StepContextImpl sci)
void
updateStepStatus(long l, com.ibm.jbatch.container.status.StepStatus ss)
void
updateWithFinalExecutionStatusesAndTimestamps(long l, jakarta.batch.runtime.BatchStatus bs, String string, Timestamp tmstmp)
void
updateWithFinalPartitionAggregateStepExecution(long l, com.ibm.jbatch.container.context.impl.StepContextImpl sci)
-
-
-
Method Detail
-
jobOperatorGetJobInstanceCount
public int jobOperatorGetJobInstanceCount(String string)
- Specified by:
jobOperatorGetJobInstanceCount
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorGetJobInstanceCount
public int jobOperatorGetJobInstanceCount(String string, String string1)
- Specified by:
jobOperatorGetJobInstanceCount
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorGetExternalJobInstanceData
public Map<Long,String> jobOperatorGetExternalJobInstanceData()
- Specified by:
jobOperatorGetExternalJobInstanceData
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorGetJobInstanceIds
public List<Long> jobOperatorGetJobInstanceIds(String string, int i, int i1)
- Specified by:
jobOperatorGetJobInstanceIds
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorGetJobInstanceIds
public List<Long> jobOperatorGetJobInstanceIds(String string, String string1, int i, int i1)
- Specified by:
jobOperatorGetJobInstanceIds
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorQueryJobExecutionTimestamp
public Timestamp jobOperatorQueryJobExecutionTimestamp(long l, com.ibm.jbatch.container.services.IPersistenceManagerService.TimestampType tt)
- Specified by:
jobOperatorQueryJobExecutionTimestamp
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorQueryJobExecutionBatchStatus
public String jobOperatorQueryJobExecutionBatchStatus(long l)
- Specified by:
jobOperatorQueryJobExecutionBatchStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorQueryJobExecutionExitStatus
public String jobOperatorQueryJobExecutionExitStatus(long l)
- Specified by:
jobOperatorQueryJobExecutionExitStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorQueryJobExecutionJobInstanceId
public long jobOperatorQueryJobExecutionJobInstanceId(long l) throws jakarta.batch.operations.NoSuchJobExecutionException
- Specified by:
jobOperatorQueryJobExecutionJobInstanceId
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
- Throws:
jakarta.batch.operations.NoSuchJobExecutionException
-
getStepExecutionsForJobExecution
public List<jakarta.batch.runtime.StepExecution> getStepExecutionsForJobExecution(long l)
- Specified by:
getStepExecutionsForJobExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getMostRecentStepExecutionsForJobInstance
public Map<String,jakarta.batch.runtime.StepExecution> getMostRecentStepExecutionsForJobInstance(long l)
- Specified by:
getMostRecentStepExecutionsForJobInstance
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateBatchStatusOnly
public void updateBatchStatusOnly(long l, jakarta.batch.runtime.BatchStatus bs, Timestamp tmstmp)
- Specified by:
updateBatchStatusOnly
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
markJobStarted
public void markJobStarted(long l, Timestamp tmstmp)
- Specified by:
markJobStarted
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateWithFinalExecutionStatusesAndTimestamps
public void updateWithFinalExecutionStatusesAndTimestamps(long l, jakarta.batch.runtime.BatchStatus bs, String string, Timestamp tmstmp)
- Specified by:
updateWithFinalExecutionStatusesAndTimestamps
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorGetJobExecution
public com.ibm.jbatch.container.services.IJobExecution jobOperatorGetJobExecution(long l)
- Specified by:
jobOperatorGetJobExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getParameters
public Properties getParameters(long l) throws jakarta.batch.operations.NoSuchJobExecutionException
- Specified by:
getParameters
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
- Throws:
jakarta.batch.operations.NoSuchJobExecutionException
-
jobOperatorGetJobExecutions
public List<com.ibm.jbatch.container.services.IJobExecution> jobOperatorGetJobExecutions(long l)
- Specified by:
jobOperatorGetJobExecutions
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
jobOperatorGetRunningExecutions
public Set<Long> jobOperatorGetRunningExecutions(String string)
- Specified by:
jobOperatorGetRunningExecutions
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getJobCurrentTag
public String getJobCurrentTag(long l)
- Specified by:
getJobCurrentTag
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
purge
public void purge(String string)
- Specified by:
purge
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getJobStatusFromExecution
public com.ibm.jbatch.container.status.JobStatus getJobStatusFromExecution(long l)
- Specified by:
getJobStatusFromExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getJobInstanceIdByExecutionId
public long getJobInstanceIdByExecutionId(long l) throws jakarta.batch.operations.NoSuchJobExecutionException
- Specified by:
getJobInstanceIdByExecutionId
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
- Throws:
jakarta.batch.operations.NoSuchJobExecutionException
-
createJobInstance
public jakarta.batch.runtime.JobInstance createJobInstance(String string, String string1, String string2)
- Specified by:
createJobInstance
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createJobExecution
public com.ibm.jbatch.container.jobinstance.RuntimeJobExecution createJobExecution(jakarta.batch.runtime.JobInstance ji, Properties prprts, jakarta.batch.runtime.BatchStatus bs)
- Specified by:
createJobExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createStepExecution
public com.ibm.jbatch.container.jobinstance.StepExecutionImpl createStepExecution(long l, com.ibm.jbatch.container.context.impl.StepContextImpl sci)
- Specified by:
createStepExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateStepExecution
public void updateStepExecution(com.ibm.jbatch.container.context.impl.StepContextImpl sci)
- Specified by:
updateStepExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateWithFinalPartitionAggregateStepExecution
public void updateWithFinalPartitionAggregateStepExecution(long l, com.ibm.jbatch.container.context.impl.StepContextImpl sci)
- Specified by:
updateWithFinalPartitionAggregateStepExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createJobStatus
public com.ibm.jbatch.container.status.JobStatus createJobStatus(long l)
- Specified by:
createJobStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getJobStatus
public com.ibm.jbatch.container.status.JobStatus getJobStatus(long l)
- Specified by:
getJobStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateJobStatus
public void updateJobStatus(long l, com.ibm.jbatch.container.status.JobStatus js)
- Specified by:
updateJobStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createStepStatus
public com.ibm.jbatch.container.status.StepStatus createStepStatus(long l)
- Specified by:
createStepStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getStepStatus
public com.ibm.jbatch.container.status.StepStatus getStepStatus(long l, String string)
- Specified by:
getStepStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateStepStatus
public void updateStepStatus(long l, com.ibm.jbatch.container.status.StepStatus ss)
- Specified by:
updateStepStatus
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getTagName
public String getTagName(long l)
- Specified by:
getTagName
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
updateCheckpointData
public void updateCheckpointData(com.ibm.jbatch.container.persistence.CheckpointDataKey cdk, com.ibm.jbatch.container.persistence.CheckpointData cd)
- Specified by:
updateCheckpointData
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getCheckpointData
public com.ibm.jbatch.container.persistence.CheckpointData getCheckpointData(com.ibm.jbatch.container.persistence.CheckpointDataKey cdk)
- Specified by:
getCheckpointData
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createCheckpointData
public void createCheckpointData(com.ibm.jbatch.container.persistence.CheckpointDataKey cdk, com.ibm.jbatch.container.persistence.CheckpointData cd)
- Specified by:
createCheckpointData
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getMostRecentExecutionId
public long getMostRecentExecutionId(long l)
- Specified by:
getMostRecentExecutionId
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createSubJobInstance
public jakarta.batch.runtime.JobInstance createSubJobInstance(String string, String string1)
- Specified by:
createSubJobInstance
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
createFlowInSplitExecution
public com.ibm.jbatch.container.jobinstance.RuntimeFlowInSplitExecution createFlowInSplitExecution(jakarta.batch.runtime.JobInstance ji, jakarta.batch.runtime.BatchStatus bs)
- Specified by:
createFlowInSplitExecution
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
getStepExecutionByStepExecutionId
public jakarta.batch.runtime.StepExecution getStepExecutionByStepExecutionId(long l)
- Specified by:
getStepExecutionByStepExecutionId
in interfacecom.ibm.jbatch.container.services.IPersistenceManagerService
-
init
public void init(com.ibm.jbatch.spi.services.IBatchConfig ibc)
- Specified by:
init
in interfacecom.ibm.jbatch.spi.services.IBatchServiceBase
-
shutdown
public void shutdown()
- Specified by:
shutdown
in interfacecom.ibm.jbatch.spi.services.IBatchServiceBase
-
-