From 2df361362d0a251a058348e9b7e34aac4171a427 Mon Sep 17 00:00:00 2001 From: Jack Yu Date: Tue, 13 Oct 2020 23:57:12 -0700 Subject: [PATCH] Properly support handover retry 1. If retrying handover, do not tear down the data connection on the source transport. 2. For handover fallback, fail fast the retry instead of letting it retry and fail with ON_OTHER_TRANSPORT error. This is no behavioral change but optimization only. (clean cherry-pick) Fix: 170796126 Test: Manual Merged-In: I1ee4e638892bfdba19f368c5e2ae7ecaf2c7364c Change-Id: I1ee4e638892bfdba19f368c5e2ae7ecaf2c7364c --- .../telephony/data/DataCallResponse.java | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/telephony/java/android/telephony/data/DataCallResponse.java b/telephony/java/android/telephony/data/DataCallResponse.java index 39859b1e4fdb0..a39031d6846eb 100644 --- a/telephony/java/android/telephony/data/DataCallResponse.java +++ b/telephony/java/android/telephony/data/DataCallResponse.java @@ -409,6 +409,25 @@ public final class DataCallResponse implements Parcelable { } }; + /** + * Convert handover failure mode to string. + * + * @param handoverFailureMode Handover failure mode + * @return Handover failure mode in string + * + * @hide + */ + public static String failureModeToString(@HandoverFailureMode int handoverFailureMode) { + switch (handoverFailureMode) { + case HANDOVER_FAILURE_MODE_UNKNOWN: return "unknown"; + case HANDOVER_FAILURE_MODE_LEGACY: return "legacy"; + case HANDOVER_FAILURE_MODE_DO_FALLBACK: return "fallback"; + case HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_HANDOVER: return "retry handover"; + case HANDOVER_FAILURE_MODE_NO_FALLBACK_RETRY_SETUP_NORMAL: return "retry setup new one"; + default: return Integer.toString(handoverFailureMode); + } + } + /** * Provides a convenient way to set the fields of a {@link DataCallResponse} when creating a new * instance.