From 243facb0d2acc8b0d22b14a6390990a845db3207 Mon Sep 17 00:00:00 2001 From: Christian Schneppe Date: Mon, 20 Nov 2017 20:20:48 +0100 Subject: code refactoring to provide shorter account enabled check --- src/main/java/de/pixart/messenger/entities/Account.java | 4 ++++ .../pixart/messenger/services/NotificationService.java | 2 +- .../pixart/messenger/services/XmppConnectionService.java | 15 +++++++-------- .../java/de/pixart/messenger/ui/EditAccountActivity.java | 2 +- .../de/pixart/messenger/ui/ManageAccountActivity.java | 16 ++++++++-------- .../java/de/pixart/messenger/ui/SettingsActivity.java | 6 +++--- .../pixart/messenger/ui/StartConversationActivity.java | 2 +- .../java/de/pixart/messenger/utils/ExceptionHelper.java | 2 +- 8 files changed, 26 insertions(+), 23 deletions(-) (limited to 'src/main/java/de/pixart') diff --git a/src/main/java/de/pixart/messenger/entities/Account.java b/src/main/java/de/pixart/messenger/entities/Account.java index 35dcc7181..bc2fe371a 100644 --- a/src/main/java/de/pixart/messenger/entities/Account.java +++ b/src/main/java/de/pixart/messenger/entities/Account.java @@ -110,6 +110,10 @@ public class Account extends AbstractEntity { return key == null || Boolean.parseBoolean(key); } + public boolean isEnabled() { + return !isOptionSet(Account.OPTION_DISABLED); + } + public enum State { DISABLED(false, false), OFFLINE(false), diff --git a/src/main/java/de/pixart/messenger/services/NotificationService.java b/src/main/java/de/pixart/messenger/services/NotificationService.java index 033b6ac9c..f7416bca6 100644 --- a/src/main/java/de/pixart/messenger/services/NotificationService.java +++ b/src/main/java/de/pixart/messenger/services/NotificationService.java @@ -698,7 +698,7 @@ public class NotificationService { if (account.isOnlineAndConnected()) { connected++; enabled++; - } else if (!account.isOptionSet(Account.OPTION_DISABLED)) { + } else if (account.isEnabled()) { enabled++; } } diff --git a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java index 93b8b0d15..592790c6f 100644 --- a/src/main/java/de/pixart/messenger/services/XmppConnectionService.java +++ b/src/main/java/de/pixart/messenger/services/XmppConnectionService.java @@ -365,7 +365,7 @@ public class XmppConnectionService extends Service { scheduleWakeUpCall(Config.PING_MAX_INTERVAL, account.getUuid().hashCode()); } else if (account.getStatus() == Account.State.OFFLINE || account.getStatus() == Account.State.DISABLED) { resetSendingToWaiting(account); - if (!account.isOptionSet(Account.OPTION_DISABLED) && isInLowPingTimeoutMode(account)) { + if (account.isEnabled() && isInLowPingTimeoutMode(account)) { Log.d(Config.LOGTAG, account.getJid().toBareJid() + ": went into offline state during low ping mode. reconnecting now"); reconnectAccount(account, true, false); } else { @@ -2502,7 +2502,7 @@ public class XmppConnectionService extends Service { private boolean hasEnabledAccounts() { for(Account account : this.accounts) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { return true; } } @@ -3265,7 +3265,7 @@ public class XmppConnectionService extends Service { account.setXmppConnection(connection); } boolean hasInternet = hasInternetConnection(); - if (!account.isOptionSet(Account.OPTION_DISABLED) && hasInternet) { + if (account.isEnabled() && hasInternet) { if (!force) { disconnect(account, false); } @@ -3724,7 +3724,7 @@ public class XmppConnectionService extends Service { public void refreshAllPresences() { boolean includeIdleTimestamp = checkListeners() && broadcastLastActivity(); for (Account account : getAccounts()) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { sendPresence(account, includeIdleTimestamp); } } @@ -3770,7 +3770,7 @@ public class XmppConnectionService extends Service { public List findContacts(Jid jid, String accountJid) { ArrayList contacts = new ArrayList<>(); for (Account account : getAccounts()) { - if ((!account.isOptionSet(Account.OPTION_DISABLED) || accountJid != null) + if ((account.isEnabled() || accountJid != null) && (accountJid == null || accountJid.equals(account.getJid().toBareJid().toString()))) { Contact contact = account.getRoster().getContactFromRoster(jid); if (contact != null) { @@ -3783,8 +3783,7 @@ public class XmppConnectionService extends Service { public Conversation findFirstMuc(Jid jid) { for (Conversation conversation : getConversations()) { - if (conversation.getJid().toBareJid().equals(jid.toBareJid()) - && conversation.getMode() == Conversation.MODE_MULTI) { + if (conversation.getAccount().isEnabled() && conversation.getJid().toBareJid().equals(jid.toBareJid()) && conversation.getMode() == Conversation.MODE_MULTI) { return conversation; } } @@ -4016,7 +4015,7 @@ public class XmppConnectionService extends Service { account.setPresenceStatus(status); account.setPresenceStatusMessage(statusMessage); databaseBackend.updateAccount(account); - if (!account.isOptionSet(Account.OPTION_DISABLED) && send) { + if (account.isEnabled() && send) { sendPresence(account); } } diff --git a/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java b/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java index 8ada0f1e7..14fde6fef 100644 --- a/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java +++ b/src/main/java/de/pixart/messenger/ui/EditAccountActivity.java @@ -260,7 +260,7 @@ public class EditAccountActivity extends OmemoActivity implements OnAccountUpdat } mHostname.setError(null); mPort.setError(null); - if (!mAccount.isOptionSet(Account.OPTION_DISABLED) + if (mAccount.isEnabled() && !registerNewAccount && !mInitMode) { finish(); diff --git a/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java b/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java index ffd904e5e..cfb982c0f 100644 --- a/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java +++ b/src/main/java/de/pixart/messenger/ui/ManageAccountActivity.java @@ -127,14 +127,14 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda R.menu.manageaccounts_context, menu); AdapterContextMenuInfo acmi = (AdapterContextMenuInfo) menuInfo; this.selectedAccount = accountList.get(acmi.position); - if (this.selectedAccount.isOptionSet(Account.OPTION_DISABLED)) { + if (this.selectedAccount.isEnabled()) { + menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(Config.supportOpenPgp()); + menu.findItem(R.id.mgmt_account_change_presence).setVisible(manuallyChangePresence()); + } else { menu.findItem(R.id.mgmt_account_reconnect).setVisible(false); menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(false); menu.findItem(R.id.mgmt_account_publish_avatar).setVisible(false); menu.findItem(R.id.mgmt_account_change_presence).setVisible(false); - } else { - menu.findItem(R.id.mgmt_account_announce_pgp).setVisible(Config.supportOpenPgp()); - menu.findItem(R.id.mgmt_account_change_presence).setVisible(manuallyChangePresence()); } menu.setHeaderTitle(this.selectedAccount.getJid().toBareJid().toString()); } @@ -265,7 +265,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda List list = new ArrayList<>(); synchronized (this.accountList) { for (Account account : this.accountList) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { list.add(account); } } @@ -278,7 +278,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda private boolean accountsLeftToDisable() { synchronized (this.accountList) { for (Account account : this.accountList) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { return true; } } @@ -289,7 +289,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda private boolean accountsLeftToEnable() { synchronized (this.accountList) { for (Account account : this.accountList) { - if (account.isOptionSet(Account.OPTION_DISABLED)) { + if (!account.isEnabled()) { return true; } } @@ -301,7 +301,7 @@ public class ManageAccountActivity extends XmppActivity implements OnAccountUpda List list = new ArrayList<>(); synchronized (this.accountList) { for (Account account : this.accountList) { - if (account.isOptionSet(Account.OPTION_DISABLED)) { + if (!account.isEnabled()) { list.add(account); } } diff --git a/src/main/java/de/pixart/messenger/ui/SettingsActivity.java b/src/main/java/de/pixart/messenger/ui/SettingsActivity.java index 1f5395748..adf8ab03f 100644 --- a/src/main/java/de/pixart/messenger/ui/SettingsActivity.java +++ b/src/main/java/de/pixart/messenger/ui/SettingsActivity.java @@ -184,7 +184,7 @@ public class SettingsActivity extends XmppActivity implements builder.setTitle(R.string.pref_delete_omemo_identities); final List accounts = new ArrayList<>(); for (Account account : xmppConnectionService.getAccounts()) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { accounts.add(account.getJid().toBareJid().toString()); } } @@ -251,7 +251,7 @@ public class SettingsActivity extends XmppActivity implements if (xmppConnectionServiceBound) { for (Account account : xmppConnectionService.getAccounts()) { if (account.setResource(resource)) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { XmppConnection connection = account.getXmppConnection(); if (connection != null) { connection.resetStreamId(); @@ -316,7 +316,7 @@ public class SettingsActivity extends XmppActivity implements private void reconnectAccounts() { for (Account account : xmppConnectionService.getAccounts()) { - if (!account.isOptionSet(Account.OPTION_DISABLED)) { + if (account.isEnabled()) { xmppConnectionService.reconnectAccountInBackground(account); } } diff --git a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java index aaae41e65..c1e6be256 100644 --- a/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java +++ b/src/main/java/de/pixart/messenger/ui/StartConversationActivity.java @@ -866,7 +866,7 @@ public class StartConversationActivity extends XmppActivity implements OnRosterU private boolean handleJid(Invite invite) { Account account = xmppConnectionService.findAccountByJid(invite.getJid()); - if (account != null && !account.isOptionSet(Account.OPTION_DISABLED)) { + if (account != null && account.isEnabled()) { if (invite.hasFingerprints() && xmppConnectionService.verifyFingerprints(account,invite.getFingerprints())) { Toast.makeText(this,R.string.verified_fingerprints,Toast.LENGTH_SHORT).show(); } diff --git a/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java b/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java index c511039cf..7ed5e4804 100644 --- a/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java +++ b/src/main/java/de/pixart/messenger/utils/ExceptionHelper.java @@ -51,7 +51,7 @@ public class ExceptionHelper { List accounts = service.getAccounts(); Account account = null; for (int i = 0; i < accounts.size(); ++i) { - if (!accounts.get(i).isOptionSet(Account.OPTION_DISABLED)) { + if (accounts.get(i).isEnabled()) { account = accounts.get(i); break; } -- cgit v1.2.3