@Override protected void onResume() { super.onResume(); MessagingController.getInstance(this).addListener(messagingListener); }
@Override public void synchronizeMailboxFinished( Account account, String folderServerId, int totalMessagesInMailbox, int numNewMessages) { MessagingController.getInstance(getApplication()).getAccountStats(Accounts.this, account, mListener); super.synchronizeMailboxFinished(account, folderServerId, totalMessagesInMailbox, numNewMessages); handler.progress(false); }
private boolean isMovePossible(MessagingController controller, Account account, String destinationFolderName) { boolean isSpecialFolderConfigured = destinationFolderName != null; return isSpecialFolderConfigured && controller.isMoveCapable(account); } }
private void cancelNotifications() { MessagingController controller = MessagingController.getInstance(this); for (MessageReference messageReference : messagesToDelete) { controller.cancelNotificationForMessage(account, messageReference); } }
public void setCheckMailListener(MessagingListener checkMailListener) { if (this.checkMailListener != null) { removeListener(this.checkMailListener); } this.checkMailListener = checkMailListener; if (this.checkMailListener != null) { addListener(this.checkMailListener); } }
@Override protected Void doInBackground(Void... params) { final MessagingController messagingController = MessagingController.getInstance(context); Message draftMessage = messagingController.saveDraft(account, message, draftId, plaintextSubject, saveRemotely); draftId = messagingController.getId(draftMessage); android.os.Message msg = android.os.Message.obtain(handler, MessageCompose.MSG_SAVED_DRAFT, draftId); handler.sendMessage(msg); return null; } }
/** * On resume we refresh the folder list (in the background) and we refresh the * messages for any folder that is currently open. This guarantees that things * like unread message count and read status are updated. */ @Override public void onResume() { super.onResume(); if (!account.isAvailable(this)) { Timber.i("account unavaliabale, not showing folder-list but account-list"); Accounts.listAccounts(this); finish(); return; } if (adapter == null) initializeActivityView(); handler.refreshTitle(); MessagingController.getInstance(getApplication()).addListener(adapter.mListener); //account.refresh(Preferences.getPreferences(this)); MessagingController.getInstance(getApplication()).getAccountStats(this, account, adapter.mListener); onRefresh(!REFRESH_REMOTE); MessagingController.getInstance(getApplication()).cancelNotificationsForAccount(account); adapter.mListener.onResume(this); }
if ((operation == FolderOperation.MOVE && !messagingController.isMoveCapable(message)) || (operation == FolderOperation.COPY && !messagingController.isCopyCapable(message))) { messagingController.moveMessagesInThread(account, folderServerId, outMessages, destination); } else { messagingController.moveMessages(account, folderServerId, outMessages, destination); messagingController.copyMessagesInThread(account, folderServerId, outMessages, destination); } else { messagingController.copyMessages(account, folderServerId, outMessages, destination);
private void checkIncoming() throws MessagingException { if (isWebDavAccount()) { publishProgress(R.string.account_setup_check_settings_authenticate); } else { publishProgress(R.string.account_setup_check_settings_check_incoming_msg); } messagingController.checkIncomingServerSettings(account); if (isWebDavAccount()) { publishProgress(R.string.account_setup_check_settings_fetch); } MessagingController.getInstance(getApplication()).listFoldersSynchronous(account, true, null); MessagingController.getInstance(getApplication()) .synchronizeMailbox(account, account.getInboxFolder(), null, null); }
if (!isCopy && !isMoveCapable(account)) { return; if (isCopy && !isCopyCapable(account)) { return; for (MessagingListener l : getListeners()) { l.folderStatusChanged(account, destFolder, unreadMessageCount); String origUid = entry.getKey(); Message message = entry.getValue(); for (MessagingListener l : getListeners()) { l.messageUidChanged(account, srcFolder, origUid, message.getUid()); unsuppressMessages(account, messages); for (MessagingListener l : getListeners()) { l.folderStatusChanged(account, srcFolder, unreadMessageCountSrc); l.folderStatusChanged(account, destFolder, unreadMessageCountDest); queueMoveOrCopy(account, srcFolder, destFolder, isCopy, origUidKeys, uidMap); processPendingCommands(account); } catch (UnavailableStorageException e) { Timber.i("Failed to move/copy message because storage is not available - trying again later.");
private void onCheckMail(Account account) { MessagingController.getInstance(getApplication()).checkMail(this, account, true, true, null); if (account == null) { MessagingController.getInstance(getApplication()).sendPendingMessages(null); } else { MessagingController.getInstance(getApplication()).sendPendingMessages(account, null); } }
private void onRefresh(final boolean forceRemote) { MessagingController.getInstance(getApplication()).listFolders(account, forceRemote, adapter.mListener); }
@Override public void onPause() { super.onPause(); MessagingController.getInstance(getApplication()).removeListener(adapter.mListener); adapter.mListener.onPause(this); }
first = false; Account account = preferences.getAccount(message.getAccountUuid()); if ((operation == FolderOperation.MOVE && !messagingController.isMoveCapable(account)) || (operation == FolderOperation.COPY && !messagingController.isCopyCapable(account))) { return false; if ((operation == FolderOperation.MOVE && !messagingController.isMoveCapable(message)) || (operation == FolderOperation.COPY && !messagingController.isCopyCapable(message))) { final Toast toast = Toast.makeText(getActivity(), R.string.move_copy_cannot_copy_unsynced_message, Toast.LENGTH_LONG);
messagingController.addListener(activityListener); messagingController.cancelNotificationsForAccount(accountWithNotification); messagingController.getFolderUnreadMessageCount(this.account, folderServerId, activityListener);
handler.refreshTitle(); MessagingController controller = MessagingController.getInstance(getApplication()); controller.getAccountStats(this, realAccount, mListener); } else if (K9.countSearchMessages() && account instanceof SearchAccount) { final SearchAccount searchAccount = (SearchAccount) account; controller.getSearchAccountStats(searchAccount, mListener);
public void checkMail() { if (isSingleAccountMode() && isSingleFolderMode()) { messagingController.synchronizeMailbox(account, folderServerId, activityListener, null); messagingController.sendPendingMessages(account, activityListener); } else if (allAccounts) { messagingController.checkMail(context, null, true, true, activityListener); } else { for (String accountUuid : accountUuids) { Account account = preferences.getAccount(accountUuid); messagingController.checkMail(context, account, true, true, activityListener); } } }
@Override public void run() { listFoldersSynchronous(account, refreshRemote, listener); } });
MessagingController createMessagingController() { return MessagingController.getInstance(context); } }
@Test public void sendPendingMessagesSynchronous_withNonExistentOutbox_shouldNotStartSync() throws MessagingException { when(account.getOutboxFolder()).thenReturn(FOLDER_NAME); when(localFolder.exists()).thenReturn(false); controller.addListener(listener); controller.sendPendingMessagesSynchronous(account); verifyZeroInteractions(listener); }