summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java
diff options
context:
space:
mode:
authorcyBerta <cyberta@riseup.net>2018-01-17 18:15:38 +0100
committercyBerta <cyberta@riseup.net>2018-01-17 18:16:08 +0100
commitac06bd8dc7045a1f61c47dda79622c3b4908a3c4 (patch)
treee1fe45583a77416392f45419d78dcf2105cd27af /app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java
parent20582f79321627257d1b66b22af791e9e22817fd (diff)
#8811 set vpn option to top of navigation drawer, minor ux improvements
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java34
1 files changed, 33 insertions, 1 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java b/app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java
index 0e861059..ccdf5064 100644
--- a/app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java
+++ b/app/src/main/java/se/leap/bitmaskclient/ConfigHelper.java
@@ -16,6 +16,7 @@
*/
package se.leap.bitmaskclient;
+import android.content.SharedPreferences;
import android.support.annotation.NonNull;
import android.util.Log;
@@ -28,8 +29,9 @@ import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
-import java.io.UnsupportedEncodingException;
import java.math.BigInteger;
+import java.net.MalformedURLException;
+import java.net.URL;
import java.security.KeyFactory;
import java.security.KeyStore;
import java.security.KeyStoreException;
@@ -45,6 +47,7 @@ import java.security.spec.InvalidKeySpecException;
import java.security.spec.PKCS8EncodedKeySpec;
import static android.R.attr.name;
+import static se.leap.bitmaskclient.Constants.PROVIDER_CONFIGURED;
/**
* Stores constants, and implements auxiliary methods used across all Bitmask Android classes.
@@ -256,4 +259,33 @@ public class ConfigHelper {
public static KeyStore getKeystore() {
return keystore_trusted;
}
+
+
+ public static String getCurrentProviderName(@NonNull SharedPreferences preferences) {
+ try {
+ JSONObject providerDefintion = new JSONObject(preferences.getString(Provider.KEY, ""));
+ return providerDefintion.getString(Provider.DOMAIN);
+ } catch (JSONException e) {
+ e.printStackTrace();
+ }
+ return null;
+ }
+
+ public static boolean providerInSharedPreferences(@NonNull SharedPreferences preferences) {
+ return preferences.getBoolean(PROVIDER_CONFIGURED, false);
+ }
+
+ public static Provider getSavedProviderFromSharedPreferences(@NonNull SharedPreferences preferences) {
+ Provider provider = new Provider();
+ try {
+ provider.setUrl(new URL(preferences.getString(Provider.MAIN_URL, "")));
+ provider.define(new JSONObject(preferences.getString(Provider.KEY, "")));
+ provider.setCACert(preferences.getString(Provider.CA_CERT, ""));
+ } catch (MalformedURLException | JSONException e) {
+ e.printStackTrace();
+ }
+
+ return provider;
+ }
+
}