diff options
author | Brad Ebinger <breadley@google.com> | 2018-01-19 00:14:01 +0000 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2018-01-19 00:14:01 +0000 |
commit | b0a222522f8bdf9ccfb4efe63ec0e2128500d730 (patch) | |
tree | d616ef5b4e3f0eafa17d4428de7cb765410758bb | |
parent | aee697f28152c603d6f36dc8266422d3f2ed41e7 (diff) | |
parent | 7aafd2a6bbb2b2a1f97fdb00a85f38ded9e8066d (diff) | |
download | ims-b0a222522f8bdf9ccfb4efe63ec0e2128500d730.tar.gz |
Include Context in ImsServiceProxy Compat Layer am: 3418c13699 am: a6575492c4
am: 7aafd2a6bb
Change-Id: I730796b71affa6f279f22fa4624f27ad661b724c
-rw-r--r-- | src/java/com/android/ims/ImsManager.java | 9 | ||||
-rw-r--r-- | src/java/com/android/ims/ImsServiceProxy.java | 6 | ||||
-rw-r--r-- | src/java/com/android/ims/ImsServiceProxyCompat.java | 9 |
3 files changed, 14 insertions, 10 deletions
diff --git a/src/java/com/android/ims/ImsManager.java b/src/java/com/android/ims/ImsManager.java index d335fa2e..c73db6ad 100644 --- a/src/java/com/android/ims/ImsManager.java +++ b/src/java/com/android/ims/ImsManager.java @@ -39,6 +39,7 @@ import com.android.ims.internal.IImsCallSession; import com.android.ims.internal.IImsConfig; import com.android.ims.internal.IImsEcbm; import com.android.ims.internal.IImsMultiEndpoint; +import com.android.ims.internal.IImsRegistration; import com.android.ims.internal.IImsRegistrationCallback; import com.android.ims.internal.IImsRegistrationListener; import com.android.ims.internal.IImsServiceController; @@ -1427,8 +1428,10 @@ public class ImsManager { checkAndThrowExceptionIfServiceUnavailable(); // TODO: Remove once new MmTelFeature is merged in mImsServiceProxy.addRegistrationListener(mImsRegistrationListenerProxy); - mImsServiceProxy.getRegistration().addRegistrationCallback( - mRegistrationCallback); + IImsRegistration regBinder = mImsServiceProxy.getRegistration(); + if (regBinder != null) { + regBinder.addRegistrationCallback(mRegistrationCallback); + } log("Registration Callback/Listener registered."); // Only record if there isn't a RemoteException. mHasRegisteredForProxy = true; @@ -1871,7 +1874,7 @@ public class ImsManager { if (!mConfigDynamicBind) { // Deprecated method of binding Rlog.i(TAG, "Creating ImsService using ServiceManager"); - mImsServiceProxy = ImsServiceProxyCompat.create(mPhoneId, mDeathRecipient); + mImsServiceProxy = ImsServiceProxyCompat.create(mContext, mPhoneId, mDeathRecipient); } else { Rlog.i(TAG, "Creating ImsService using ImsResolver"); mImsServiceProxy = ImsServiceProxy.create(mContext, mPhoneId); diff --git a/src/java/com/android/ims/ImsServiceProxy.java b/src/java/com/android/ims/ImsServiceProxy.java index a22dadd4..153c5f52 100644 --- a/src/java/com/android/ims/ImsServiceProxy.java +++ b/src/java/com/android/ims/ImsServiceProxy.java @@ -147,15 +147,15 @@ public class ImsServiceProxy { } }; - public ImsServiceProxy(int slotId, IBinder binder, int featureType) { + public ImsServiceProxy(Context context, int slotId, IBinder binder, int featureType) { mSlotId = slotId; mBinder = binder; mSupportedFeature = featureType; + mContext = context; } public ImsServiceProxy(Context context, int slotId, int featureType) { - this(slotId, null, featureType); - mContext = context; + this(context, slotId, null, featureType); } public @Nullable IImsRegistration getRegistration() { diff --git a/src/java/com/android/ims/ImsServiceProxyCompat.java b/src/java/com/android/ims/ImsServiceProxyCompat.java index 44f72e6a..a6d1865e 100644 --- a/src/java/com/android/ims/ImsServiceProxyCompat.java +++ b/src/java/com/android/ims/ImsServiceProxyCompat.java @@ -54,7 +54,8 @@ public class ImsServiceProxyCompat extends ImsServiceProxy { */ private static final String IMS_SERVICE = "ims"; - public static ImsServiceProxyCompat create(int slotId, IBinder.DeathRecipient recipient) { + public static ImsServiceProxyCompat create(Context context, int slotId, + IBinder.DeathRecipient recipient) { IBinder binder = ServiceManager.checkService(IMS_SERVICE); if (binder != null) { @@ -66,11 +67,11 @@ public class ImsServiceProxyCompat extends ImsServiceProxy { // If the proxy is created with a null binder, subsequent calls that depend on a live // binder will fail, causing this structure to be torn down and created again. - return new ImsServiceProxyCompat(slotId, binder); + return new ImsServiceProxyCompat(context, slotId, binder); } - public ImsServiceProxyCompat(int slotId, IBinder binder) { - super(slotId, binder, SERVICE_ID); + public ImsServiceProxyCompat(Context context, int slotId, IBinder binder) { + super(context, slotId, binder, SERVICE_ID); } @Override |