Class NullAdapter
- All Implemented Interfaces:
BatchAdapter
BatchAdapter
.
Does logging but nothing else.-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
afterCompletion
(BatchJob job, boolean commit) The afterCompletion method notifies a BatchAdapter that a batchjob has completed.void
afterCreation
(BatchJob job) The afterCreation method notifies a batch adapter that a batchjob has been created.void
beforeCompletion
(BatchJob job) The beforeCompletion method notifies a BatchAdapter that a BatchJob is about to complete.void
doCompensate
(BatchJob job) Will be called when a GoBack() action on the process is being performed and the goBack path crosses the corresponding batch step.void
The doPoll method is being used by the executing (timer) thread to determine if a batchjob has been finished.void
The doStart Method is responsible for starting the batch job.void
startup()
Startup is called when the adapter is instantiated by the BatchManager.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface com.groiss.wf.batch.BatchAdapter
getErrorCode, onAbort, onReactivate
-
Constructor Details
-
NullAdapter
public NullAdapter()
-
-
Method Details
-
startup
Description copied from interface:BatchAdapter
Startup is called when the adapter is instantiated by the BatchManager. It can be used to setup the execution context for the BatchJobs.- Specified by:
startup
in interfaceBatchAdapter
- Throws:
Exception
-
afterCreation
Description copied from interface:BatchAdapter
The afterCreation method notifies a batch adapter that a batchjob has been created.This usually happens via a
Batchmanager.submitJob()
call. It can be used to collect parameters from the process context. If it makes any changes to thejob
,job.update()
must be called.It is typically executed from a preprocessing method of a
Task
and is expected to complete quickly.If an Exception is thrown by afterCreation, this exception is not catched and will manifest in the context of the caller (usually a preprocessing method).
- Specified by:
afterCreation
in interfaceBatchAdapter
- Parameters:
job
- a BatchJob- Throws:
Exception
-
doStart
Description copied from interface:BatchAdapter
The doStart Method is responsible for starting the batch job.It has to start the batch job in some external execution context. If it runs in the JVM itself, it is expected to complete quickly. The method is executed via the Batch Timer for each BatchJob, which is in state BatchJob.CREATED and whose starttime is either null or not in the future.
If an exception is thrown by doStart, the behaviour depends on whether retrystart is specified for the job or not. Jobs without retrystart are placed in state BatchJob.STARTERROR and a ROLLBACK is done! No further action is carried out by the system with this BatchJob. So either doStart itself has to take appropriate actions, or an administrator must check for jobs in this state manually.
Jobs with retrystart remain in state created and a new start attempt will be made in the future.
doStart can make use of one of the methods BatchManager.markJobError(), BatchManager.markJobFinished() and BatchManager.markSuspendRetry() to mark the job as being erroneous, as being finished or to suspend further start attempts.
- Specified by:
doStart
in interfaceBatchAdapter
- Parameters:
job
- a BatchJob- Throws:
Exception
-
doPoll
Description copied from interface:BatchAdapter
The doPoll method is being used by the executing (timer) thread to determine if a batchjob has been finished. It will be called periodically by the executing timer if the Batchjob has pollfinish set.If doPoll returns or throws an exception, the state of the job remains unchanged. doPoll can make use of one of the methods BatchManager.markJobError(), BatchManager.markJobFinished() and BatchManager.markJobSuspendPoll() to mark the job as being erroneous, as being finished or to suspend further poll attempts.
- Specified by:
doPoll
in interfaceBatchAdapter
- Parameters:
job
- a BatchJob- Throws:
Exception
-
beforeCompletion
Description copied from interface:BatchAdapter
The beforeCompletion method notifies a BatchAdapter that a BatchJob is about to complete. This method is called before the Task in which the BatchJob originated is finished;- either by the BatchManager (for each BatchJob with jobstate
BatchJob.FINISHED
), - or via explicit call to
BatchManager.completeJob(BatchJob)
for a BatchJob with jobstateBatchJob.STARTED
The method can be used to transfer results from the execution context of the finished jobs to the process context.
If an exception is thrown by beforeCompletion, the BatchManager places the job in state BatchJob.FINISHERROR. No further action is carried out by the system with this BatchJob. So either beforeCompletion itself takes appropriate actions, or handling is done in afterCompletion, or an administrator must check for jobs in this state manually.
- Specified by:
beforeCompletion
in interfaceBatchAdapter
- Parameters:
job
- a BatchJob- Throws:
Exception
- either by the BatchManager (for each BatchJob with jobstate
-
afterCompletion
Description copied from interface:BatchAdapter
The afterCompletion method notifies a BatchAdapter that a batchjob has completed. It also tells the adapter whether the completion was successful or not. If an exception occurs, a ROLLBACK is done!- Specified by:
afterCompletion
in interfaceBatchAdapter
- Parameters:
job
- a BatchJobcommit
- True if the job has been completed, false if there were errors.- Throws:
Exception
-
doCompensate
Description copied from interface:BatchAdapter
Will be called when a GoBack() action on the process is being performed and the goBack path crosses the corresponding batch step.- Specified by:
doCompensate
in interfaceBatchAdapter
- Parameters:
job
- a BatchJob- Throws:
Exception
-