Merge changes from topic 'call-session-may'

* changes:
  Add callSessionMayHandover API to ImsCallSession.
  IMS: Support for Possible Call Session Handover
This commit is contained in:
Tyler Gunn
2017-08-11 18:14:02 +00:00
committed by Gerrit Code Review
3 changed files with 59 additions and 0 deletions

View File

@@ -195,6 +195,23 @@ public class ImsCallSessionListenerImplBase extends IImsCallSessionListener.Stub
// no-op
}
/**
* 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
*/

View File

@@ -106,6 +106,8 @@ oneway interface IImsCallSessionListener {
in int srcAccessTech, in int targetAccessTech, in ImsReasonInfo reasonInfo);
void callSessionHandoverFailed(in IImsCallSession session,
in int srcAccessTech, in int targetAccessTech, in ImsReasonInfo reasonInfo);
void callSessionMayHandover(in IImsCallSession session,
in int srcAccessTech, in int targetAccessTech);
/**
* Notifies the TTY mode change by remote party.

View File

@@ -344,6 +344,24 @@ public class ImsCallSession {
// no-op
}
/**
* 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
*
@@ -1280,6 +1298,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
*/