aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java/com/libmailcore/SMTPSession.java
diff options
context:
space:
mode:
authorGravatar Hoa V. DINH <dinh.viet.hoa@gmail.com>2015-01-07 00:24:58 -0800
committerGravatar Hoa V. DINH <dinh.viet.hoa@gmail.com>2015-01-07 00:24:58 -0800
commitb3713c0d84c3c00fbd5583cc2fe6913bfdcecd44 (patch)
tree516c562e9e9cd317f7afb9ed342bbda171239777 /src/java/com/libmailcore/SMTPSession.java
parent090301ae3d2ff1dae80f340367461a3551f21c3a (diff)
Java wrapper for POP, NNTP and SMTP
Diffstat (limited to 'src/java/com/libmailcore/SMTPSession.java')
-rw-r--r--src/java/com/libmailcore/SMTPSession.java86
1 files changed, 86 insertions, 0 deletions
diff --git a/src/java/com/libmailcore/SMTPSession.java b/src/java/com/libmailcore/SMTPSession.java
new file mode 100644
index 00000000..7eb8afe9
--- /dev/null
+++ b/src/java/com/libmailcore/SMTPSession.java
@@ -0,0 +1,86 @@
+package com.libmailcore;
+
+import java.util.List;
+
+public class SMTPSession extends NativeObject {
+ public SMTPSession()
+ {
+ setupNative();
+ }
+
+ protected void finalize() throws Throwable
+ {
+ finalizeNative();
+ super.finalize();
+ }
+
+ public native void setHostname(String hostname);
+ public native String hostname();
+
+ public native void setPort(int port);
+ public native int port();
+
+ public native void setUsername(String username);
+ public native String username();
+
+ public native void setPassword(String password);
+ public native String password();
+
+ public native void setOAuth2Token(String token);
+ public native String OAuth2Token();
+
+ public native void setAuthType(int authType);
+ public native int authType();
+
+ public native void setConnectionType(int connectionType);
+ public native int connectionType();
+
+ public native void setTimeout(long seconds);
+ public native long timeout();
+
+ public native void setCheckCertificateEnabled(boolean enabled);
+ public native boolean isCheckCertificateEnabled();
+
+ public native void setUseHeloIPEnabled(boolean enabled);
+ public native boolean useHeloIPEnabled();
+
+ public void setConnectionLogger(ConnectionLogger logger)
+ {
+ connectionLogger = logger;
+ setupNativeConnectionLogger();
+ }
+
+ public ConnectionLogger connectionLogger()
+ {
+ return connectionLogger;
+ }
+
+ public void setOperationQueueListener(OperationQueueListener listener)
+ {
+ operationQueueListener = listener;
+ setupNativeOperationQueueListener();
+ }
+
+ public OperationQueueListener operationQueueListener()
+ {
+ return operationQueueListener;
+ }
+
+ public native boolean isOperationQueueRunning();
+ public native void cancelAllOperations();
+
+ public native SMTPOperation loginOperation();
+ public native SMTPOperation sendMessageOperation(byte[] messageData);
+ public native SMTPOperation sendMessageOperation(Address from, List<Address> recipients, byte[] messageData);
+ public native SMTPOperation checkAccountOperation(Address from);
+ public native SMTPOperation noopOperation();
+
+ private native void setupNative();
+ private native void finalizeNative();
+
+ private ConnectionLogger connectionLogger;
+ private OperationQueueListener operationQueueListener;
+
+ private native void setupNativeOperationQueueListener();
+ private native void setupNativeConnectionLogger();
+}