]>
nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/json/JsonQuote.java
1 package org
.asamk
.signal
.json
;
3 import com
.fasterxml
.jackson
.annotation
.JsonInclude
;
4 import com
.fasterxml
.jackson
.annotation
.JsonProperty
;
6 import org
.asamk
.signal
.manager
.Manager
;
7 import org
.whispersystems
.signalservice
.api
.messages
.SignalServiceDataMessage
;
9 import java
.util
.ArrayList
;
10 import java
.util
.List
;
11 import java
.util
.stream
.Collectors
;
13 public class JsonQuote
{
25 @JsonInclude(JsonInclude
.Include
.NON_NULL
)
26 final List
<JsonMention
> mentions
;
29 final List
<JsonQuotedAttachment
> attachments
;
31 JsonQuote(SignalServiceDataMessage
.Quote quote
, Manager m
) {
32 this.id
= quote
.getId();
33 this.author
= m
.resolveSignalServiceAddress(quote
.getAuthor()).getLegacyIdentifier();
34 this.text
= quote
.getText();
36 if (quote
.getMentions() != null && quote
.getMentions().size() > 0) {
37 this.mentions
= quote
.getMentions()
39 .map(quotedMention
-> new JsonMention(quotedMention
, m
))
40 .collect(Collectors
.toList());
45 if (quote
.getAttachments().size() > 0) {
46 this.attachments
= quote
.getAttachments()
48 .map(JsonQuotedAttachment
::new)
49 .collect(Collectors
.toList());
51 this.attachments
= new ArrayList
<>();