private int randomUidValidity = new Random().nextInt();
public int uidValidity() { return randomUidValidity; }
+ public int maxuid() {
+ int ret = -1;
+ for(Mailbox.Iterator it = iterator(); it.next(); ) ret = Math.max(ret, it.uid());
+ return ret;
+ }
+
/** default, inefficient implementation of Mailbox; only requires a few methods to be implemented */
public static abstract class Default extends Mailbox {
public Mailbox.Iterator iterator(Query q) { return new Mailbox.Iterator.QueryIterator(q, this); }
public static interface Iterator {
public abstract Message cur();
public abstract Headers head();
+
+ // FIXME: change all code to actually use this convention!
+ /** JDBC convention: iterator starts "before the first element" */
public abstract boolean next();
+
public abstract void delete();
/** a unique identifier for this message */