aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/java/com/libmailcore/IMAPOperation.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/java/com/libmailcore/IMAPOperation.java')
-rw-r--r--src/java/com/libmailcore/IMAPOperation.java24
1 files changed, 24 insertions, 0 deletions
diff --git a/src/java/com/libmailcore/IMAPOperation.java b/src/java/com/libmailcore/IMAPOperation.java
new file mode 100644
index 00000000..5790ec29
--- /dev/null
+++ b/src/java/com/libmailcore/IMAPOperation.java
@@ -0,0 +1,24 @@
+package com.libmailcore;
+
+public class IMAPOperation extends Operation {
+ public MailException exception() {
+ if (errorCode() == Error.ErrorNone) {
+ return null;
+ }
+ return new MailException(errorCode());
+ }
+
+ private native int errorCode();
+
+ protected void callCallback()
+ {
+ if (callback != null) {
+ if (errorCode() == Error.ErrorNone) {
+ callback.succeeded();
+ }
+ else {
+ callback.failed(exception());
+ }
+ }
+ }
+}