Merge "Added the Carrier Config for DataStallRecoveryManager"

This commit is contained in:
Jack Yu
2022-03-10 21:34:36 +00:00
committed by Gerrit Code Review

View File

@@ -4364,6 +4364,56 @@ public class CarrierConfigManager {
public static final String KEY_GBA_UA_TLS_CIPHER_SUITE_INT =
"gba_ua_tls_cipher_suite_int";
/**
* The data stall recovery timers array in milliseconds, each element is the delay before
* performining next recovery action.
*
* The default value of timers array are: [180000ms, 180000ms, 180000ms] (3 minutes)
* Array[0]: It's the timer between RECOVERY_ACTION GET_DATA_CALL_LIST and CLEANUP, if data
* stall symptom still occurred, it will perform next recovery action after 180000ms.
* Array[1]: It's the timer between RECOVERY_ACTION CLEANUP and RADIO_RESTART, if data stall
* symptom still occurred, it will perform next recovery action after 180000ms.
* Array[2]: It's the timer between RECOVERY_ACTION RADIO_RESTART and RESET_MODEM, if data stall
* symptom still occurred, it will perform next recovery action after 180000ms.
*
* See the {@code RECOVERY_ACTION_*} constants in
* {@link com.android.internal.telephony.data.DataStallRecoveryManager}
* @hide
*/
public static final String KEY_DATA_STALL_RECOVERY_TIMERS_LONG_ARRAY =
"data_stall_recovery_timers_long_array";
/**
* The data stall recovery action boolean array, we use this array to determine if the
* data stall recovery action needs to be skipped.
*
* For example, if the carrier use the same APN for both of IA and default type,
* the data call will not disconnect in modem side (so the RECOVERY_ACTION_CLEANUP
* did not effect). In this case, we can config the boolean variable of action
* RECOVERY_ACTION_CLEANUP to true, then it can be ignored to speed up the recovery
* action procedure.
*
* The default value of boolean array are: [false, false, false, false]
* Array[0]: When performing the recovery action, we can use this boolean value to determine
* if we need to perform RECOVERY_ACTION_GET_DATA_CALL_LIST.
* Array[1]: If data stall symptom still occurred, we can use this boolean value to determine
* if we need to perform RECOVERY_ACTION_CLEANUP. For example, if the carrier use the same APN
* for both of IA and default type, the data call will not disconnect in modem side
* (so the RECOVERY_ACTION_CLEANUP did not effect). In this case, we can config the boolean
* variable of action RECOVERY_ACTION_CLEANUP to true, then it can be ignored to speed up the
* recovery action procedure.
* Array[2]: If data stall symptom still occurred, we can use this boolean value to determine
* if we need to perform RECOVERY_ACTION_RADIO_RESTART.
* Array[3]: If data stall symptom still occurred, we can use this boolean value to determine
* if we need to perform RECOVERY_ACTION_MODEM_RESET.
*
* See the {@code RECOVERY_ACTION_*} constants in
* {@link com.android.internal.telephony.data.DataStallRecoveryManager}
* @hide
*/
public static final String KEY_DATA_STALL_RECOVERY_SHOULD_SKIP_BOOL_ARRAY =
"data_stall_recovery_should_skip_bool_array";
/**
* Configs used by ImsServiceEntitlement.
*/
@@ -6466,6 +6516,12 @@ public class CarrierConfigManager {
sDefaults.putStringArray(KEY_IWLAN_HANDOVER_POLICY_STRING_ARRAY, new String[]{
"source=GERAN|UTRAN|EUTRAN|NGRAN|IWLAN, "
+ "target=GERAN|UTRAN|EUTRAN|NGRAN|IWLAN, type=allowed"});
// Default data stall recovery configurations.
sDefaults.putLongArray(KEY_DATA_STALL_RECOVERY_TIMERS_LONG_ARRAY,
new long[] {180000, 180000, 180000});
sDefaults.putBooleanArray(KEY_DATA_STALL_RECOVERY_SHOULD_SKIP_BOOL_ARRAY,
new boolean[] {false, false, false, false});
}
/**