mirror of
https://github.com/aljazceru/signal-cli.git
synced 2026-01-05 07:04:27 +01:00
Use record classes
This commit is contained in:
@@ -1,39 +1,17 @@
|
||||
package org.asamk.signal.json;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
import org.whispersystems.signalservice.api.messages.SignalServiceReceiptMessage;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
class JsonReceiptMessage {
|
||||
record JsonReceiptMessage(long when, boolean isDelivery, boolean isRead, List<Long> timestamps) {
|
||||
|
||||
@JsonProperty
|
||||
final long when;
|
||||
|
||||
@JsonProperty
|
||||
final boolean isDelivery;
|
||||
|
||||
@JsonProperty
|
||||
final boolean isRead;
|
||||
|
||||
@JsonProperty
|
||||
final List<Long> timestamps;
|
||||
|
||||
JsonReceiptMessage(SignalServiceReceiptMessage receiptMessage) {
|
||||
this.when = receiptMessage.getWhen();
|
||||
this.isDelivery = receiptMessage.isDeliveryReceipt();
|
||||
this.isRead = receiptMessage.isReadReceipt();
|
||||
this.timestamps = receiptMessage.getTimestamps();
|
||||
}
|
||||
|
||||
private JsonReceiptMessage(
|
||||
final long when, final boolean isDelivery, final boolean isRead, final List<Long> timestamps
|
||||
) {
|
||||
this.when = when;
|
||||
this.isDelivery = isDelivery;
|
||||
this.isRead = isRead;
|
||||
this.timestamps = timestamps;
|
||||
static JsonReceiptMessage from(SignalServiceReceiptMessage receiptMessage) {
|
||||
final var when = receiptMessage.getWhen();
|
||||
final var isDelivery = receiptMessage.isDeliveryReceipt();
|
||||
final var isRead = receiptMessage.isReadReceipt();
|
||||
final var timestamps = receiptMessage.getTimestamps();
|
||||
return new JsonReceiptMessage(when, isDelivery, isRead, timestamps);
|
||||
}
|
||||
|
||||
static JsonReceiptMessage deliveryReceipt(final long when, final List<Long> timestamps) {
|
||||
|
||||
Reference in New Issue
Block a user