- JsonReaction(Reaction reaction, Manager m) {
- this.emoji = reaction.getEmoji();
- this.targetAuthor = m.resolveSignalServiceAddress(reaction.getTargetAuthor()).getLegacyIdentifier();
- this.targetSentTimestamp = reaction.getTargetSentTimestamp();
- this.isRemove = reaction.isRemove();
+ static JsonReaction from(Reaction reaction, Manager m) {
+ final var emoji = reaction.getEmoji();
+ final var address = m.resolveSignalServiceAddress(reaction.getTargetAuthor());
+ final var targetAuthor = getLegacyIdentifier(address);
+ final var targetAuthorNumber = address.getNumber().orNull();
+ final var targetAuthorUuid = address.getUuid().toString();
+ final var targetSentTimestamp = reaction.getTargetSentTimestamp();
+ final var isRemove = reaction.isRemove();
+ return new JsonReaction(emoji,
+ targetAuthor,
+ targetAuthorNumber,
+ targetAuthorUuid,
+ targetSentTimestamp,
+ isRemove);