|
|
|
@ -1361,38 +1361,39 @@ class Core {
|
|
|
|
|
List<Folder> ifolders = new ArrayList<>();
|
|
|
|
|
ifolders.addAll(Arrays.asList(defaultFolder.list("*")));
|
|
|
|
|
|
|
|
|
|
List<String> subscription = new ArrayList<>();
|
|
|
|
|
try {
|
|
|
|
|
Folder[] isubscribed = defaultFolder.listSubscribed("*");
|
|
|
|
|
for (Folder ifolder : isubscribed)
|
|
|
|
|
subscription.add(ifolder.getFullName());
|
|
|
|
|
} catch (MessagingException ex) {
|
|
|
|
|
Log.e(account.name, ex);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (sync_shared_folders) {
|
|
|
|
|
Folder[] namespaces = istore.getSharedNamespaces();
|
|
|
|
|
Log.i("Namespaces=" + namespaces.length);
|
|
|
|
|
for (Folder namespace : namespaces) {
|
|
|
|
|
Log.i("Namespace=" + namespace.getFullName());
|
|
|
|
|
if (namespace.getSeparator() == separator)
|
|
|
|
|
if (namespace.getSeparator() == separator) {
|
|
|
|
|
try {
|
|
|
|
|
ifolders.addAll(Arrays.asList(namespace.list("*")));
|
|
|
|
|
} catch (FolderNotFoundException ex) {
|
|
|
|
|
Log.w(ex);
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
|
|
|
|
|
try {
|
|
|
|
|
Folder[] isubscribed = namespace.listSubscribed("*");
|
|
|
|
|
for (Folder ifolder : isubscribed)
|
|
|
|
|
subscription.add(ifolder.getFullName());
|
|
|
|
|
} catch (MessagingException ex) {
|
|
|
|
|
Log.e(account.name, ex);
|
|
|
|
|
}
|
|
|
|
|
} else
|
|
|
|
|
Log.e("Namespace separator=" + namespace.getSeparator() + " default=" + separator);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
//Log.i("Checking if folders exist");
|
|
|
|
|
//for (Folder ifolder : new ArrayList<Folder>(ifolders))
|
|
|
|
|
// if (!ifolder.exists()) {
|
|
|
|
|
// Log.w("Folder does not exist name=" + ifolder.getFullName());
|
|
|
|
|
// ifolders.remove(ifolder);
|
|
|
|
|
// }
|
|
|
|
|
|
|
|
|
|
List<String> subscription = new ArrayList<>();
|
|
|
|
|
try {
|
|
|
|
|
Folder[] isubscribed = defaultFolder.listSubscribed("*");
|
|
|
|
|
for (Folder ifolder : isubscribed)
|
|
|
|
|
subscription.add(ifolder.getFullName());
|
|
|
|
|
} catch (MessagingException ex) {
|
|
|
|
|
Log.e(account.name, ex);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
long duration = new Date().getTime() - start;
|
|
|
|
|
|
|
|
|
|
Log.i("Remote folder count=" + ifolders.size() +
|
|
|
|
|