Return actual error of NonSuccess request result

This commit is contained in:
AsamK 2026-09-18 22:21:39 +02:00
parent c146224493
commit e1d7bc5587
2 changed files with 22 additions and 2 deletions

View File

@ -0,0 +1,19 @@
package org.asamk.signal.manager.api;
import org.signal.libsignal.net.BadRequestError;
import java.io.IOException;
public class BadRequestException extends IOException {
private final BadRequestError error;
public BadRequestException(final BadRequestError error) {
super(error.toString());
this.error = error;
}
public BadRequestError getError() {
return error;
}
}

View File

@ -1,5 +1,6 @@
package org.asamk.signal.manager.util;
import org.asamk.signal.manager.api.BadRequestException;
import org.asamk.signal.manager.api.Pair;
import org.signal.core.models.ServiceId;
import org.signal.libsignal.net.BadRequestError;
@ -194,8 +195,8 @@ public class Utils {
}
} else if (result instanceof RequestResult.RetryableNetworkError e) {
throw e.getNetworkError();
} else if (result instanceof RequestResult.NonSuccess) {
throw new AssertionError();
} else if (result instanceof RequestResult.NonSuccess<?> e) {
throw new BadRequestException(e.getError());
}
throw new IllegalStateException("Unexpected value: " + result);
}