summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTyler Gunn <tgunn@google.com>2017-06-09 13:16:06 -0700
committerTyler Gunn <tgunn@google.com>2017-08-08 13:10:48 -0700
commit71c29cfad971aba24475d16698e5243316006b66 (patch)
treecabab00062ffea3c956c44ea5ac8e545b562968f
parentefed6f6bd4df9c8dc08a505615a8426230363ec3 (diff)
downloadbase-71c29cfad971aba24475d16698e5243316006b66.tar.gz
Add callSessionMayHandover API to ImsCallSession.
This matches the new AIDL definition in the API. Test: Manual Bug: 62489988 Change-Id: I97ad5b5359f19d533b5b8644fd37008c0c69bf9c
-rw-r--r--telephony/java/android/telephony/ims/stub/ImsCallSessionListenerImplBase.java17
-rw-r--r--telephony/java/com/android/ims/internal/ImsCallSession.java40
2 files changed, 57 insertions, 0 deletions
diff --git a/telephony/java/android/telephony/ims/stub/ImsCallSessionListenerImplBase.java b/telephony/java/android/telephony/ims/stub/ImsCallSessionListenerImplBase.java
index 12228a19fcc8..6c18935d16ef 100644
--- a/telephony/java/android/telephony/ims/stub/ImsCallSessionListenerImplBase.java
+++ b/telephony/java/android/telephony/ims/stub/ImsCallSessionListenerImplBase.java
@@ -196,6 +196,23 @@ public class ImsCallSessionListenerImplBase extends IImsCallSessionListener.Stub
}
/**
+ * Notifies of a case where a {@link com.android.ims.internal.ImsCallSession} may potentially
+ * handover from one radio technology to another.
+ * @param session
+ * @param srcAccessTech The source radio access technology; one of the access technology
+ * constants defined in {@link android.telephony.ServiceState}. For
+ * example {@link android.telephony.ServiceState#RIL_RADIO_TECHNOLOGY_LTE}.
+ * @param targetAccessTech The target radio access technology; one of the access technology
+ * constants defined in {@link android.telephony.ServiceState}. For
+ * example {@link android.telephony.ServiceState#RIL_RADIO_TECHNOLOGY_LTE}.
+ */
+ @Override
+ public void callSessionMayHandover(IImsCallSession session, int srcAccessTech,
+ int targetAccessTech) {
+ // no-op
+ }
+
+ /**
* Notifies of handover information for this call
*/
@Override
diff --git a/telephony/java/com/android/ims/internal/ImsCallSession.java b/telephony/java/com/android/ims/internal/ImsCallSession.java
index f20f7c881958..1736b80c562b 100644
--- a/telephony/java/com/android/ims/internal/ImsCallSession.java
+++ b/telephony/java/com/android/ims/internal/ImsCallSession.java
@@ -345,6 +345,24 @@ public class ImsCallSession {
}
/**
+ * Called when an {@link ImsCallSession} may handover from one radio technology to another.
+ * For example, the session may handover from WIFI to LTE if conditions are right.
+ * <p>
+ * If handover is attempted,
+ * {@link #callSessionHandover(ImsCallSession, int, int, ImsReasonInfo)} or
+ * {@link #callSessionHandoverFailed(ImsCallSession, int, int, ImsReasonInfo)} will be
+ * called to indicate the success or failure of the handover.
+ *
+ * @param session IMS session object
+ * @param srcAccessTech original access technology
+ * @param targetAccessTech new access technology
+ */
+ public void callSessionMayHandover(ImsCallSession session, int srcAccessTech,
+ int targetAccessTech) {
+ // no-op
+ }
+
+ /**
* Called when session access technology changes
*
* @param session IMS session object
@@ -1281,6 +1299,28 @@ public class ImsCallSession {
}
/**
+ * Notifies of a case where a {@link com.android.ims.internal.ImsCallSession} may
+ * potentially handover from one radio technology to another.
+ * @param session
+ * @param srcAccessTech The source radio access technology; one of the access technology
+ * constants defined in {@link android.telephony.ServiceState}. For
+ * example
+ * {@link android.telephony.ServiceState#RIL_RADIO_TECHNOLOGY_LTE}.
+ * @param targetAccessTech The target radio access technology; one of the access technology
+ * constants defined in {@link android.telephony.ServiceState}. For
+ * example
+ * {@link android.telephony.ServiceState#RIL_RADIO_TECHNOLOGY_LTE}.
+ */
+ @Override
+ public void callSessionMayHandover(IImsCallSession session,
+ int srcAccessTech, int targetAccessTech) {
+ if (mListener != null) {
+ mListener.callSessionMayHandover(ImsCallSession.this, srcAccessTech,
+ targetAccessTech);
+ }
+ }
+
+ /**
* Notifies of handover information for this call
*/
@Override