Loading telephony/java/android/telephony/ims/feature/RcsFeature.java +6 −34 Original line number Original line Diff line number Diff line Loading @@ -120,8 +120,8 @@ public class RcsFeature extends ImsFeature { @Nullable ICapabilityExchangeEventListener listener) throws RemoteException { @Nullable ICapabilityExchangeEventListener listener) throws RemoteException { CapabilityExchangeEventListener listenerWrapper = CapabilityExchangeEventListener listenerWrapper = new CapabilityExchangeAidlWrapper(listener); new CapabilityExchangeAidlWrapper(listener); executeMethodAsync(() -> mReference.setCapabilityExchangeEventListener( executeMethodAsync(() -> mReference.setCapabilityExchangeEventListener(listenerWrapper), mExecutor, listenerWrapper), "setCapabilityExchangeEventListener"); "setCapabilityExchangeEventListener"); } } @Override @Override Loading Loading @@ -375,30 +375,6 @@ public class RcsFeature extends ImsFeature { // Base Implementation - Override to provide functionality // Base Implementation - Override to provide functionality } } /** * Retrieve the implementation of UCE for this {@link RcsFeature}, which can use either * presence or OPTIONS for capability exchange. * * Will only be requested by the framework if capability exchange is configured * as capable during a * {@link #changeEnabledCapabilities(CapabilityChangeRequest, CapabilityCallbackProxy)} * operation and the RcsFeature sets the status of the capability to true using * {@link #notifyCapabilitiesStatusChanged(RcsImsCapabilities)}. * * @param executor The executor for the framework to use when request RCS resquests to this * service. * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * event to the framework. * @return An instance of {@link RcsCapabilityExchangeImplBase} that implements capability * exchange if it is supported by the device. * @hide */ public @NonNull RcsCapabilityExchangeImplBase createCapabilityExchangeImpl( @NonNull Executor executor, @NonNull CapabilityExchangeEventListener listener) { // Base Implementation, override to implement functionality return new RcsCapabilityExchangeImplBase(executor); } /** /** * Retrieve the implementation of UCE for this {@link RcsFeature}, which can use either * Retrieve the implementation of UCE for this {@link RcsFeature}, which can use either * presence or OPTIONS for capability exchange. * presence or OPTIONS for capability exchange. Loading Loading @@ -461,17 +437,15 @@ public class RcsFeature extends ImsFeature { /** /** * Set the capability exchange listener. * Set the capability exchange listener. * @param executor The executor for the framework to use when request RCS requests to this * service. * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * event to the framework. * event to the framework. */ */ private void setCapabilityExchangeEventListener(@NonNull Executor executor, private void setCapabilityExchangeEventListener( @Nullable CapabilityExchangeEventListener listener) { @Nullable CapabilityExchangeEventListener listener) { synchronized (mLock) { synchronized (mLock) { mCapExchangeEventListener = listener; mCapExchangeEventListener = listener; if (mCapExchangeEventListener != null) { if (mCapExchangeEventListener != null) { initRcsCapabilityExchangeImplBase(executor, mCapExchangeEventListener); initRcsCapabilityExchangeImplBase(mCapExchangeEventListener); } else { } else { // Remove the RcsCapabilityExchangeImplBase instance when the capability exchange // Remove the RcsCapabilityExchangeImplBase instance when the capability exchange // instance has been removed in the framework. // instance has been removed in the framework. Loading @@ -486,19 +460,17 @@ public class RcsFeature extends ImsFeature { /** /** * Initialize the RcsCapabilityExchangeImplBase instance if the capability exchange instance * Initialize the RcsCapabilityExchangeImplBase instance if the capability exchange instance * has already been created in the framework. * has already been created in the framework. * @param executor The executor for the framework to use when request RCS requests to this * service. * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * event to the framework. * event to the framework. */ */ private void initRcsCapabilityExchangeImplBase(@NonNull Executor executor, private void initRcsCapabilityExchangeImplBase( @NonNull CapabilityExchangeEventListener listener) { @NonNull CapabilityExchangeEventListener listener) { synchronized (mLock) { synchronized (mLock) { // Remove the original instance // Remove the original instance if (mCapabilityExchangeImpl != null) { if (mCapabilityExchangeImpl != null) { removeCapabilityExchangeImpl(mCapabilityExchangeImpl); removeCapabilityExchangeImpl(mCapabilityExchangeImpl); } } mCapabilityExchangeImpl = createCapabilityExchangeImpl(executor, listener); mCapabilityExchangeImpl = createCapabilityExchangeImpl(listener); } } } } Loading telephony/java/android/telephony/ims/stub/RcsCapabilityExchangeImplBase.java +0 −15 Original line number Original line Diff line number Diff line Loading @@ -356,21 +356,6 @@ public class RcsCapabilityExchangeImplBase { void onTerminated(@NonNull String reason, long retryAfterMilliseconds) throws ImsException; void onTerminated(@NonNull String reason, long retryAfterMilliseconds) throws ImsException; } } private Executor mBinderExecutor; /** * Create a new RcsCapabilityExchangeImplBase instance. * * @param executor The executor that remote calls from the framework will be called on. * @hide */ public RcsCapabilityExchangeImplBase(@NonNull Executor executor) { if (executor == null) { throw new IllegalArgumentException("executor must not be null"); } mBinderExecutor = executor; } /** /** * Create a new RcsCapabilityExchangeImplBase instance. * Create a new RcsCapabilityExchangeImplBase instance. */ */ Loading Loading
telephony/java/android/telephony/ims/feature/RcsFeature.java +6 −34 Original line number Original line Diff line number Diff line Loading @@ -120,8 +120,8 @@ public class RcsFeature extends ImsFeature { @Nullable ICapabilityExchangeEventListener listener) throws RemoteException { @Nullable ICapabilityExchangeEventListener listener) throws RemoteException { CapabilityExchangeEventListener listenerWrapper = CapabilityExchangeEventListener listenerWrapper = new CapabilityExchangeAidlWrapper(listener); new CapabilityExchangeAidlWrapper(listener); executeMethodAsync(() -> mReference.setCapabilityExchangeEventListener( executeMethodAsync(() -> mReference.setCapabilityExchangeEventListener(listenerWrapper), mExecutor, listenerWrapper), "setCapabilityExchangeEventListener"); "setCapabilityExchangeEventListener"); } } @Override @Override Loading Loading @@ -375,30 +375,6 @@ public class RcsFeature extends ImsFeature { // Base Implementation - Override to provide functionality // Base Implementation - Override to provide functionality } } /** * Retrieve the implementation of UCE for this {@link RcsFeature}, which can use either * presence or OPTIONS for capability exchange. * * Will only be requested by the framework if capability exchange is configured * as capable during a * {@link #changeEnabledCapabilities(CapabilityChangeRequest, CapabilityCallbackProxy)} * operation and the RcsFeature sets the status of the capability to true using * {@link #notifyCapabilitiesStatusChanged(RcsImsCapabilities)}. * * @param executor The executor for the framework to use when request RCS resquests to this * service. * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * event to the framework. * @return An instance of {@link RcsCapabilityExchangeImplBase} that implements capability * exchange if it is supported by the device. * @hide */ public @NonNull RcsCapabilityExchangeImplBase createCapabilityExchangeImpl( @NonNull Executor executor, @NonNull CapabilityExchangeEventListener listener) { // Base Implementation, override to implement functionality return new RcsCapabilityExchangeImplBase(executor); } /** /** * Retrieve the implementation of UCE for this {@link RcsFeature}, which can use either * Retrieve the implementation of UCE for this {@link RcsFeature}, which can use either * presence or OPTIONS for capability exchange. * presence or OPTIONS for capability exchange. Loading Loading @@ -461,17 +437,15 @@ public class RcsFeature extends ImsFeature { /** /** * Set the capability exchange listener. * Set the capability exchange listener. * @param executor The executor for the framework to use when request RCS requests to this * service. * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * event to the framework. * event to the framework. */ */ private void setCapabilityExchangeEventListener(@NonNull Executor executor, private void setCapabilityExchangeEventListener( @Nullable CapabilityExchangeEventListener listener) { @Nullable CapabilityExchangeEventListener listener) { synchronized (mLock) { synchronized (mLock) { mCapExchangeEventListener = listener; mCapExchangeEventListener = listener; if (mCapExchangeEventListener != null) { if (mCapExchangeEventListener != null) { initRcsCapabilityExchangeImplBase(executor, mCapExchangeEventListener); initRcsCapabilityExchangeImplBase(mCapExchangeEventListener); } else { } else { // Remove the RcsCapabilityExchangeImplBase instance when the capability exchange // Remove the RcsCapabilityExchangeImplBase instance when the capability exchange // instance has been removed in the framework. // instance has been removed in the framework. Loading @@ -486,19 +460,17 @@ public class RcsFeature extends ImsFeature { /** /** * Initialize the RcsCapabilityExchangeImplBase instance if the capability exchange instance * Initialize the RcsCapabilityExchangeImplBase instance if the capability exchange instance * has already been created in the framework. * has already been created in the framework. * @param executor The executor for the framework to use when request RCS requests to this * service. * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * @param listener A {@link CapabilityExchangeEventListener} to send the capability exchange * event to the framework. * event to the framework. */ */ private void initRcsCapabilityExchangeImplBase(@NonNull Executor executor, private void initRcsCapabilityExchangeImplBase( @NonNull CapabilityExchangeEventListener listener) { @NonNull CapabilityExchangeEventListener listener) { synchronized (mLock) { synchronized (mLock) { // Remove the original instance // Remove the original instance if (mCapabilityExchangeImpl != null) { if (mCapabilityExchangeImpl != null) { removeCapabilityExchangeImpl(mCapabilityExchangeImpl); removeCapabilityExchangeImpl(mCapabilityExchangeImpl); } } mCapabilityExchangeImpl = createCapabilityExchangeImpl(executor, listener); mCapabilityExchangeImpl = createCapabilityExchangeImpl(listener); } } } } Loading
telephony/java/android/telephony/ims/stub/RcsCapabilityExchangeImplBase.java +0 −15 Original line number Original line Diff line number Diff line Loading @@ -356,21 +356,6 @@ public class RcsCapabilityExchangeImplBase { void onTerminated(@NonNull String reason, long retryAfterMilliseconds) throws ImsException; void onTerminated(@NonNull String reason, long retryAfterMilliseconds) throws ImsException; } } private Executor mBinderExecutor; /** * Create a new RcsCapabilityExchangeImplBase instance. * * @param executor The executor that remote calls from the framework will be called on. * @hide */ public RcsCapabilityExchangeImplBase(@NonNull Executor executor) { if (executor == null) { throw new IllegalArgumentException("executor must not be null"); } mBinderExecutor = executor; } /** /** * Create a new RcsCapabilityExchangeImplBase instance. * Create a new RcsCapabilityExchangeImplBase instance. */ */ Loading