add Mailbox.get(JS)
[org.ibex.mail.git] / src / org / ibex / mail / Mailbox.java
index 23c62cf..3d3f8bb 100644 (file)
@@ -48,13 +48,16 @@ public abstract class Mailbox extends JS.Obj implements Target {
     }
 
     /** 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(); }
         }