Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit b7b81db6 authored by Brad Ebinger's avatar Brad Ebinger Committed by Automerger Merge Worker
Browse files

Merge "Remove IllegalArgumentException for registration of capabilities" am: e51d2698

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1344876

Change-Id: I41cf8852c35ee1c37597c922892e63475e6af04a
parents 032022c6 e51d2698
Loading
Loading
Loading
Loading
+2 −10
Original line number Diff line number Diff line
@@ -519,9 +519,6 @@ public class ImsMmTelManager implements RegistrationManager {
     * @param executor The executor the callback events should be run on.
     * @param c The MmTel {@link CapabilityCallback} to be registered.
     * @see #unregisterMmTelCapabilityCallback(CapabilityCallback)
     * @throws IllegalArgumentException if the subscription associated with this callback is not
     * active (SIM is not inserted, ESIM inactive) or invalid, or a null {@link Executor} or
     * {@link CapabilityCallback} callback.
     * @throws ImsException if the subscription associated with this callback is valid, but
     * the {@link ImsService} associated with the subscription is not available. This can happen if
     * the service crashed, for example. See {@link ImsException#getCode()} for a more detailed
@@ -544,18 +541,13 @@ public class ImsMmTelManager implements RegistrationManager {
        ITelephony iTelephony = getITelephony();
        if (iTelephony == null) {
            throw new ImsException("Could not find Telephony Service.",
                    ImsException.CODE_ERROR_INVALID_SUBSCRIPTION);
                    ImsException.CODE_ERROR_SERVICE_UNAVAILABLE);
        }

        try {
            iTelephony.registerMmTelCapabilityCallback(mSubId, c.getBinder());
        } catch (ServiceSpecificException e) {
            if (e.errorCode == ImsException.CODE_ERROR_INVALID_SUBSCRIPTION) {
                // Rethrow as runtime error to keep API compatible.
                throw new IllegalArgumentException(e.getMessage());
            } else {
            throw new ImsException(e.getMessage(), e.errorCode);
            }
        } catch (RemoteException e) {
            throw e.rethrowAsRuntimeException();
        }  catch (IllegalStateException e) {