Perhaps a better home for this would be inside of your SkipRangeParallelIteratorRegionSplitter? Either that, or perhaps it should use the position array and startKey and endKey member variables instead of have a local version? Then you could use the setStartKey and setEndKey methods too.