]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonContactAddress.java
Output "SharedContacts" field from a SignalDataMessage (#529)
[signal-cli] / src / main / java / org / asamk / signal / json / JsonContactAddress.java
diff --git a/src/main/java/org/asamk/signal/json/JsonContactAddress.java b/src/main/java/org/asamk/signal/json/JsonContactAddress.java
new file mode 100644 (file)
index 0000000..712dd4f
--- /dev/null
@@ -0,0 +1,48 @@
+package org.asamk.signal.json;
+
+import com.fasterxml.jackson.annotation.JsonProperty;
+
+import org.asamk.signal.util.Util;
+import org.whispersystems.signalservice.api.messages.shared.SharedContact;
+
+public class JsonContactAddress {
+
+    @JsonProperty
+    private final SharedContact.PostalAddress.Type type;
+
+    @JsonProperty
+    private final String label;
+
+    @JsonProperty
+    private final String street;
+
+    @JsonProperty
+    private final String pobox;
+
+    @JsonProperty
+    private final String neighborhood;
+
+    @JsonProperty
+    private final String city;
+
+    @JsonProperty
+    private final String region;
+
+    @JsonProperty
+    private final String postcode;
+
+    @JsonProperty
+    private final String country;
+
+    public JsonContactAddress(SharedContact.PostalAddress address) {
+        type = address.getType();
+        label = Util.getStringIfNotBlank(address.getLabel());
+        street = Util.getStringIfNotBlank(address.getStreet());
+        pobox = Util.getStringIfNotBlank(address.getPobox());
+        neighborhood = Util.getStringIfNotBlank(address.getNeighborhood());
+        city = Util.getStringIfNotBlank(address.getCity());
+        region = Util.getStringIfNotBlank(address.getRegion());
+        postcode = Util.getStringIfNotBlank(address.getPostcode());
+        country = Util.getStringIfNotBlank(address.getCountry());
+    }
+}