protected virtual async Task <Position> GetCheckpointPosition() { var checkpoint = await _checkpointStore.Get(typeof(T).Name); if (checkpoint != null) { var checkpointPosition = checkpoint.Position.Split('/'); return(new Position(Convert.ToInt64(checkpointPosition[0]), Convert.ToInt64(checkpointPosition[1]))); } else { return(Position.Start); } }