public Article next() { return article(ptr++, false, false); }
public Article last() { return article(ptr--, false, false); }
public Article article(String i, boolean h, boolean b) { return article(Query.header("message-id",i),h,b); }
- public Article article(int n, boolean h, boolean b) { ptr = n; return article(Query.messagenum(n,n),h,b); }
+ public Article article(int n, boolean h, boolean b) { ptr = n; return article(Query.nntpNumber(n,n),h,b); }
private Article article(Query q, boolean head, boolean body) {
Mailbox.Iterator it = current.iterator(q);
if (!it.next()) return null;
try {
Message m = body ? it.cur() : Message.newMessage(new Fountain.StringFountain(it.head() + "\r\n"));
- return new Article(it.num(), m);
+ return new Article(it.nntpNumber(), m);
} catch (Exception e) { return null; }
}
public Group[] list() { return list(root, ""); }
} else if (command.equals("BODY")) { article(st.hasMoreTokens() ? st.nextToken() : null, false, true);
} else if (command.equals("STAT")) { article(st.hasMoreTokens() ? st.nextToken() : null, false, false);
} else if (command.equals("HELP")) { println("100 you are beyond help."); println(".");
- } else if (command.equals("SLAVE")) { println("220 I don't care");
+ } else if (command.equals("SLAVE")) { println("220 SLAVE was removed in RFC3977, you should not use it");
} else if (command.equals("XOVER")) {
println("224 Overview information follows");
MailboxWrapper api = (MailboxWrapper)this.api;
String range = st.hasMoreTokens() ? st.nextToken() : (api.ptr+"-"+api.ptr);
int start = Integer.parseInt(range.substring(0, range.indexOf('-')));
int end = Integer.parseInt(range.substring(range.indexOf('-') + 1));
- Mailbox.Iterator it = api.current.iterator(Query.messagenum(start, end));
+ Mailbox.Iterator it = api.current.iterator(Query.nntpNumber(start, end));
while(it.next()) {
try {
Message m = it.cur();
- println(it.num()+"\t"+m.subject+"\t"+m.from+"\t"+m.date+"\t"+m.messageid+"\t"+
+ println(it.nntpNumber()+"\t"+m.subject+"\t"+m.from+"\t"+m.date+"\t"+m.messageid+"\t"+
m.headers.get("references") + "\t" + m.getLength() + "\t" + m.getNumLines());
} catch (Exception e) { Log.error(this, e); }
}