summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/se/leap')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/eip/EipStatus.java17
1 files changed, 11 insertions, 6 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/eip/EipStatus.java b/app/src/main/java/se/leap/bitmaskclient/eip/EipStatus.java
index 4ac3bd6a..c6735130 100644
--- a/app/src/main/java/se/leap/bitmaskclient/eip/EipStatus.java
+++ b/app/src/main/java/se/leap/bitmaskclient/eip/EipStatus.java
@@ -44,18 +44,23 @@ public class EipStatus extends Observable implements VpnStatus.StateListener {
@Override
public void updateState(final String state, final String logmessage, final int localizedResId, final VpnStatus.ConnectionStatus level) {
+ updateStatus(state, logmessage, localizedResId, level);
+ if(isConnected() || isDisconnected()) {
+ setConnectedOrDisconnected();
+ if(isDisconnected())
+ VoidVpnService.stop();
+ } else if(isConnecting())
+ setConnecting();
+ Log.d(TAG, "update state with level " + level);
+ }
+
+ private void updateStatus(final String state, final String logmessage, final int localizedResId, final VpnStatus.ConnectionStatus level) {
current_status = getInstance();
current_status.setState(state);
current_status.setLogMessage(logmessage);
current_status.setLocalizedResId(localizedResId);
current_status.setLevel(level);
current_status.setChanged();
- if(isConnected() || isDisconnected())
- setConnectedOrDisconnected();
- else if(isConnecting())
- setConnecting();
- Log.d(TAG, "update state with level " + level);
- current_status.notifyObservers();
}
public boolean wantsToDisconnect() {