Loading api/system-current.txt +2 −1 Original line number Diff line number Diff line Loading @@ -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); Loading telephony/java/android/telephony/ims/feature/MmTelFeature.java +39 −14 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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; } Loading Loading @@ -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); } Loading @@ -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."); Loading @@ -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."); Loading Loading @@ -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 } Loading @@ -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; } Loading @@ -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; } Loading @@ -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; } Loading Loading @@ -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(); } Loading @@ -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(); } Loading @@ -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(); } Loading @@ -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 } Loading Loading @@ -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(); } Loading Loading
api/system-current.txt +2 −1 Original line number Diff line number Diff line Loading @@ -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); Loading
telephony/java/android/telephony/ims/feature/MmTelFeature.java +39 −14 Original line number Diff line number Diff line Loading @@ -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; Loading Loading @@ -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; } Loading Loading @@ -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); } Loading @@ -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."); Loading @@ -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."); Loading Loading @@ -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 } Loading @@ -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; } Loading @@ -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; } Loading @@ -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; } Loading Loading @@ -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(); } Loading @@ -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(); } Loading @@ -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(); } Loading @@ -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 } Loading Loading @@ -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(); } Loading