import org.asamk.signal.manager.api.RecipientIdentifier;
import org.asamk.signal.manager.api.SendMessageResult;
-import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
import java.util.stream.Collectors;
public class ErrorUtils {
public static void handleSendMessageResults(
Map<RecipientIdentifier, List<SendMessageResult>> mapResults
) throws CommandException {
- List<String> errors = getErrorMessagesFromSendMessageResults(mapResults);
+ var errors = getErrorMessagesFromSendMessageResults(mapResults);
handleSendMessageResultErrors(errors);
}
}
public static List<String> getErrorMessagesFromSendMessageResults(final Map<RecipientIdentifier, List<SendMessageResult>> mapResults) {
- return mapResults.values()
+ return mapResults.entrySet()
.stream()
- .flatMap(results -> getErrorMessagesFromSendMessageResults(results).stream())
+ .flatMap(entry -> entry.getValue()
+ .stream()
+ .map(ErrorUtils::getErrorMessageFromSendMessageResult)
+ .filter(Objects::nonNull)
+ .map(error -> entry.getKey().getIdentifier() + ": " + error))
.collect(Collectors.toList());
}
public static List<String> getErrorMessagesFromSendMessageResults(Collection<SendMessageResult> results) {
- var errors = new ArrayList<String>();
- for (var result : results) {
- var error = getErrorMessageFromSendMessageResult(result);
- if (error != null) {
- errors.add(error);
- }
- }
-
- return errors;
+ return results.stream()
+ .map(ErrorUtils::getErrorMessageFromSendMessageResult)
+ .filter(Objects::nonNull)
+ .collect(Collectors.toList());
}
public static String getErrorMessageFromSendMessageResult(SendMessageResult result) {