import com.fasterxml.jackson.annotation.JsonInclude;
-import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage;
+import org.asamk.signal.manager.api.MessageEnvelope;
public record JsonQuotedAttachment(
String contentType, String filename, @JsonInclude(JsonInclude.Include.NON_NULL) JsonAttachment thumbnail
) {
- static JsonQuotedAttachment from(SignalServiceDataMessage.Quote.QuotedAttachment quotedAttachment) {
- final var contentType = quotedAttachment.getContentType();
- final var filename = quotedAttachment.getFileName();
- final JsonAttachment thumbnail;
- if (quotedAttachment.getThumbnail() != null) {
- thumbnail = JsonAttachment.from(quotedAttachment.getThumbnail());
- } else {
- thumbnail = null;
- }
+ static JsonQuotedAttachment from(MessageEnvelope.Data.Attachment quotedAttachment) {
+ final var contentType = quotedAttachment.contentType();
+ final var filename = quotedAttachment.fileName().orElse(null);
+ final var thumbnail = quotedAttachment.thumbnail().isPresent()
+ ? JsonAttachment.from(quotedAttachment.thumbnail().get())
+ : null;
return new JsonQuotedAttachment(contentType, filename, thumbnail);
}
}