summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/base/models
diff options
context:
space:
mode:
authorcyberta <cyberta@riseup.net>2022-08-06 18:37:13 +0000
committercyberta <cyberta@riseup.net>2022-08-06 18:37:13 +0000
commitb1cb49a2f78c80db0b3fa037a0b4e3c1c9c7dd61 (patch)
tree77effd84682014db0db950113cab239fa4370dc4 /app/src/main/java/se/leap/bitmaskclient/base/models
parent3bdbe09ffd7f4039f37af93b0da6b0965e09e0bd (diff)
parent598105bbaa383b27cadb682b76cdf00e5ad58369 (diff)
Merge branch 'update_obfuscation_pinning_defaults' into 'master'
Update obfuscation pinning defaults See merge request leap/bitmask_android!204
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/base/models')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/base/models/Constants.java2
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/base/models/GatewayJson.java61
2 files changed, 61 insertions, 2 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/base/models/Constants.java b/app/src/main/java/se/leap/bitmaskclient/base/models/Constants.java
index 8fbac35e..fd9f2a9b 100644
--- a/app/src/main/java/se/leap/bitmaskclient/base/models/Constants.java
+++ b/app/src/main/java/se/leap/bitmaskclient/base/models/Constants.java
@@ -50,8 +50,6 @@ public interface Constants {
String OBFUSCATION_PINNING_PORT = "obfuscation_pinning_port";
String OBFUSCATION_PINNING_CERT = "obfuscation_pinning_cert";
String OBFUSCATION_PINNING_KCP = "obfuscation_pinning_udp";
- String OBFUSCATION_PINNING_GW_HOST = "obfuscation_pinning_gw_host";
- String OBFUSCATION_PINNING_GW_IP = "obfuscation_pinning_gw_ip";
String OBFUSCATION_PINNING_LOCATION = "obfuscation_pinning_location";
diff --git a/app/src/main/java/se/leap/bitmaskclient/base/models/GatewayJson.java b/app/src/main/java/se/leap/bitmaskclient/base/models/GatewayJson.java
new file mode 100644
index 00000000..8aca58c6
--- /dev/null
+++ b/app/src/main/java/se/leap/bitmaskclient/base/models/GatewayJson.java
@@ -0,0 +1,61 @@
+package se.leap.bitmaskclient.base.models;
+
+import androidx.annotation.NonNull;
+
+import com.google.gson.Gson;
+import com.google.gson.GsonBuilder;
+import com.google.gson.annotations.SerializedName;
+
+import org.json.JSONObject;
+
+public class GatewayJson {
+ private String location;
+ @SerializedName(value = "ip_address")
+ private String ipAddress;
+ @SerializedName(value = "ip_address6")
+ private String ipAddress6;
+ private String host;
+ private Capabilities capabilities;
+
+ public GatewayJson(String location, String ipAddress, String ipAddress6, String host, Capabilities capabilities) {
+ this.location = location;
+ this.ipAddress = ipAddress;
+ this.ipAddress6 = ipAddress6;
+ this.host = host;
+ this.capabilities = capabilities;
+ }
+
+ @NonNull
+ @Override
+ public String toString() {
+ return new Gson().toJson(this);
+ }
+
+ public static GatewayJson fromJson(JSONObject json) {
+ GsonBuilder builder = new GsonBuilder();
+ return builder.create().fromJson(json.toString(), GatewayJson.class);
+ }
+
+ public static class Capabilities {
+ private Boolean adblock;
+ @SerializedName(value = "filter_dns")
+ private Boolean filterDns;
+ private Boolean limited;
+ private Transport[] transport;
+ @SerializedName(value = "user_ips")
+ private Boolean userIps;
+
+ public Capabilities(Boolean adblock, Boolean filterDns, Boolean limited, Transport[] transport, Boolean userIps) {
+ this.adblock = adblock;
+ this.filterDns = filterDns;
+ this.limited = limited;
+ this.transport = transport;
+ this.userIps = userIps;
+ }
+ @NonNull
+ @Override
+ public String toString() {
+ return new Gson().toJson(this);
+ }
+ }
+}