javax.batch.api.chunk

## Class AbstractCheckpointAlgorithm

- java.lang.Object
- - javax.batch.api.chunk.AbstractCheckpointAlgorithm

All Implemented Interfaces:
  CheckpointAlgorithm

    public abstract class AbstractCheckpointAlgorithm
    extends Object
    implements CheckpointAlgorithm

The AbstractCheckpointAlgorithm provides default implementations of less commonly implemented methods.

### Constructor Summary

Constructors
Constructor and Description
`AbstractCheckpointAlgorithm()`

### Method Summary

Methods
`void` `beginCheckpoint()` Override this method for the CheckpointAlgorithm to do something before a checkpoint interval begins (before the next chunk transaction begins).
`int` `checkpointTimeout()` Override this method if the CheckpointAlgorithm establishes a checkpoint timeout.
`void` `endCheckpoint()` Override this method for the CheckpointAlgorithm to do something after a checkpoint is taken (after the chunk transaction is committed).
`abstract boolean` `isReadyToCheckpoint()` Implement logic in this method to decide if a checkpoint should be taken now.

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Constructor Detail

#### AbstractCheckpointAlgorithm

    public AbstractCheckpointAlgorithm()

### Method Detail

#### checkpointTimeout

    public int checkpointTimeout()
                          throws Exception

Override this method if the CheckpointAlgorithm establishes a checkpoint timeout. The default implementation returns 0, which means the maximum permissible timeout allowed by the runtime environment.

Specified by:
  `checkpointTimeout` in interface `CheckpointAlgorithm`
Returns:
  the timeout interval (expressed in seconds) to use for the next checkpoint interval
Throws:
  `Exception` - (or subclass) if an error occurs.

#### beginCheckpoint

    public void beginCheckpoint()
                         throws Exception

Override this method for the CheckpointAlgorithm to do something before a checkpoint interval begins (before the next chunk transaction begins). The default implementation does nothing.

Specified by:
  `beginCheckpoint` in interface `CheckpointAlgorithm`
Throws:
  `Exception` - (or subclass) if an error occurs.

#### isReadyToCheckpoint

    public abstract boolean isReadyToCheckpoint()
                                         throws Exception

Implement logic in this method to decide if a checkpoint should be taken now.

Specified by:
  `isReadyToCheckpoint` in interface `CheckpointAlgorithm`
Returns:
  boolean indicating whether or not to checkpoint now.
Throws:
  `Exception` - (or subclass) if an error occurs.

#### endCheckpoint

    public void endCheckpoint()
                       throws Exception

Override this method for the CheckpointAlgorithm to do something after a checkpoint is taken (after the chunk transaction is committed). The default implementation does nothing.

Specified by:
  `endCheckpoint` in interface `CheckpointAlgorithm`
Throws:
  `Exception` - (or subclass) if an error occurs.

© Copyright IBM Corp. 2014
Licensed under the Apache License, Version 2.0