Reverse change of hasNext in source reader so that hasNext doesn't move forward unless getNextDataPair consumes current input data