From 10ca5bcd23b6c27962270f61a943673a2f037a95 Mon Sep 17 00:00:00 2001 From: Jinyoung Jeong Date: Tue, 23 Nov 2021 09:58:14 +0000 Subject: [PATCH] DelegateRegistrationState Improvement adding new states for DelegateRegistrationState: - DEREGISTERING_REASON_LOSING_PDN - DEREGISTERING_REASON_UNSPECIFIED Bug: b/201522903, b/206557578 Test: atest CtsTelephonyTestCases:SipDelegateManagerTest Change-Id: I3675c10a6dba55a49174509796c53b07b929c14f --- core/api/system-current.txt | 2 ++ .../ims/DelegateRegistrationState.java | 23 +++++++++++++++++-- 2 files changed, 23 insertions(+), 2 deletions(-) diff --git a/core/api/system-current.txt b/core/api/system-current.txt index 6d342db6cdf98..20b4dc2467357 100644 --- a/core/api/system-current.txt +++ b/core/api/system-current.txt @@ -13182,8 +13182,10 @@ package android.telephony.ims { field public static final int DEREGISTERED_REASON_UNKNOWN = 0; // 0x0 field public static final int DEREGISTERING_REASON_DESTROY_PENDING = 6; // 0x6 field public static final int DEREGISTERING_REASON_FEATURE_TAGS_CHANGING = 5; // 0x5 + field public static final int DEREGISTERING_REASON_LOSING_PDN = 7; // 0x7 field public static final int DEREGISTERING_REASON_PDN_CHANGE = 3; // 0x3 field public static final int DEREGISTERING_REASON_PROVISIONING_CHANGE = 4; // 0x4 + field public static final int DEREGISTERING_REASON_UNSPECIFIED = 8; // 0x8 } public static final class DelegateRegistrationState.Builder { diff --git a/telephony/java/android/telephony/ims/DelegateRegistrationState.java b/telephony/java/android/telephony/ims/DelegateRegistrationState.java index 1b1040430fd27..c2c9497cef3db 100644 --- a/telephony/java/android/telephony/ims/DelegateRegistrationState.java +++ b/telephony/java/android/telephony/ims/DelegateRegistrationState.java @@ -97,7 +97,24 @@ public final class DelegateRegistrationState implements Parcelable { */ public static final int DEREGISTERING_REASON_DESTROY_PENDING = 6; - /** @hide */ + /** + * This feature tag is deregistering because the PDN that the IMS registration is on + * is being torn down. + *

+ * All open SIP Dialogs associated with this feature tag must be closed + * using {@link SipDelegateConnection#cleanupSession(String)} before this operation can proceed. + */ + public static final int DEREGISTERING_REASON_LOSING_PDN = 7; + + /** + * This feature tag is deregistering because of an unspecified reason. + *

+ * All open SIP Dialogs associated with this feature tag must be closed + * using {@link SipDelegateConnection#cleanupSession(String)} before this operation can proceed. + */ + public static final int DEREGISTERING_REASON_UNSPECIFIED = 8; + +/** @hide */ @Retention(RetentionPolicy.SOURCE) @IntDef(prefix = "DEREGISTERED_REASON_", value = { DEREGISTERED_REASON_UNKNOWN, @@ -113,7 +130,9 @@ public final class DelegateRegistrationState implements Parcelable { DEREGISTERING_REASON_PDN_CHANGE, DEREGISTERING_REASON_PROVISIONING_CHANGE, DEREGISTERING_REASON_FEATURE_TAGS_CHANGING, - DEREGISTERING_REASON_DESTROY_PENDING + DEREGISTERING_REASON_DESTROY_PENDING, + DEREGISTERING_REASON_LOSING_PDN, + DEREGISTERING_REASON_UNSPECIFIED }) public @interface DeregisteringReason {}