From 67f62947c6d4cc5f4b9d4334bfe55b753bc6a12c Mon Sep 17 00:00:00 2001 From: AsamK Date: Wed, 23 Dec 2020 11:24:07 +0100 Subject: [PATCH] Add null check and change some formatting --- .../asamk/signal/ReceiveMessageHandler.java | 13 +++------- .../asamk/signal/json/JsonDataMessage.java | 24 +++++++++---------- .../org/asamk/signal/json/JsonMention.java | 7 ++---- .../java/org/asamk/signal/json/JsonQuote.java | 22 ++++++++--------- .../signal/json/JsonQuotedAttachment.java | 3 +-- 5 files changed, 28 insertions(+), 41 deletions(-) diff --git a/src/main/java/org/asamk/signal/ReceiveMessageHandler.java b/src/main/java/org/asamk/signal/ReceiveMessageHandler.java index f961fa1f..711f503d 100644 --- a/src/main/java/org/asamk/signal/ReceiveMessageHandler.java +++ b/src/main/java/org/asamk/signal/ReceiveMessageHandler.java @@ -449,7 +449,7 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { System.out.println("Quote: (" + quote.getId() + ")"); System.out.println(" Author: " + m.resolveSignalServiceAddress(quote.getAuthor()).getLegacyIdentifier()); System.out.println(" Text: " + quote.getText()); - if (quote.getMentions().size() > 0) { + if (quote.getMentions() != null && quote.getMentions().size() > 0) { System.out.println(" Mentions: "); for (SignalServiceDataMessage.Mention mention : quote.getMentions()) { printMention(mention, m); @@ -488,15 +488,8 @@ public class ReceiveMessageHandler implements Manager.ReceiveMessageHandler { } private void printMention(SignalServiceDataMessage.Mention mention, Manager m) { - System.out.println("- " - + m.resolveSignalServiceAddress( - new SignalServiceAddress(mention.getUuid(), null) - ).getLegacyIdentifier() - + ": " - + mention.getStart() - + " (length: " - + mention.getLength() - + ")"); + System.out.println("- " + m.resolveSignalServiceAddress(new SignalServiceAddress(mention.getUuid(), null)) + .getLegacyIdentifier() + ": " + mention.getStart() + " (length: " + mention.getLength() + ")"); } private void printAttachment(SignalServiceAttachment attachment) { diff --git a/src/main/java/org/asamk/signal/json/JsonDataMessage.java b/src/main/java/org/asamk/signal/json/JsonDataMessage.java index 957e3a79..57201eda 100644 --- a/src/main/java/org/asamk/signal/json/JsonDataMessage.java +++ b/src/main/java/org/asamk/signal/json/JsonDataMessage.java @@ -2,12 +2,10 @@ package org.asamk.signal.json; import org.asamk.Signal; import org.asamk.signal.manager.Manager; -import org.whispersystems.signalservice.api.messages.SignalServiceAttachment; import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage; import org.whispersystems.signalservice.api.messages.SignalServiceGroup; import org.whispersystems.signalservice.api.messages.SignalServiceGroupV2; -import java.util.ArrayList; import java.util.List; import java.util.stream.Collectors; @@ -45,20 +43,22 @@ class JsonDataMessage { this.quote = new JsonQuote(dataMessage.getQuote().get(), m); } if (dataMessage.getMentions().isPresent()) { - this.mentions = new ArrayList<>(dataMessage.getMentions().get().size()); - for (SignalServiceDataMessage.Mention mention : dataMessage.getMentions().get()) { - this.mentions.add(new JsonMention(mention, m)); - } + this.mentions = dataMessage.getMentions() + .get() + .stream() + .map(mention -> new JsonMention(mention, m)) + .collect(Collectors.toList()); } else { - this.mentions = new ArrayList<>(); + this.mentions = List.of(); } if (dataMessage.getAttachments().isPresent()) { - this.attachments = new ArrayList<>(dataMessage.getAttachments().get().size()); - for (SignalServiceAttachment attachment : dataMessage.getAttachments().get()) { - this.attachments.add(new JsonAttachment(attachment)); - } + this.attachments = dataMessage.getAttachments() + .get() + .stream() + .map(JsonAttachment::new) + .collect(Collectors.toList()); } else { - this.attachments = new ArrayList<>(); + this.attachments = List.of(); } } diff --git a/src/main/java/org/asamk/signal/json/JsonMention.java b/src/main/java/org/asamk/signal/json/JsonMention.java index 80683842..302128ed 100644 --- a/src/main/java/org/asamk/signal/json/JsonMention.java +++ b/src/main/java/org/asamk/signal/json/JsonMention.java @@ -11,12 +11,9 @@ public class JsonMention { int length; JsonMention(SignalServiceDataMessage.Mention mention, Manager m) { - this.name = m.resolveSignalServiceAddress( - new SignalServiceAddress(mention.getUuid(), null) - ).getLegacyIdentifier(); + this.name = m.resolveSignalServiceAddress(new SignalServiceAddress(mention.getUuid(), null)) + .getLegacyIdentifier(); this.start = mention.getStart(); this.length = mention.getLength(); - } - } diff --git a/src/main/java/org/asamk/signal/json/JsonQuote.java b/src/main/java/org/asamk/signal/json/JsonQuote.java index 9a740582..10cd0bf4 100644 --- a/src/main/java/org/asamk/signal/json/JsonQuote.java +++ b/src/main/java/org/asamk/signal/json/JsonQuote.java @@ -5,6 +5,7 @@ import org.whispersystems.signalservice.api.messages.SignalServiceDataMessage; import java.util.ArrayList; import java.util.List; +import java.util.stream.Collectors; public class JsonQuote { @@ -20,23 +21,20 @@ public class JsonQuote { this.author = m.resolveSignalServiceAddress(quote.getAuthor()).getLegacyIdentifier(); this.text = quote.getText(); - if (quote.getMentions().size() > 0) { - this.mentions = new ArrayList<>(quote.getMentions().size()); - - for (SignalServiceDataMessage.Mention quotedMention: quote.getMentions()){ - this.mentions.add(new JsonMention(quotedMention, m)); - } + if (quote.getMentions() != null && quote.getMentions().size() > 0) { + this.mentions = quote.getMentions() + .stream() + .map(quotedMention -> new JsonMention(quotedMention, m)) + .collect(Collectors.toList()); } if (quote.getAttachments().size() > 0) { - this.attachments = new ArrayList<>(quote.getAttachments().size()); - - for (SignalServiceDataMessage.Quote.QuotedAttachment quotedAttachment : quote.getAttachments()) { - this.attachments.add(new JsonQuotedAttachment(quotedAttachment)); - } + this.attachments = quote.getAttachments() + .stream() + .map(JsonQuotedAttachment::new) + .collect(Collectors.toList()); } else { this.attachments = new ArrayList<>(); } } - } diff --git a/src/main/java/org/asamk/signal/json/JsonQuotedAttachment.java b/src/main/java/org/asamk/signal/json/JsonQuotedAttachment.java index 1aae3104..bcbbe2a5 100644 --- a/src/main/java/org/asamk/signal/json/JsonQuotedAttachment.java +++ b/src/main/java/org/asamk/signal/json/JsonQuotedAttachment.java @@ -13,8 +13,7 @@ public class JsonQuotedAttachment { filename = quotedAttachment.getFileName(); if (quotedAttachment.getThumbnail() != null) { thumbnail = new JsonAttachment(quotedAttachment.getThumbnail()); - } - else { + } else { thumbnail = null; } } -- 2.50.1