Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 82e82e14 authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Correct Typo on Provision Refactor per API review" into tm-dev

parents af84398f e026d4c1
Loading
Loading
Loading
Loading
+6 −12
Original line number Diff line number Diff line
@@ -44254,6 +44254,9 @@ package android.telephony.ims {
    method @RequiresPermission(android.Manifest.permission.READ_PRECISE_PHONE_STATE) public void unregisterImsRegistrationCallback(@NonNull android.telephony.ims.RegistrationManager.RegistrationCallback);
    method public void unregisterImsStateCallback(@NonNull android.telephony.ims.ImsStateCallback);
    field public static final String ACTION_SHOW_CAPABILITY_DISCOVERY_OPT_IN = "android.telephony.ims.action.SHOW_CAPABILITY_DISCOVERY_OPT_IN";
    field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0
    field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1
    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
  }
  public final class ImsReasonInfo implements android.os.Parcelable {
@@ -44475,10 +44478,10 @@ package android.telephony.ims {
    method public void unregisterFeatureProvisioningChangedCallback(@NonNull android.telephony.ims.ProvisioningManager.FeatureProvisioningCallback);
  }
  public static class ProvisioningManager.FeatureProvisioningCallback {
  public abstract static class ProvisioningManager.FeatureProvisioningCallback {
    ctor public ProvisioningManager.FeatureProvisioningCallback();
    method public void onFeatureProvisioningChanged(int, int, boolean);
    method public void onRcsFeatureProvisioningChanged(int, int, boolean);
    method public abstract void onFeatureProvisioningChanged(int, int, boolean);
    method public abstract void onRcsFeatureProvisioningChanged(int, int, boolean);
  }
  public class RcsUceAdapter {
@@ -44521,15 +44524,6 @@ package android.telephony.ims.feature {
    field public static final int CAPABILITY_TYPE_VOICE = 1; // 0x1
  }
  public class RcsFeature {
  }
  public static class RcsFeature.RcsImsCapabilities {
    field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0
    field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1
    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
  }
}
package android.telephony.ims.stub {
+4 −1
Original line number Diff line number Diff line
@@ -15024,7 +15024,7 @@ package android.telephony.ims {
    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE, android.Manifest.permission.READ_CONTACTS}) public void requestAvailability(@NonNull android.net.Uri, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
    method @RequiresPermission(allOf={android.Manifest.permission.ACCESS_RCS_USER_CAPABILITY_EXCHANGE, android.Manifest.permission.READ_CONTACTS}) public void requestCapabilities(@NonNull java.util.Collection<android.net.Uri>, @NonNull java.util.concurrent.Executor, @NonNull android.telephony.ims.RcsUceAdapter.CapabilitiesCallback) throws android.telephony.ims.ImsException;
    method @RequiresPermission(android.Manifest.permission.MODIFY_PHONE_STATE) public void setUceSettingEnabled(boolean) throws android.telephony.ims.ImsException;
    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
    field @Deprecated public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
    field public static final int CAPABILITY_UPDATE_TRIGGER_ETAG_EXPIRED = 1; // 0x1
    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_2G = 7; // 0x7
    field public static final int CAPABILITY_UPDATE_TRIGGER_MOVE_TO_3G = 6; // 0x6
@@ -15307,6 +15307,9 @@ package android.telephony.ims.feature {
    method public void addCapabilities(int);
    method public boolean isCapable(int);
    method public void removeCapabilities(int);
    field public static final int CAPABILITY_TYPE_NONE = 0; // 0x0
    field public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1; // 0x1
    field public static final int CAPABILITY_TYPE_PRESENCE_UCE = 2; // 0x2
  }
}
+1 −1
Original line number Diff line number Diff line
@@ -176,7 +176,7 @@ public class CarrierConfigManager {
     * This flag specifies whether VoLTE availability is based on provisioning. By default this is
     * false.
     * Used for UCE to determine if EAB provisioning checks should be based on provisioning.
     * @deprecated Use {@link Ims#KEY_MMTEL_REQUIRES_PROVISIONING_BUNDLE} instead.
     * @deprecated Use {@link Ims#KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL} instead.
     */
    @Deprecated
    public static final String
+46 −3
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package android.telephony.ims;

import android.Manifest;
import android.annotation.CallbackExecutor;
import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.RequiresFeature;
import android.annotation.RequiresPermission;
@@ -43,6 +44,8 @@ import android.util.Log;
import com.android.internal.telephony.IIntegerConsumer;
import com.android.internal.telephony.ITelephony;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
@@ -86,6 +89,46 @@ public class ImsRcsManager {
    public static final String ACTION_SHOW_CAPABILITY_DISCOVERY_OPT_IN =
            "android.telephony.ims.action.SHOW_CAPABILITY_DISCOVERY_OPT_IN";

    /**
     * This carrier supports User Capability Exchange as, defined by the framework using a
     * presence server. If set, the RcsFeature should support capability exchange. If not set, this
     * RcsFeature should not publish capabilities or service capability requests.
     * @hide
     */
    @Retention(RetentionPolicy.SOURCE)
    @IntDef(prefix = "CAPABILITY_TYPE_", flag = true, value = {
            CAPABILITY_TYPE_NONE,
            CAPABILITY_TYPE_OPTIONS_UCE,
            CAPABILITY_TYPE_PRESENCE_UCE
    })
    public @interface RcsImsCapabilityFlag {}

    /**
     * Undefined capability type for initialization
     */
    public static final int CAPABILITY_TYPE_NONE = 0;

    /**
     * This carrier supports User Capability Exchange using SIP OPTIONS as defined by the
     * framework. If set, the RcsFeature should support capability exchange using SIP OPTIONS.
     * If not set, this RcsFeature should not service capability requests.
     */
    public static final int CAPABILITY_TYPE_OPTIONS_UCE = 1 << 0;

    /**
     * This carrier supports User Capability Exchange using a presence server as defined by the
     * framework. If set, the RcsFeature should support capability exchange using a presence
     * server. If not set, this RcsFeature should not publish capabilities or service capability
     * requests using presence.
     */
    public static final int CAPABILITY_TYPE_PRESENCE_UCE = 1 << 1;

    /**
     * This is used to check the upper range of RCS capability
     * @hide
     */
    public static final int CAPABILITY_TYPE_MAX = CAPABILITY_TYPE_PRESENCE_UCE + 1;

    /**
     * An application can use {@link #addOnAvailabilityChangedListener} to register a
     * {@link OnAvailabilityChangedListener}, which will notify the user when the RCS feature
@@ -104,7 +147,7 @@ public class ImsRcsManager {
         *
         * @param capabilities The new availability of the capabilities.
         */
        void onAvailabilityChanged(@RcsUceAdapter.RcsImsCapabilityFlag int capabilities);
        void onAvailabilityChanged(@RcsImsCapabilityFlag int capabilities);
    }

    /**
@@ -486,7 +529,7 @@ public class ImsRcsManager {
     */
    @SystemApi
    @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
    public boolean isCapable(@RcsUceAdapter.RcsImsCapabilityFlag int capability,
    public boolean isCapable(@RcsImsCapabilityFlag int capability,
            @ImsRegistrationImplBase.ImsRegistrationTech int radioTech) throws ImsException {
        IImsRcsController imsRcsController = getIImsRcsController();
        if (imsRcsController == null) {
@@ -522,7 +565,7 @@ public class ImsRcsManager {
     */
    @SystemApi
    @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
    public boolean isAvailable(@RcsUceAdapter.RcsImsCapabilityFlag int capability,
    public boolean isAvailable(@RcsImsCapabilityFlag int capability,
            @ImsRegistrationImplBase.ImsRegistrationTech int radioTech)
            throws ImsException {
        IImsRcsController imsRcsController = getIImsRcsController();
+13 −18
Original line number Diff line number Diff line
@@ -38,7 +38,6 @@ import android.telephony.ims.aidl.IFeatureProvisioningCallback;
import android.telephony.ims.aidl.IImsConfigCallback;
import android.telephony.ims.aidl.IRcsConfigCallback;
import android.telephony.ims.feature.MmTelFeature;
import android.telephony.ims.feature.RcsFeature;
import android.telephony.ims.stub.ImsConfigImplBase;
import android.telephony.ims.stub.ImsRegistrationImplBase;

@@ -970,7 +969,7 @@ public class ProvisioningManager {
    /**
     * Callback for IMS provisioning feature changes.
     */
    public static class FeatureProvisioningCallback {
    public abstract static class FeatureProvisioningCallback {

        private static class CallbackBinder extends IFeatureProvisioningCallback.Stub {

@@ -1024,12 +1023,10 @@ public class ProvisioningManager {
         * specified, or {@code false} if the capability is not provisioned for the technology
         * specified.
         */
        public void onFeatureProvisioningChanged(
        public abstract void onFeatureProvisioningChanged(
                @MmTelFeature.MmTelCapabilities.MmTelCapability int capability,
                @ImsRegistrationImplBase.ImsRegistrationTech int tech,
                boolean isProvisioned) {
            // Base Implementation
        }
                boolean isProvisioned);

        /**
         * The IMS RCS provisioning has changed for a specific capability and IMS
@@ -1041,12 +1038,10 @@ public class ProvisioningManager {
         * specified, or {@code false} if the capability is not provisioned for the technology
         * specified.
         */
        public void onRcsFeatureProvisioningChanged(
                @RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability,
        public abstract void onRcsFeatureProvisioningChanged(
                @ImsRcsManager.RcsImsCapabilityFlag int capability,
                @ImsRegistrationImplBase.ImsRegistrationTech int tech,
                boolean isProvisioned) {
            // Base Implementation
        }
                boolean isProvisioned);

        /**@hide*/
        public final IFeatureProvisioningCallback getBinder() {
@@ -1505,7 +1500,7 @@ public class ProvisioningManager {
     * Get the provisioning status for the IMS RCS capability specified.
     *
     * If provisioning is not required for the queried
     * {@link RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag} this method will always return
     * {@link ImsRcsManager.RcsImsCapabilityFlag} this method will always return
     * {@code true}.
     *
     * @see CarrierConfigManager.Ims#KEY_CARRIER_RCS_PROVISIONING_REQUIRED_BOOL
@@ -1522,7 +1517,7 @@ public class ProvisioningManager {
    @WorkerThread
    @RequiresPermission(Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
    public boolean getRcsProvisioningStatusForCapability(
            @RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability) {
            @ImsRcsManager.RcsImsCapabilityFlag int capability) {
        try {
            return getITelephony().getRcsProvisioningStatusForCapability(mSubId, capability,
            ImsRegistrationImplBase.REGISTRATION_TECH_LTE);
@@ -1535,7 +1530,7 @@ public class ProvisioningManager {
     * Get the provisioning status for the IMS RCS capability specified.
     *
     * If provisioning is not required for the queried
     * {@link RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag} this method
     * {@link ImsRcsManager.RcsImsCapabilityFlag} this method
     * will always return {@code true}.
     *
     * <p> Requires Permission:
@@ -1553,7 +1548,7 @@ public class ProvisioningManager {
    @WorkerThread
    @RequiresPermission(Manifest.permission.READ_PRECISE_PHONE_STATE)
    public boolean getRcsProvisioningStatusForCapability(
            @RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability,
            @ImsRcsManager.RcsImsCapabilityFlag int capability,
            @ImsRegistrationImplBase.ImsRegistrationTech int tech) {
        try {
            return getITelephony().getRcsProvisioningStatusForCapability(mSubId, capability, tech);
@@ -1590,7 +1585,7 @@ public class ProvisioningManager {
    @WorkerThread
    @RequiresPermission(Manifest.permission.MODIFY_PHONE_STATE)
    public void setRcsProvisioningStatusForCapability(
            @RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability,
            @ImsRcsManager.RcsImsCapabilityFlag int capability,
            boolean isProvisioned) {
        try {
            getITelephony().setRcsProvisioningStatusForCapability(mSubId, capability,
@@ -1622,7 +1617,7 @@ public class ProvisioningManager {
    @WorkerThread
    @RequiresPermission(Manifest.permission.MODIFY_PHONE_STATE)
    public void setRcsProvisioningStatusForCapability(
            @RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability,
            @ImsRcsManager.RcsImsCapabilityFlag int capability,
            @ImsRegistrationImplBase.ImsRegistrationTech int tech, boolean isProvisioned) {
        try {
            getITelephony().setRcsProvisioningStatusForCapability(mSubId, capability,
@@ -1676,7 +1671,7 @@ public class ProvisioningManager {
     */
    @RequiresPermission(Manifest.permission.READ_PRECISE_PHONE_STATE)
    public boolean isRcsProvisioningRequiredForCapability(
            @RcsFeature.RcsImsCapabilities.RcsImsCapabilityFlag int capability,
            @ImsRcsManager.RcsImsCapabilityFlag int capability,
            @ImsRegistrationImplBase.ImsRegistrationTech int tech) {
        try {
            return getITelephony().isRcsProvisioningRequiredForCapability(mSubId, capability, tech);
Loading