}
/** default, inefficient implementation of Mailbox; only requires a few methods to be implemented */
- public static abstract class Default extends Mailbox {
+ public static abstract class Default extends Mailbox /* implements MailTree? */ {
public Mailbox.Iterator iterator(Query q) { return new Mailbox.Iterator.QueryIterator(q, this); }
public void copy(Query q, Mailbox dest) { for(Mailbox.Iterator it = iterator(q); it.next();) dest.insert(it.cur(), it.getFlags()); }
public int count(Query q) { int count = 0; for(Mailbox.Iterator it = iterator(q); it.next();) count++; return count; }
public MailTree slash(String name, boolean create) { return null; }
public String[] children() { return new String[] { }; }
public void post(Message message) { insert(message, Flag.RECENT); }
+ public JS get(JS key) throws JSExn {
+ return (JS)slash(JSU.toString(key), true);
+ }
public void move(Query q, Mailbox dest) {
for(Mailbox.Iterator it = iterator(q);it.next();) { dest.insert(it.cur(), it.getFlags()); it.delete(); }
}