summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2021-11-06 00:21:05 +0100
committercyBerta <cyberta@riseup.net>2021-11-06 00:21:05 +0100
commitaecd8ca5ecf984b581e0b0165cd168976dc6c0f2 (patch)
tree01d7f759dfb26e4b59b0c49aa98f73745dea5df6 /app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java
parenta995b8a674ef8e89e0c86b0f113016f8fa07c716 (diff)
implement tiomeout error handling + UI if tor doesn't start within 3 minutes
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java14
1 files changed, 13 insertions, 1 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java
index 4afeb26e..65810861 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderAPI.java
@@ -79,6 +79,7 @@ public class ProviderAPI extends JobIntentService implements ProviderApiManagerB
RECEIVER_KEY = "receiver",
ERRORS = "errors",
ERRORID = "errorId",
+ INITIAL_ACTION = "initalAction",
BACKEND_ERROR_KEY = "error",
BACKEND_ERROR_MESSAGE = "message",
USER_MESSAGE = "userMessage",
@@ -100,7 +101,8 @@ public class ProviderAPI extends JobIntentService implements ProviderApiManagerB
CORRECTLY_UPDATED_INVALID_VPN_CERTIFICATE = 15,
INCORRECTLY_UPDATED_INVALID_VPN_CERTIFICATE = 16,
CORRECTLY_DOWNLOADED_GEOIP_JSON = 17,
- INCORRECTLY_DOWNLOADED_GEOIP_JSON = 18;
+ INCORRECTLY_DOWNLOADED_GEOIP_JSON = 18,
+ TOR_TIMEOUT = 19;
ProviderApiManager providerApiManager;
private volatile TorServiceConnection torServiceConnection;
@@ -137,6 +139,10 @@ public class ProviderAPI extends JobIntentService implements ProviderApiManagerB
@Override
public void onDestroy() {
super.onDestroy();
+ closeTorServiceConnection();
+ }
+
+ private void closeTorServiceConnection() {
if (torServiceConnection != null) {
torServiceConnection.close();
torServiceConnection = null;
@@ -168,6 +174,12 @@ public class ProviderAPI extends JobIntentService implements ProviderApiManagerB
}
}
+ @Override
+ public void stopTorService() throws IllegalStateException {
+ closeTorServiceConnection();
+ Intent stopIntent = new Intent(this, TorService.class);
+ stopService(stopIntent);
+ }
@Override
public int getTorHttpTunnelPort() {