package org.asamk.signal.json;
-import com.fasterxml.jackson.annotation.JsonProperty;
-
-import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage;
+import org.asamk.signal.manager.api.MessageEnvelope;
import java.util.Base64;
-public class JsonSticker {
-
- @JsonProperty
- final String packId;
-
- @JsonProperty
- final String packKey;
-
- @JsonProperty
- final int stickerId;
+public record JsonSticker(String packId, String packKey, int stickerId) {
- public JsonSticker(SignalServiceDataMessage.Sticker sticker) {
- this.packId = Base64.getEncoder().encodeToString(sticker.getPackId());
- this.packKey = Base64.getEncoder().encodeToString(sticker.getPackKey());
- this.stickerId = sticker.getStickerId();
+ static JsonSticker from(MessageEnvelope.Data.Sticker sticker) {
+ final var encoder = Base64.getEncoder();
+ final var packId = encoder.encodeToString(sticker.packId());
+ final var packKey = encoder.encodeToString(sticker.packKey());
+ final var stickerId = sticker.stickerId();
+ return new JsonSticker(packId, packKey, stickerId);
}
}