]> nmode's Git Repositories - signal-cli/blobdiff - lib/src/main/java/org/asamk/signal/manager/util/Utils.java
Update dependencies
[signal-cli] / lib / src / main / java / org / asamk / signal / manager / util / Utils.java
index e6d8e4d3097b1df93da5c55b81a9bdb70404cd13..16aa32755ff343dc4d2a47c3b01ef8843d6f9974 100644 (file)
@@ -6,9 +6,9 @@ import org.signal.libsignal.protocol.fingerprint.Fingerprint;
 import org.signal.libsignal.protocol.fingerprint.NumericFingerprintGenerator;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+import org.whispersystems.signalservice.api.NetworkResult;
 import org.whispersystems.signalservice.api.push.ServiceId;
 import org.whispersystems.signalservice.api.util.StreamDetails;
-import org.whispersystems.signalservice.internal.ServiceResponse;
 
 import java.io.ByteArrayInputStream;
 import java.io.File;
@@ -140,15 +140,15 @@ public class Utils {
         return map;
     }
 
-    public static <T> T handleResponseException(final ServiceResponse<T> response) throws IOException {
-        final var throwableOptional = response.getExecutionError().or(response::getApplicationError);
-        if (throwableOptional.isPresent()) {
-            if (throwableOptional.get() instanceof IOException) {
-                throw (IOException) throwableOptional.get();
+    public static <T> T handleResponseException(final NetworkResult<T> response) throws IOException {
+        final var throwableOptional = response.getCause();
+        if (throwableOptional != null) {
+            if (throwableOptional instanceof IOException ioException) {
+                throw ioException;
             } else {
-                throw new IOException(throwableOptional.get());
+                throw new IOException(throwableOptional);
             }
         }
-        return response.getResult().orElse(null);
+        return response.successOrThrow();
     }
 }