Loading telephony/java/android/telephony/ims/ImsService.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -458,8 +458,8 @@ public class ImsService extends Service { } } } } private IImsRcsFeature createRcsFeatureInternal(int slotId, int subI) { private IImsRcsFeature createRcsFeatureInternal(int slotId, int subId) { RcsFeature f = createRcsFeatureForSubscription(slotId, subI); RcsFeature f = createRcsFeatureForSubscription(slotId, subId); if (f != null) { if (f != null) { f.setDefaultExecutor(getCachedExecutor()); f.setDefaultExecutor(getCachedExecutor()); setupFeature(f, slotId, ImsFeature.FEATURE_RCS); setupFeature(f, slotId, ImsFeature.FEATURE_RCS); Loading telephony/java/android/telephony/ims/feature/ImsFeature.java +9 −5 Original line number Original line Diff line number Diff line Loading @@ -394,10 +394,12 @@ public abstract class ImsFeature { @VisibleForTesting @VisibleForTesting public void addImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { public void addImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { try { try { synchronized (mStatusCallbacks) { // Add the callback if the callback completes successfully without a RemoteException mStatusCallbacks.register(c); // If we have just connected, send queued status. // If we have just connected, send queued status. c.notifyImsFeatureStatus(getFeatureState()); c.notifyImsFeatureStatus(getFeatureState()); // Add the callback if the callback completes successfully without a RemoteException. } mStatusCallbacks.register(c); } catch (RemoteException e) { } catch (RemoteException e) { Log.w(LOG_TAG, "Couldn't notify feature state: " + e.getMessage()); Log.w(LOG_TAG, "Couldn't notify feature state: " + e.getMessage()); } } Loading @@ -409,8 +411,10 @@ public abstract class ImsFeature { */ */ @VisibleForTesting @VisibleForTesting public void removeImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { public void removeImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { synchronized (mStatusCallbacks) { mStatusCallbacks.unregister(c); mStatusCallbacks.unregister(c); } } } /** /** * Internal method called by ImsFeature when setFeatureState has changed. * Internal method called by ImsFeature when setFeatureState has changed. Loading Loading
telephony/java/android/telephony/ims/ImsService.java +2 −2 Original line number Original line Diff line number Diff line Loading @@ -458,8 +458,8 @@ public class ImsService extends Service { } } } } private IImsRcsFeature createRcsFeatureInternal(int slotId, int subI) { private IImsRcsFeature createRcsFeatureInternal(int slotId, int subId) { RcsFeature f = createRcsFeatureForSubscription(slotId, subI); RcsFeature f = createRcsFeatureForSubscription(slotId, subId); if (f != null) { if (f != null) { f.setDefaultExecutor(getCachedExecutor()); f.setDefaultExecutor(getCachedExecutor()); setupFeature(f, slotId, ImsFeature.FEATURE_RCS); setupFeature(f, slotId, ImsFeature.FEATURE_RCS); Loading
telephony/java/android/telephony/ims/feature/ImsFeature.java +9 −5 Original line number Original line Diff line number Diff line Loading @@ -394,10 +394,12 @@ public abstract class ImsFeature { @VisibleForTesting @VisibleForTesting public void addImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { public void addImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { try { try { synchronized (mStatusCallbacks) { // Add the callback if the callback completes successfully without a RemoteException mStatusCallbacks.register(c); // If we have just connected, send queued status. // If we have just connected, send queued status. c.notifyImsFeatureStatus(getFeatureState()); c.notifyImsFeatureStatus(getFeatureState()); // Add the callback if the callback completes successfully without a RemoteException. } mStatusCallbacks.register(c); } catch (RemoteException e) { } catch (RemoteException e) { Log.w(LOG_TAG, "Couldn't notify feature state: " + e.getMessage()); Log.w(LOG_TAG, "Couldn't notify feature state: " + e.getMessage()); } } Loading @@ -409,8 +411,10 @@ public abstract class ImsFeature { */ */ @VisibleForTesting @VisibleForTesting public void removeImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { public void removeImsFeatureStatusCallback(@NonNull IImsFeatureStatusCallback c) { synchronized (mStatusCallbacks) { mStatusCallbacks.unregister(c); mStatusCallbacks.unregister(c); } } } /** /** * Internal method called by ImsFeature when setFeatureState has changed. * Internal method called by ImsFeature when setFeatureState has changed. Loading