aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorjoonhunshin <joonhunshin@google.com>2023-03-08 00:28:11 +0000
committerJoonhun Shin <joonhunshin@google.com>2023-03-19 05:26:15 +0000
commitec0d7029274aa5e6a35110be78ae5f852de04dfe (patch)
treebd054d90fc26e0251d8201126716dd3fe002a443
parent08b1a5637413ee04360ddfe5f623b1e11d44894d (diff)
downloadims-ec0d7029274aa5e6a35110be78ae5f852de04dfe.tar.gz
Block PUBLISH execution when the MmTel registered to avoid multiple
PUBLISH triggers. Block PUBLISH execution when the MmTel registered to avoid multiple PUBLISH tiggers. But PUBLISH will perform when Capability changed callback is called. Bug: 243163530 Test: atest DeviceCapabilityListenerTest Test: manually 1. MmTel registered 2. Airplan mode on - off 3. Check publish trigger Change-Id: I6c0cb370a0eb0c587c8dea63338f6cc6eb9a0e77
-rw-r--r--src/java/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener.java4
-rw-r--r--tests/src/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListenerTest.java3
2 files changed, 4 insertions, 3 deletions
diff --git a/src/java/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener.java b/src/java/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener.java
index d3c82f2a..b58f7ec6 100644
--- a/src/java/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener.java
+++ b/src/java/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListener.java
@@ -590,9 +590,9 @@ public class DeviceCapabilityListener {
* This method is called when the MMTEL is registered.
*/
private void handleImsMmtelRegistered(int imsTransportType) {
+ // update capability, but not trigger PUBLISH message.
+ // PUBLISH message will be sent when the Capability status changed callback is called.
mCapabilityInfo.updateImsMmtelRegistered(imsTransportType);
- mHandler.sendTriggeringPublishMessage(
- PublishController.PUBLISH_TRIGGER_MMTEL_REGISTERED);
}
/*
diff --git a/tests/src/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListenerTest.java b/tests/src/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListenerTest.java
index 7c649891..11350393 100644
--- a/tests/src/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListenerTest.java
+++ b/tests/src/com/android/ims/rcs/uce/presence/publish/DeviceCapabilityListenerTest.java
@@ -154,7 +154,8 @@ public class DeviceCapabilityListenerTest extends ImsTestBase {
waitForHandlerActionDelayed(handler, HANDLER_WAIT_TIMEOUT_MS, HANDLER_SENT_DELAY_MS);
verify(mDeviceCapability).updateImsMmtelRegistered(1);
- verify(mCallback).requestPublishFromInternal(
+ // update capability, but not trigger PUBLISH message when MmTel registered.
+ verify(mCallback, never()).requestPublishFromInternal(
PublishController.PUBLISH_TRIGGER_MMTEL_REGISTERED);
}