class BootstrapCheckpointHandler {

  public void resetForServerChange(Checkpoint ckpt)
  {
    ckpt.resetForServerChange();

    // The Checkpoint class doesn't know about _sourceNames, so it may have set SNAPSHOT_SOURCE
    // and BOOTSTRAP_SNAPSHOT_SOURCE_INDEX (and/or the CATCHUP equivalents) inconsistently with
    // _sourceNames[].  We're authoritative, so fix that by fixing the checkpoint's source names.
    // (Also see TODO near the top of this class.)
    final int snapshotSourceIndex = ckpt.getBootstrapSnapshotSourceIndex();
    final int catchupSourceIndex = ckpt.getBootstrapCatchupSourceIndex();
    setSnapshotSource(ckpt, snapshotSourceIndex);
    setCatchupSource(ckpt, catchupSourceIndex);
  }

  public  BootstrapCheckpointHandler(List<String> sourceNames);
  public  BootstrapCheckpointHandler(String... sourceNames);

}