summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--emailcommon/src/com/android/emailcommon/service/EmailServiceProxy.java23
-rw-r--r--emailcommon/src/com/android/emailcommon/service/EmailServiceVersion.java10
-rw-r--r--emailcommon/src/com/android/emailcommon/service/IEmailService.aidl5
-rw-r--r--src/com/android/email/provider/EmailProvider.java6
-rw-r--r--src/com/android/email/service/EmailServiceStub.java12
-rw-r--r--src/com/android/email/service/EmailServiceUtils.java6
6 files changed, 49 insertions, 13 deletions
diff --git a/emailcommon/src/com/android/emailcommon/service/EmailServiceProxy.java b/emailcommon/src/com/android/emailcommon/service/EmailServiceProxy.java
index eefa5743d..1c1f0ebc9 100644
--- a/emailcommon/src/com/android/emailcommon/service/EmailServiceProxy.java
+++ b/emailcommon/src/com/android/emailcommon/service/EmailServiceProxy.java
@@ -33,7 +33,7 @@ import java.io.IOException;
/**
* The EmailServiceProxy class provides a simple interface for the UI to call into the various
- * EmailService classes (e.g. ExchangeService for EAS). It wraps the service connect/disconnect
+ * EmailService classes (e.g. EasService for EAS). It wraps the service connect/disconnect
* process so that the caller need not be concerned with it.
*
* Use the class like this:
@@ -256,11 +256,11 @@ public class EmailServiceProxy extends ServiceProxy implements IEmailService {
* @param emailAddress the email address for the account whose data should be deleted
*/
@Override
- public void deleteAccountPIMData(final String emailAddress) throws RemoteException {
+ public void deleteExternalAccountPIMData(final String emailAddress) throws RemoteException {
setTask(new ProxyTask() {
@Override
public void run() throws RemoteException {
- mService.deleteAccountPIMData(emailAddress);
+ mService.deleteExternalAccountPIMData(emailAddress);
}
}, "deleteAccountPIMData");
// This can be called when deleting accounts. After making this call, the caller will
@@ -352,4 +352,21 @@ public class EmailServiceProxy extends ServiceProxy implements IEmailService {
public IBinder asBinder() {
return null;
}
+
+ public int getApiVersion() {
+ setTask(new ProxyTask() {
+ @Override
+ public void run() throws RemoteException{
+ mReturn = mService.getApiVersion();
+ }
+ }, "getApiVersion");
+ waitForCompletion();
+ if (mReturn == null) {
+ // This occurs if there is a timeout or remote exception. Is not expected to happen.
+ LogUtils.wtf(TAG, "failed to get api version");
+ return -1;
+ } else {
+ return (Integer) mReturn;
+ }
+ }
}
diff --git a/emailcommon/src/com/android/emailcommon/service/EmailServiceVersion.java b/emailcommon/src/com/android/emailcommon/service/EmailServiceVersion.java
new file mode 100644
index 000000000..8a959a1ce
--- /dev/null
+++ b/emailcommon/src/com/android/emailcommon/service/EmailServiceVersion.java
@@ -0,0 +1,10 @@
+package com.android.emailcommon.service;
+
+public class EmailServiceVersion {
+ // Initial version
+ public static final int L_PLATFORM = 1;
+
+ public static final int CURRENT = L_PLATFORM;
+
+ // For each following version, add a comment explaining what apis where added or removed.
+}
diff --git a/emailcommon/src/com/android/emailcommon/service/IEmailService.aidl b/emailcommon/src/com/android/emailcommon/service/IEmailService.aidl
index f2212bbde..a6f49dc6c 100644
--- a/emailcommon/src/com/android/emailcommon/service/IEmailService.aidl
+++ b/emailcommon/src/com/android/emailcommon/service/IEmailService.aidl
@@ -60,6 +60,7 @@ interface IEmailService {
// trigger the service to reload the flags.
oneway void setLogging(int flags);
- // Needs to get moved into Email since this is NOT a client-server command.
- void deleteAccountPIMData(String emailAddress);
+ void deleteExternalAccountPIMData(String emailAddress);
+
+ int getApiVersion();
}
diff --git a/src/com/android/email/provider/EmailProvider.java b/src/com/android/email/provider/EmailProvider.java
index 7e0a391a2..02c7329ff 100644
--- a/src/com/android/email/provider/EmailProvider.java
+++ b/src/com/android/email/provider/EmailProvider.java
@@ -5620,8 +5620,8 @@ public class EmailProvider extends ContentProvider
return;
}
- LogUtils.d(TAG, "Setting sync interval for account " + accountId + " to " + syncInterval +
- " minutes");
+ LogUtils.d(TAG, "Setting sync interval for account %s to %d minutes",
+ accountId, syncInterval);
// First remove all existing periodic syncs.
final List<PeriodicSync> syncs =
@@ -5963,7 +5963,7 @@ public class EmailProvider extends ContentProvider
EmailServiceUtils.getServiceForAccount(context, accountId);
if (service != null) {
try {
- service.deleteAccountPIMData(emailAddress);
+ service.deleteExternalAccountPIMData(emailAddress);
} catch (final RemoteException e) {
// Can't do anything about this
}
diff --git a/src/com/android/email/service/EmailServiceStub.java b/src/com/android/email/service/EmailServiceStub.java
index 9301e9db4..264e5b626 100644
--- a/src/com/android/email/service/EmailServiceStub.java
+++ b/src/com/android/email/service/EmailServiceStub.java
@@ -28,7 +28,6 @@ import android.os.RemoteException;
import com.android.email.NotificationController;
import com.android.email.mail.Sender;
import com.android.email.mail.Store;
-import com.android.email.provider.AccountReconciler;
import com.android.email.service.EmailServiceUtils.EmailServiceInfo;
import com.android.email2.ui.MailActivityEmail;
import com.android.emailcommon.Logging;
@@ -53,6 +52,7 @@ import com.android.emailcommon.provider.EmailContent.MailboxColumns;
import com.android.emailcommon.provider.EmailContent.MessageColumns;
import com.android.emailcommon.provider.Mailbox;
import com.android.emailcommon.service.EmailServiceStatus;
+import com.android.emailcommon.service.EmailServiceVersion;
import com.android.emailcommon.service.HostAuthCompat;
import com.android.emailcommon.service.IEmailService;
import com.android.emailcommon.service.IEmailServiceCallback;
@@ -389,8 +389,8 @@ public abstract class EmailServiceStub extends IEmailService.Stub implements IEm
}
@Override
- public void deleteAccountPIMData(final String emailAddress) throws RemoteException {
- AccountReconciler.reconcileAccounts(mContext);
+ public void deleteExternalAccountPIMData(final String emailAddress) throws RemoteException {
+ // No need to do anything here, for IMAP and POP accounts none of our data is external.
}
@Override
@@ -433,7 +433,7 @@ public abstract class EmailServiceStub extends IEmailService.Stub implements IEm
final ContentResolver resolver = context.getContentResolver();
final Cursor c = resolver.query(EmailContent.Message.CONTENT_URI,
EmailContent.Message.ID_COLUMN_PROJECTION,
- MessageColumns.MAILBOX_KEY + "=?", new String[] { Long.toString(outboxId) },
+ MessageColumns.MAILBOX_KEY + "=?", new String[] { Long.toString(outboxId)},
null);
try {
// 2. exit early
@@ -516,4 +516,8 @@ public abstract class EmailServiceStub extends IEmailService.Stub implements IEm
c.close();
}
}
+
+ public int getApiVersion() {
+ return EmailServiceVersion.CURRENT;
+ }
}
diff --git a/src/com/android/email/service/EmailServiceUtils.java b/src/com/android/email/service/EmailServiceUtils.java
index 518c3c443..54dcdd826 100644
--- a/src/com/android/email/service/EmailServiceUtils.java
+++ b/src/com/android/email/service/EmailServiceUtils.java
@@ -54,6 +54,7 @@ import com.android.emailcommon.provider.EmailContent.HostAuthColumns;
import com.android.emailcommon.provider.HostAuth;
import com.android.emailcommon.service.EmailServiceProxy;
import com.android.emailcommon.service.EmailServiceStatus;
+import com.android.emailcommon.service.EmailServiceVersion;
import com.android.emailcommon.service.HostAuthCompat;
import com.android.emailcommon.service.IEmailService;
import com.android.emailcommon.service.IEmailServiceCallback;
@@ -681,7 +682,7 @@ public class EmailServiceUtils {
}
@Override
- public void deleteAccountPIMData(final String emailAddress) throws RemoteException {
+ public void deleteExternalAccountPIMData(final String emailAddress) throws RemoteException {
}
@Override
@@ -703,5 +704,8 @@ public class EmailServiceUtils {
return EmailServiceStatus.SUCCESS;
}
+ public int getApiVersion() {
+ return EmailServiceVersion.CURRENT;
+ }
}
}