mirror of
https://github.com/AsamK/signal-cli
synced 2025-08-30 02:50:39 +00:00
35 lines
1.2 KiB
Java
35 lines
1.2 KiB
Java
package org.asamk.signal;
|
|
|
|
import org.whispersystems.signalservice.api.messages.SignalServiceAttachment;
|
|
import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage;
|
|
|
|
import java.util.ArrayList;
|
|
import java.util.List;
|
|
|
|
class JsonDataMessage {
|
|
|
|
long timestamp;
|
|
String message;
|
|
int expiresInSeconds;
|
|
List<JsonAttachment> attachments;
|
|
JsonGroupInfo groupInfo;
|
|
|
|
JsonDataMessage(SignalServiceDataMessage dataMessage) {
|
|
this.timestamp = dataMessage.getTimestamp();
|
|
if (dataMessage.getGroupInfo().isPresent()) {
|
|
this.groupInfo = new JsonGroupInfo(dataMessage.getGroupInfo().get());
|
|
}
|
|
if (dataMessage.getBody().isPresent()) {
|
|
this.message = dataMessage.getBody().get();
|
|
}
|
|
this.expiresInSeconds = dataMessage.getExpiresInSeconds();
|
|
if (dataMessage.getAttachments().isPresent()) {
|
|
this.attachments = new ArrayList<>(dataMessage.getAttachments().get().size());
|
|
for (SignalServiceAttachment attachment : dataMessage.getAttachments().get()) {
|
|
this.attachments.add(new JsonAttachment(attachment));
|
|
}
|
|
} else {
|
|
this.attachments = new ArrayList<>();
|
|
}
|
|
}
|
|
}
|