2009年7月15日

Use xSocket BlockingConnection

xSocket
License: LGPL - Lesser General Public License
// -- Main.java --
import org.xsocket.connection.BlockingConnection;
import org.xsocket.connection.IBlockingConnection;

public final class Main {

private static IBlockingConnection connection = null;

public static void main(String... args) throws Exception {
connection = new BlockingConnection("mailserver.hostname", 25);
try {
cmd(null, 220);
cmd("HELO mailserver.hostname", 250);
cmd("MAIL FROM:lance", 250);
cmd("RCPT TO:solnone NOTIFY=success,failure", 250);
cmd("DATA", 354);
cmd("Subject: Test Mail use telnet\r\n\r\nJust test.\r\n.\r\n", 250);

connection.write("QUIT\r\n");
} finally {
if (connection != null) {
connection.close();
}
}

}

private static void cmd(String cmd, int replyCode) throws Exception {
if (cmd != null) {
connection.write(cmd + "\r\n");
}
String line = connection.readStringByDelimiter("\r\n").trim();
System.out.println(line);
if (!line.startsWith(Integer.toString(replyCode))) {
throw new Exception("Error reply code");
}
}
}

沒有留言:

網誌存檔