From 70a214c6dade1716f0d28b7364a88ad9e22f7a6f 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. Fix: 170796126 Test: Manual 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 579200e15cca4..41381c59482b0 100644 --- a/telephony/java/android/telephony/data/DataCallResponse.java +++ b/telephony/java/android/telephony/data/DataCallResponse.java @@ -410,6 +410,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.