summaryrefslogtreecommitdiff
path: root/app/src/main/java/se/leap/bitmaskclient/Provider.java
diff options
context:
space:
mode:
Diffstat (limited to 'app/src/main/java/se/leap/bitmaskclient/Provider.java')
-rw-r--r--app/src/main/java/se/leap/bitmaskclient/Provider.java16
1 files changed, 13 insertions, 3 deletions
diff --git a/app/src/main/java/se/leap/bitmaskclient/Provider.java b/app/src/main/java/se/leap/bitmaskclient/Provider.java
index 0d584310..dd679bb2 100644
--- a/app/src/main/java/se/leap/bitmaskclient/Provider.java
+++ b/app/src/main/java/se/leap/bitmaskclient/Provider.java
@@ -86,7 +86,9 @@ public final class Provider implements Parcelable {
private Provider(Parcel in) {
try {
main_url = new URL(in.readString());
- definition = new JSONObject((in.readString()));
+ String definition_string = in.readString();
+ if(definition_string != null)
+ definition = new JSONObject((definition_string));
} catch (MalformedURLException e) {
e.printStackTrace();
} catch (JSONException e) {
@@ -94,7 +96,6 @@ public final class Provider implements Parcelable {
}
}
-
protected void define(JSONObject provider_json) {
definition = provider_json;
}
@@ -175,6 +176,15 @@ public final class Provider implements Parcelable {
@Override
public void writeToParcel(Parcel parcel, int i) {
parcel.writeString(main_url.toString());
- parcel.writeString(definition.toString());
+ if(definition != null)
+ parcel.writeString(definition.toString());
+ }
+
+ @Override
+ public boolean equals(Object o) {
+ if(o instanceof Provider) {
+ Provider p = (Provider) o;
+ return p.mainUrl().equals(mainUrl());
+ } else return false;
}
}