package com.emc.ecs.sync.util;
import java.util.Iterator;
import java.util.List;
public class CombinedIterator<T> extends ReadOnlyIterator<T> {
private List<? extends Iterator<T>> iterators;
private int currentIterator = 0;
public CombinedIterator(List<? extends Iterator<T>> iterators) {
this.iterators = iterators;
}
@Override
protected T getNextObject() {
while (currentIterator < iterators.size()) {
if (iterators.get(currentIterator).hasNext()) return iterators.get(currentIterator).next();
currentIterator++;
}
return null;
}
}