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

Commit 52012d23 authored by Joonhun Shin's avatar Joonhun Shin Committed by Android (Google) Code Review
Browse files

Merge "Add the resetIms interface between framework and ImsService." into udc-dev

parents a05eacc6 20f7fd98
Loading
Loading
Loading
Loading
+26 −1
Original line number Diff line number Diff line
@@ -398,7 +398,11 @@ public class ImsService extends Service {
                    ImsService.this.disableImsForSubscription(slotId, subId), "disableIms");
        }


        @Override
        public void resetIms(int slotId, int subId) {
            executeMethodAsync(() ->
                    ImsService.this.resetImsInternal(slotId, subId), "resetIms");
        }
    };

    private final IBinder.DeathRecipient mDeathRecipient = new IBinder.DeathRecipient() {
@@ -634,6 +638,14 @@ public class ImsService extends Service {
        }
    }

    private void resetImsInternal(int slotId, int subId) {
        try {
            resetIms(slotId);
        } catch (UnsupportedOperationException e) {
            disableImsForSubscription(slotId, subId);
        }
    }

    /**
     * When called, provide the {@link ImsFeatureConfiguration} that this {@link ImsService}
     * currently supports. This will trigger the framework to set up the {@link ImsFeature}s that
@@ -750,6 +762,19 @@ public class ImsService extends Service {
    public void disableIms(int slotId) {
    }

    /**
     * The framework has reset IMS for the slot specified. The ImsService must deregister
     * and release all resources for IMS. After resetIms is called, either
     * {@link #enableImsForSubscription(int, int)} or {@link #disableImsForSubscription(int, int)}
     * will be called for the same slotId.
     *
     * @param slotId The slot ID that IMS will be reset for.
     * @hide
     */
    public void resetIms(int slotId) {
        throw new UnsupportedOperationException();
    }

    /**
     * When called, the framework is requesting that a new {@link MmTelFeature} is created for the
     * specified subscription.
+1 −0
Original line number Diff line number Diff line
@@ -47,4 +47,5 @@ interface IImsServiceController {
    ISipTransport getSipTransport(int slotId);
    oneway void enableIms(int slotId, int subId);
    oneway void disableIms(int slotId, int subId);
    oneway void resetIms(int slotId, int subId);
}