com.r3corda.node.services.api / CheckpointStorage

# CheckpointStorage

`interface CheckpointStorage`

Thread-safe storage of fiber checkpoints.

TODO: Make internal to node again once split ServiceHub into a public (to contracts etc) and private (to node) view

### Properties

checkpoints | `abstract val checkpoints: Iterable<Checkpoint>` Returns a snapshot of all the checkpoints in the store. This may return more checkpoints than were added to this instance of the store; for example if the store persists checkpoints to disk.

### Functions

addCheckpoint | `abstract fun addCheckpoint(checkpoint: Checkpoint): Unit` Add a new checkpoint to the store.
removeCheckpoint | `abstract fun removeCheckpoint(checkpoint: Checkpoint): Unit` Remove existing checkpoint from the store. It is an error to attempt to remove a checkpoint which doesnt exist in the store. Doing so will throw an IllegalArgumentException.

### Inheritors

PerFileCheckpointStorage | `class PerFileCheckpointStorage : CheckpointStorage` File-based checkpoint storage, storing checkpoints per file.