package org.asamk.signal.util;
-import org.asamk.signal.PlainTextWriter;
import org.asamk.signal.commands.exceptions.CommandException;
import org.asamk.signal.commands.exceptions.IOErrorException;
import org.slf4j.Logger;
import java.util.List;
import java.util.stream.Collectors;
+import static org.asamk.signal.util.Util.getLegacyIdentifier;
+
public class ErrorUtils {
private final static Logger logger = LoggerFactory.getLogger(ErrorUtils.class);
private ErrorUtils() {
}
- public static void handleTimestampAndSendMessageResults(
- PlainTextWriter writer, long timestamp, List<SendMessageResult> results
+ public static void handleSendMessageResults(
+ List<SendMessageResult> results
) throws CommandException {
- if (timestamp != 0) {
- writer.println("{}", timestamp);
- }
var errors = getErrorMessagesFromSendMessageResults(results);
handleSendMessageResultErrors(errors);
}
}
public static String getErrorMessageFromSendMessageResult(SendMessageResult result) {
+ var identifier = getLegacyIdentifier(result.getAddress());
if (result.isNetworkFailure()) {
- return String.format("Network failure for \"%s\"", result.getAddress().getLegacyIdentifier());
+ return String.format("Network failure for \"%s\"", identifier);
} else if (result.isUnregisteredFailure()) {
- return String.format("Unregistered user \"%s\"", result.getAddress().getLegacyIdentifier());
+ return String.format("Unregistered user \"%s\"", identifier);
} else if (result.getIdentityFailure() != null) {
- return String.format("Untrusted Identity for \"%s\"", result.getAddress().getLegacyIdentifier());
+ return String.format("Untrusted Identity for \"%s\"", identifier);
} else if (result.getProofRequiredFailure() != null) {
final var failure = result.getProofRequiredFailure();
return String.format(
"CAPTCHA proof required for sending to \"%s\", available options \"%s\" with token \"%s\", or wait \"%d\" seconds",
- result.getAddress().getLegacyIdentifier(),
+ identifier,
failure.getOptions()
.stream()
.map(ProofRequiredException.Option::toString)