package net.trevize.galatee;
import java.util.Iterator;
import java.util.NoSuchElementException;
/**
*
*
* @author Nicolas James <nicolas.james@gmail.com> [[http://njames.trevize.net]]
* GItemListIterator.java - Feb 2, 2010
*/
public class GItemListIterator implements Iterator<GItem> {
private GItemList gi_list;
public GItemListIterator(GItemList gi_list) {
this.gi_list = gi_list;
}
@Override
public boolean hasNext() {
synchronized (gi_list.getToProcess()) {
boolean res = false;
if (gi_list.getToProcess().size() != 0) {
res = true;
}
return res;
}
}
@Override
public GItem next() {
GItem res = null;
synchronized (gi_list.getToProcess()) {
if (gi_list.getToProcess().size() != 0) {
res = gi_list.getToProcess().get(0);
synchronized (gi_list.getProcessing()) {
gi_list.getProcessing().add(res);
}
gi_list.getToProcess().remove(res);
} else {
throw new NoSuchElementException();
}
}
return res;
}
@Override
public void remove() {
}
}