]>
nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/json/JsonSharedContact.java
ea15b5748ff379e76faf801d661b03abc09bc88b
1 package org
.asamk
.signal
.json
;
3 import com
.fasterxml
.jackson
.annotation
.JsonInclude
;
4 import com
.fasterxml
.jackson
.annotation
.JsonProperty
;
6 import org
.whispersystems
.signalservice
.api
.messages
.shared
.SharedContact
;
9 import java
.util
.stream
.Collectors
;
11 public class JsonSharedContact
{
14 final JsonContactName name
;
17 final JsonContactAvatar avatar
;
20 @JsonInclude(JsonInclude
.Include
.NON_NULL
)
21 final List
<JsonContactPhone
> phone
;
24 @JsonInclude(JsonInclude
.Include
.NON_NULL
)
25 final List
<JsonContactEmail
> email
;
28 @JsonInclude(JsonInclude
.Include
.NON_NULL
)
29 final List
<JsonContactAddress
> address
;
32 final String organization
;
34 public JsonSharedContact(SharedContact contact
) {
35 name
= new JsonContactName(contact
.getName());
36 if (contact
.getAvatar().isPresent()) {
37 avatar
= new JsonContactAvatar(contact
.getAvatar().get());
42 if (contact
.getPhone().isPresent()) {
43 phone
= contact
.getPhone().get().stream().map(JsonContactPhone
::new).collect(Collectors
.toList());
48 if (contact
.getEmail().isPresent()) {
49 email
= contact
.getEmail().get().stream().map(JsonContactEmail
::new).collect(Collectors
.toList());
54 if (contact
.getAddress().isPresent()) {
55 address
= contact
.getAddress().get().stream().map(JsonContactAddress
::new).collect(Collectors
.toList());
60 organization
= contact
.getOrganization().orNull();