]> nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/JsonDataMessage.java
Improve SignalServiceAddress handling
[signal-cli] / src / main / java / org / asamk / signal / JsonDataMessage.java
1 package org.asamk.signal;
2
3 import org.whispersystems.signalservice.api.messages.SignalServiceAttachment;
4 import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage;
5
6 import java.util.ArrayList;
7 import java.util.List;
8
9 class JsonDataMessage {
10
11 long timestamp;
12 String message;
13 int expiresInSeconds;
14 List<JsonAttachment> attachments;
15 JsonGroupInfo groupInfo;
16
17 JsonDataMessage(SignalServiceDataMessage dataMessage) {
18 this.timestamp = dataMessage.getTimestamp();
19 if (dataMessage.getGroupInfo().isPresent()) {
20 this.groupInfo = new JsonGroupInfo(dataMessage.getGroupInfo().get());
21 }
22 if (dataMessage.getBody().isPresent()) {
23 this.message = dataMessage.getBody().get();
24 }
25 this.expiresInSeconds = dataMessage.getExpiresInSeconds();
26 if (dataMessage.getAttachments().isPresent()) {
27 this.attachments = new ArrayList<>(dataMessage.getAttachments().get().size());
28 for (SignalServiceAttachment attachment : dataMessage.getAttachments().get()) {
29 this.attachments.add(new JsonAttachment(attachment));
30 }
31 } else {
32 this.attachments = new ArrayList<>();
33 }
34 }
35 }