]> nmode's Git Repositories - signal-cli/blob - src/main/java/org/asamk/signal/util/ErrorUtils.java
99fc409ae9582a18711a158537477ab60ffe5981
[signal-cli] / src / main / java / org / asamk / signal / util / ErrorUtils.java
1 package org.asamk.signal.util;
2
3 import org.asamk.signal.GroupIdFormatException;
4 import org.asamk.signal.GroupNotFoundException;
5 import org.asamk.signal.NotAGroupMemberException;
6 import org.freedesktop.dbus.exceptions.DBusExecutionException;
7 import org.whispersystems.signalservice.api.crypto.UntrustedIdentityException;
8 import org.whispersystems.signalservice.api.push.exceptions.EncapsulatedExceptions;
9 import org.whispersystems.signalservice.api.push.exceptions.NetworkFailureException;
10 import org.whispersystems.signalservice.api.push.exceptions.UnregisteredUserException;
11
12 import java.io.IOException;
13
14 public class ErrorUtils {
15
16 private ErrorUtils() {
17 }
18
19 public static void handleAssertionError(AssertionError e) {
20 System.err.println("Failed to send/receive message (Assertion): " + e.getMessage());
21 e.printStackTrace();
22 System.err.println("If you use an Oracle JRE please check if you have unlimited strength crypto enabled, see README");
23 }
24
25 public static void handleEncapsulatedExceptions(EncapsulatedExceptions e) {
26 System.err.println("Failed to send (some) messages:");
27 for (NetworkFailureException n : e.getNetworkExceptions()) {
28 System.err.println("Network failure for \"" + n.getE164number() + "\": " + n.getMessage());
29 }
30 for (UnregisteredUserException n : e.getUnregisteredUserExceptions()) {
31 System.err.println("Unregistered user \"" + n.getE164Number() + "\": " + n.getMessage());
32 }
33 for (UntrustedIdentityException n : e.getUntrustedIdentityExceptions()) {
34 System.err.println("Untrusted Identity for \"" + n.getE164Number() + "\": " + n.getMessage());
35 }
36 }
37
38 public static void handleIOException(IOException e) {
39 System.err.println("Failed to send message: " + e.getMessage());
40 }
41
42 public static void handleGroupNotFoundException(GroupNotFoundException e) {
43 System.err.println("Failed to send to group: " + e.getMessage());
44 System.err.println("Aborting sending.");
45 }
46
47 public static void handleNotAGroupMemberException(NotAGroupMemberException e) {
48 System.err.println("Failed to send to group: " + e.getMessage());
49 System.err.println("Update the group on another device to readd the user to this group.");
50 System.err.println("Aborting sending.");
51 }
52
53 public static void handleDBusExecutionException(DBusExecutionException e) {
54 System.err.println("Cannot connect to dbus: " + e.getMessage());
55 System.err.println("Aborting.");
56 }
57
58 public static void handleGroupIdFormatException(GroupIdFormatException e) {
59 System.err.println(e.getMessage());
60 System.err.println("Aborting sending.");
61 }
62 }