Merge "Expose the empty MmTelCapabilities constructor"
am: 7fff7e5eff
Change-Id: Ifbfea70cccb17b93c49fc7458d81e49b3788d257
This commit is contained in:
@@ -6190,7 +6190,8 @@ package android.telephony.ims.feature {
|
||||
}
|
||||
|
||||
public static class MmTelFeature.MmTelCapabilities {
|
||||
ctor public MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
|
||||
ctor public MmTelFeature.MmTelCapabilities();
|
||||
ctor public deprecated MmTelFeature.MmTelCapabilities(android.telephony.ims.feature.ImsFeature.Capabilities);
|
||||
ctor public MmTelFeature.MmTelCapabilities(int);
|
||||
method public final void addCapabilities(int);
|
||||
method public final boolean isCapable(int);
|
||||
|
||||
@@ -17,6 +17,8 @@
|
||||
package android.telephony.ims.feature;
|
||||
|
||||
import android.annotation.IntDef;
|
||||
import android.annotation.NonNull;
|
||||
import android.annotation.Nullable;
|
||||
import android.annotation.SystemApi;
|
||||
import android.os.Bundle;
|
||||
import android.os.Message;
|
||||
@@ -222,21 +224,31 @@ public class MmTelFeature extends ImsFeature {
|
||||
* This MmTelFeature can then return the status of each of these capabilities (enabled or not)
|
||||
* by sending a {@link #notifyCapabilitiesStatusChanged} callback to the framework. The current
|
||||
* status can also be queried using {@link #queryCapabilityStatus()}.
|
||||
* @see #isCapable(int)
|
||||
*/
|
||||
public static class MmTelCapabilities extends Capabilities {
|
||||
|
||||
/**
|
||||
* @hide
|
||||
* Create a new empty {@link MmTelCapabilities} instance.
|
||||
* @see #addCapabilities(int)
|
||||
* @see #removeCapabilities(int)
|
||||
*/
|
||||
@VisibleForTesting
|
||||
public MmTelCapabilities() {
|
||||
super();
|
||||
}
|
||||
|
||||
/**@deprecated Use {@link MmTelCapabilities} to construct a new instance instead.*/
|
||||
@Deprecated
|
||||
public MmTelCapabilities(Capabilities c) {
|
||||
mCapabilities = c.mCapabilities;
|
||||
}
|
||||
|
||||
/**
|
||||
* Create a new {link @MmTelCapabilities} instance with the provided capabilities.
|
||||
* @param capabilities The capabilities that are supported for MmTel in the form of a
|
||||
* bitfield.
|
||||
*/
|
||||
public MmTelCapabilities(int capabilities) {
|
||||
mCapabilities = capabilities;
|
||||
}
|
||||
@@ -406,7 +418,10 @@ public class MmTelFeature extends ImsFeature {
|
||||
* support the capability that is enabled. A capability that is disabled by the framework (via
|
||||
* {@link #changeEnabledCapabilities}) should also show the status as disabled.
|
||||
*/
|
||||
public final void notifyCapabilitiesStatusChanged(MmTelCapabilities c) {
|
||||
public final void notifyCapabilitiesStatusChanged(@NonNull MmTelCapabilities c) {
|
||||
if (c == null) {
|
||||
throw new IllegalArgumentException("MmTelCapabilities must be non-null!");
|
||||
}
|
||||
super.notifyCapabilitiesStatusChanged(c);
|
||||
}
|
||||
|
||||
@@ -414,7 +429,12 @@ public class MmTelFeature extends ImsFeature {
|
||||
* Notify the framework of an incoming call.
|
||||
* @param c The {@link ImsCallSessionImplBase} of the new incoming call.
|
||||
*/
|
||||
public final void notifyIncomingCall(ImsCallSessionImplBase c, Bundle extras) {
|
||||
public final void notifyIncomingCall(@NonNull ImsCallSessionImplBase c,
|
||||
@NonNull Bundle extras) {
|
||||
if (c == null || extras == null) {
|
||||
throw new IllegalArgumentException("ImsCallSessionImplBase and Bundle can not be "
|
||||
+ "null.");
|
||||
}
|
||||
synchronized (mLock) {
|
||||
if (mListener == null) {
|
||||
throw new IllegalStateException("Session is not available.");
|
||||
@@ -434,7 +454,12 @@ public class MmTelFeature extends ImsFeature {
|
||||
* This can be null if no call information is available for the rejected call.
|
||||
* @param reason The {@link ImsReasonInfo} call rejection reason.
|
||||
*/
|
||||
public final void notifyRejectedCall(ImsCallProfile callProfile, ImsReasonInfo reason) {
|
||||
public final void notifyRejectedCall(@NonNull ImsCallProfile callProfile,
|
||||
@NonNull ImsReasonInfo reason) {
|
||||
if (callProfile == null || reason == null) {
|
||||
throw new IllegalArgumentException("ImsCallProfile and ImsReasonInfo must not be "
|
||||
+ "null.");
|
||||
}
|
||||
synchronized (mLock) {
|
||||
if (mListener == null) {
|
||||
throw new IllegalStateException("Session is not available.");
|
||||
@@ -508,8 +533,8 @@ public class MmTelFeature extends ImsFeature {
|
||||
* the framework.
|
||||
*/
|
||||
@Override
|
||||
public void changeEnabledCapabilities(CapabilityChangeRequest request,
|
||||
CapabilityCallbackProxy c) {
|
||||
public void changeEnabledCapabilities(@NonNull CapabilityChangeRequest request,
|
||||
@NonNull CapabilityCallbackProxy c) {
|
||||
// Base implementation, no-op
|
||||
}
|
||||
|
||||
@@ -531,7 +556,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* {@link ImsCallProfile#CALL_TYPE_VS_RX}
|
||||
* @return a {@link ImsCallProfile} object
|
||||
*/
|
||||
public ImsCallProfile createCallProfile(int callSessionType, int callType) {
|
||||
public @Nullable ImsCallProfile createCallProfile(int callSessionType, int callType) {
|
||||
// Base Implementation - Should be overridden
|
||||
return null;
|
||||
}
|
||||
@@ -552,7 +577,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
*
|
||||
* @param profile a call profile to make the call
|
||||
*/
|
||||
public ImsCallSessionImplBase createCallSession(ImsCallProfile profile) {
|
||||
public @Nullable ImsCallSessionImplBase createCallSession(@NonNull ImsCallProfile profile) {
|
||||
// Base Implementation - Should be overridden
|
||||
return null;
|
||||
}
|
||||
@@ -569,7 +594,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* @return a {@link ProcessCallResult} to the framework, which will be used to determine if the
|
||||
* call will be placed over IMS or via CSFB.
|
||||
*/
|
||||
public @ProcessCallResult int shouldProcessCall(String[] numbers) {
|
||||
public @ProcessCallResult int shouldProcessCall(@NonNull String[] numbers) {
|
||||
return PROCESS_CALL_IMS;
|
||||
}
|
||||
|
||||
@@ -602,7 +627,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* @return The {@link ImsUtImplBase} Ut interface implementation for the supplementary service
|
||||
* configuration.
|
||||
*/
|
||||
public ImsUtImplBase getUt() {
|
||||
public @NonNull ImsUtImplBase getUt() {
|
||||
// Base Implementation - Should be overridden
|
||||
return new ImsUtImplBase();
|
||||
}
|
||||
@@ -611,7 +636,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* @return The {@link ImsEcbmImplBase} Emergency call-back mode interface for emergency VoLTE
|
||||
* calls that support it.
|
||||
*/
|
||||
public ImsEcbmImplBase getEcbm() {
|
||||
public @NonNull ImsEcbmImplBase getEcbm() {
|
||||
// Base Implementation - Should be overridden
|
||||
return new ImsEcbmImplBase();
|
||||
}
|
||||
@@ -620,7 +645,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* @return The {@link ImsMultiEndpointImplBase} implementation for implementing Dialog event
|
||||
* package processing for multi-endpoint.
|
||||
*/
|
||||
public ImsMultiEndpointImplBase getMultiEndpoint() {
|
||||
public @NonNull ImsMultiEndpointImplBase getMultiEndpoint() {
|
||||
// Base Implementation - Should be overridden
|
||||
return new ImsMultiEndpointImplBase();
|
||||
}
|
||||
@@ -646,7 +671,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* }
|
||||
* }
|
||||
*/
|
||||
public void setUiTtyMode(int mode, Message onCompleteMessage) {
|
||||
public void setUiTtyMode(int mode, @Nullable Message onCompleteMessage) {
|
||||
// Base Implementation - Should be overridden
|
||||
}
|
||||
|
||||
@@ -680,7 +705,7 @@ public class MmTelFeature extends ImsFeature {
|
||||
* @return an instance of {@link ImsSmsImplBase} which should be implemented by the IMS
|
||||
* Provider.
|
||||
*/
|
||||
public ImsSmsImplBase getSmsImplementation() {
|
||||
public @NonNull ImsSmsImplBase getSmsImplementation() {
|
||||
return new ImsSmsImplBase();
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user