/** Iterates and executes the list of batchEventPhases. */ private void doBatchEventPhases() { // Must be called after initialization and before anything else. detailSplitter.prePhaseExecute(); // Get checkpoint from context after checkpoint phase.initialize(). if (checkpointService != null) { traversDetailWithCheckpoint(checkpointService.getCheckpoint()); } else { traversDetailWithOutCheckpoint(); } }