summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/providersetup
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2024-10-10 20:19:04 +0200
committercyberta <cyberta@riseup.net>2024-12-11 00:09:34 +0000
commit5484bac21a3b1df96ec7b2a4d4d87df47933e069 (patch)
treeed9fc06cfabf91dfa7a1416005a0c12fd6376200 /app/src/main/java/se/leap/bitmaskclient/providersetup
parent3eb2fac776cc9222a756dcf474eaae6d386a1de3 (diff)
refactoring in Provider class: replace DefaultURL with strings, keep api as integer instead of a string
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/providersetup')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManager.java2
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerBase.java2
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerFactory.java2
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerV3.java17
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiSetupBroadcastReceiver.java2
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderManager.java14
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderSetupFailedDialog.java2
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ConfigureProviderFragment.java2
8 files changed, 21 insertions, 22 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManager.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManager.java
index 0d023dfc..f4110877 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManager.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManager.java
@@ -140,7 +140,7 @@ public class ProviderApiManager extends ProviderApiManagerBase {
private Bundle getAndSetProviderJson(Provider provider) {
Bundle result = new Bundle();
- String providerJsonUrl = provider.getMainUrlString() + "/provider.json";
+ String providerJsonUrl = provider.getMainUrl() + "/provider.json";
String providerDotJsonString = fetch(providerJsonUrl, true);
if (ConfigHelper.checkErroneousDownload(providerDotJsonString) || !isValidJson(providerDotJsonString)) {
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerBase.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerBase.java
index ea50e741..3032bd4f 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerBase.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerBase.java
@@ -143,7 +143,7 @@ public abstract class ProviderApiManagerBase {
}
protected void getPersistedProviderUpdates(Provider provider) {
- String providerDomain = getDomainFromMainURL(provider.getMainUrlString());
+ String providerDomain = getDomainFromMainURL(provider.getMainUrl());
if (hasUpdatedProviderDetails(providerDomain)) {
provider.setCaCert(getPersistedProviderCA(providerDomain));
provider.define(getPersistedProviderDefinition(providerDomain));
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerFactory.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerFactory.java
index 5abec0af..b6c1c955 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerFactory.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerFactory.java
@@ -17,7 +17,7 @@ public class ProviderApiManagerFactory {
public IProviderApiManager getProviderApiManager(Provider provider) throws IllegalArgumentException {
switch (provider.getApiVersion()) {
- case "5":
+ case 5:
return new ProviderApiManagerV5(resources, callback);
default:
OkHttpClientGenerator clientGenerator = new OkHttpClientGenerator(resources);
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerV3.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerV3.java
index a63899c0..f827d85d 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerV3.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiManagerV3.java
@@ -17,7 +17,6 @@
package se.leap.bitmaskclient.providersetup;
-import static android.text.TextUtils.isEmpty;
import static se.leap.bitmaskclient.BuildConfig.DEBUG_MODE;
import static se.leap.bitmaskclient.R.string.certificate_error;
import static se.leap.bitmaskclient.R.string.downloading_vpn_certificate_failed;
@@ -202,7 +201,7 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
ProviderObservable.getInstance().setProviderForDns(null);
break;
case DOWNLOAD_GEOIP_JSON:
- if (!provider.getGeoipUrl().isDefault()) {
+ if (!provider.getGeoipUrl().isEmpty()) {
boolean startEIP = parameters.getBoolean(EIP_ACTION_START);
ProviderObservable.getInstance().setProviderForDns(provider);
result = getGeoIPJson(provider);
@@ -227,7 +226,7 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
public Bundle setupProvider(Provider provider, Bundle task) {
Bundle currentDownload = new Bundle();
- if (isEmpty(provider.getMainUrlString()) || provider.getMainUrl().isDefault()) {
+ if (provider.getMainUrl().isEmpty()) {
currentDownload.putBoolean(BROADCAST_RESULT_KEY, false);
eventSender.setErrorResult(currentDownload, malformed_url, null);
VpnStatus.logWarning("[API] MainURL String is not set. Cannot setup provider.");
@@ -274,7 +273,7 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
String providerDotJsonString;
if(provider.getDefinitionString().length() == 0 || provider.getCaCert().isEmpty()) {
- String providerJsonUrl = provider.getMainUrlString() + "/provider.json";
+ String providerJsonUrl = provider.getMainUrl() + "/provider.json";
providerDotJsonString = downloadWithCommercialCA(providerJsonUrl, provider);
} else {
providerDotJsonString = downloadFromApiUrlWithProviderCA("/provider.json", provider);
@@ -367,13 +366,13 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
private Bundle getGeoIPJson(Provider provider) {
Bundle result = new Bundle();
- if (!provider.shouldUpdateGeoIpJson() || provider.getGeoipUrl().isDefault() || VpnStatus.isVPNActive() || TorStatusObservable.getStatus() != OFF) {
+ if (!provider.shouldUpdateGeoIpJson() || provider.getGeoipUrl().isEmpty() || VpnStatus.isVPNActive() || TorStatusObservable.getStatus() != OFF) {
result.putBoolean(BROADCAST_RESULT_KEY, false);
return result;
}
try {
- URL geoIpUrl = provider.getGeoipUrl().getUrl();
+ URL geoIpUrl = new URL(provider.getGeoipUrl());
String geoipJsonString = downloadFromUrlWithProviderCA(geoIpUrl.toString(), provider, false);
if (DEBUG_MODE) {
@@ -389,7 +388,7 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
result.putBoolean(BROADCAST_RESULT_KEY, true);
}
- } catch (JSONException | NullPointerException e) {
+ } catch (JSONException | NullPointerException | MalformedURLException e) {
result.putBoolean(BROADCAST_RESULT_KEY, false);
e.printStackTrace();
}
@@ -477,7 +476,7 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
* @return an empty string if it fails, the response body if not.
*/
private String downloadFromApiUrlWithProviderCA(String path, Provider provider) {
- String baseUrl = provider.getApiUrlString();
+ String baseUrl = provider.getApiUrl();
String urlString = baseUrl + path;
return downloadFromUrlWithProviderCA(urlString, provider);
}
@@ -594,7 +593,7 @@ public class ProviderApiManagerV3 extends ProviderApiManagerBase implements IPro
private boolean canConnect(Provider provider, Bundle result, int tries) {
JSONObject errorJson = new JSONObject();
- String providerUrl = provider.getApiUrlString() + "/provider.json";
+ String providerUrl = provider.getApiUrl() + "/provider.json";
OkHttpClient okHttpClient = clientGenerator.initSelfSignedCAHttpClient(provider.getCaCert(), getProxyPort(), errorJson);
if (okHttpClient == null) {
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiSetupBroadcastReceiver.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiSetupBroadcastReceiver.java
index ee39499b..bd6c5ef2 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiSetupBroadcastReceiver.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderApiSetupBroadcastReceiver.java
@@ -64,7 +64,7 @@ public class ProviderApiSetupBroadcastReceiver extends BroadcastReceiver {
Provider handledProvider = resultData.getParcelable(Constants.PROVIDER_KEY);
if (handledProvider != null && setupInterface.getProvider() != null &&
- handledProvider.getMainUrlString().equalsIgnoreCase(setupInterface.getProvider().getMainUrlString())) {
+ handledProvider.getMainUrl().equalsIgnoreCase(setupInterface.getProvider().getMainUrl())) {
switch (resultCode) {
case ProviderAPI.PROVIDER_OK:
setupInterface.handleProviderSetUp(handledProvider);
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderManager.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderManager.java
index 9eacae5d..63fbde09 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderManager.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderManager.java
@@ -78,7 +78,7 @@ public class ProviderManager {
private Set<String> getProviderUrlSetFromProviderSet(Set<Provider> providers) {
HashSet<String> providerUrls = new HashSet<>();
for (Provider provider : providers) {
- providerUrls.add(provider.getMainUrl().toString());
+ providerUrls.add(provider.getMainUrl());
}
return providerUrls;
}
@@ -152,10 +152,10 @@ public class ProviderManager {
public boolean add(Provider element) {
boolean addElement = element != null &&
- !defaultProviderURLs.contains(element.getMainUrlString()) &&
- !customProviders.containsKey(element.getMainUrlString());
+ !defaultProviderURLs.contains(element.getMainUrl()) &&
+ !customProviders.containsKey(element.getMainUrl());
if (addElement) {
- customProviders.put(element.getMainUrlString(), element);
+ customProviders.put(element.getMainUrl(), element);
return true;
}
return false;
@@ -163,7 +163,7 @@ public class ProviderManager {
public boolean remove(Object element) {
return element instanceof Provider &&
- customProviders.remove(((Provider) element).getMainUrlString()) != null;
+ customProviders.remove(((Provider) element).getMainUrl()) != null;
}
public boolean addAll(Collection<? extends Provider> elements) {
@@ -171,9 +171,9 @@ public class ProviderManager {
boolean addedAll = true;
while (iterator.hasNext()) {
Provider p = (Provider) iterator.next();
- boolean containsKey = customProviders.containsKey(p.getMainUrlString());
+ boolean containsKey = customProviders.containsKey(p.getMainUrl());
if (!containsKey) {
- customProviders.put(p.getMainUrlString(), p);
+ customProviders.put(p.getMainUrl(), p);
}
addedAll = !containsKey && addedAll;
}
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderSetupFailedDialog.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderSetupFailedDialog.java
index 338a60e9..162238bf 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderSetupFailedDialog.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/ProviderSetupFailedDialog.java
@@ -136,7 +136,7 @@ public class ProviderSetupFailedDialog extends DialogFragment {
break;
case ERROR_NEW_URL_NO_VPN_PROVIDER:
builder.setPositiveButton(R.string.retry, (dialog, id)
- -> interfaceWithConfigurationWizard.addAndSelectNewProvider(provider.getMainUrlString()));
+ -> interfaceWithConfigurationWizard.addAndSelectNewProvider(provider.getMainUrl()));
break;
case ERROR_TOR_TIMEOUT:
builder.setPositiveButton(R.string.retry, (dialog, id) -> {
diff --git a/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ConfigureProviderFragment.java b/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ConfigureProviderFragment.java
index 621cb41a..c1a53545 100644
--- a/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ConfigureProviderFragment.java
+++ b/app/src/main/java/se/leap/bitmaskclient/providersetup/fragments/ConfigureProviderFragment.java
@@ -215,7 +215,7 @@ public class ConfigureProviderFragment extends BaseSetupFragment implements Prop
if (ignoreProviderAPIUpdates ||
provider == null ||
(setupActivityCallback.getSelectedProvider() != null &&
- !setupActivityCallback.getSelectedProvider().getMainUrlString().equals(provider.getMainUrlString()))) {
+ !setupActivityCallback.getSelectedProvider().getMainUrl().equals(provider.getMainUrl()))) {
return;
}