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

Commit c037935d authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Make PreciseCallState Constructor System API"

parents de032f2e c1288637
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -8589,6 +8589,7 @@ package android.telephony {
  }
  public final class PreciseCallState implements android.os.Parcelable {
    ctor public PreciseCallState(int, int, int, int, int);
    method public int describeContents();
    method public int getBackgroundCallState();
    method public int getForegroundCallState();
+13 −4
Original line number Diff line number Diff line
@@ -441,10 +441,10 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
            mCallDisconnectCause[i] = DisconnectCause.NOT_VALID;
            mCallPreciseDisconnectCause[i] = PreciseDisconnectCause.NOT_VALID;
            mCallQuality[i] = createCallQuality();
            mCallAttributes[i] = new CallAttributes(new PreciseCallState(),
            mCallAttributes[i] = new CallAttributes(createPreciseCallState(),
                    TelephonyManager.NETWORK_TYPE_UNKNOWN, createCallQuality());
            mCallNetworkType[i] = TelephonyManager.NETWORK_TYPE_UNKNOWN;
            mPreciseCallState[i] = new PreciseCallState();
            mPreciseCallState[i] = createPreciseCallState();
            mRingingCallState[i] = PreciseCallState.PRECISE_CALL_STATE_IDLE;
            mForegroundCallState[i] = PreciseCallState.PRECISE_CALL_STATE_IDLE;
            mBackgroundCallState[i] = PreciseCallState.PRECISE_CALL_STATE_IDLE;
@@ -534,10 +534,10 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
            mCallDisconnectCause[i] = DisconnectCause.NOT_VALID;
            mCallPreciseDisconnectCause[i] = PreciseDisconnectCause.NOT_VALID;
            mCallQuality[i] = createCallQuality();
            mCallAttributes[i] = new CallAttributes(new PreciseCallState(),
            mCallAttributes[i] = new CallAttributes(createPreciseCallState(),
                    TelephonyManager.NETWORK_TYPE_UNKNOWN, createCallQuality());
            mCallNetworkType[i] = TelephonyManager.NETWORK_TYPE_UNKNOWN;
            mPreciseCallState[i] = new PreciseCallState();
            mPreciseCallState[i] = createPreciseCallState();
            mRingingCallState[i] = PreciseCallState.PRECISE_CALL_STATE_IDLE;
            mForegroundCallState[i] = PreciseCallState.PRECISE_CALL_STATE_IDLE;
            mBackgroundCallState[i] = PreciseCallState.PRECISE_CALL_STATE_IDLE;
@@ -2645,6 +2645,15 @@ public class TelephonyRegistry extends ITelephonyRegistry.Stub {
        }
    }

    /** Returns a new PreciseCallState object with default values. */
    private static PreciseCallState createPreciseCallState() {
        return new PreciseCallState(PreciseCallState.PRECISE_CALL_STATE_NOT_VALID,
            PreciseCallState.PRECISE_CALL_STATE_NOT_VALID,
            PreciseCallState.PRECISE_CALL_STATE_NOT_VALID,
            DisconnectCause.NOT_VALID,
            PreciseDisconnectCause.NOT_VALID);
    }

    /** Returns a new CallQuality object with default values. */
    private static CallQuality createCallQuality() {
        return new CallQuality(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0);
+80 −0
Original line number Diff line number Diff line
@@ -485,6 +485,86 @@ public class Annotation {
            PreciseCallState.PRECISE_CALL_STATE_DISCONNECTING})
    public @interface PreciseCallStates {}

    @IntDef(value = {
            DisconnectCause.NOT_VALID,
            DisconnectCause.NOT_DISCONNECTED,
            DisconnectCause.INCOMING_MISSED,
            DisconnectCause.NORMAL,
            DisconnectCause.LOCAL,
            DisconnectCause.BUSY,
            DisconnectCause.CONGESTION,
            DisconnectCause.MMI,
            DisconnectCause.INVALID_NUMBER,
            DisconnectCause.NUMBER_UNREACHABLE,
            DisconnectCause.SERVER_UNREACHABLE,
            DisconnectCause.INVALID_CREDENTIALS,
            DisconnectCause.OUT_OF_NETWORK,
            DisconnectCause.SERVER_ERROR,
            DisconnectCause.TIMED_OUT,
            DisconnectCause.LOST_SIGNAL,
            DisconnectCause.LIMIT_EXCEEDED,
            DisconnectCause.INCOMING_REJECTED,
            DisconnectCause.POWER_OFF,
            DisconnectCause.OUT_OF_SERVICE,
            DisconnectCause.ICC_ERROR,
            DisconnectCause.CALL_BARRED,
            DisconnectCause.FDN_BLOCKED,
            DisconnectCause.CS_RESTRICTED,
            DisconnectCause.CS_RESTRICTED_NORMAL,
            DisconnectCause.CS_RESTRICTED_EMERGENCY,
            DisconnectCause.UNOBTAINABLE_NUMBER,
            DisconnectCause.CDMA_LOCKED_UNTIL_POWER_CYCLE,
            DisconnectCause.CDMA_DROP,
            DisconnectCause.CDMA_INTERCEPT,
            DisconnectCause.CDMA_REORDER,
            DisconnectCause.CDMA_SO_REJECT,
            DisconnectCause.CDMA_RETRY_ORDER,
            DisconnectCause.CDMA_ACCESS_FAILURE,
            DisconnectCause.CDMA_PREEMPTED,
            DisconnectCause.CDMA_NOT_EMERGENCY,
            DisconnectCause.CDMA_ACCESS_BLOCKED,
            DisconnectCause.ERROR_UNSPECIFIED,
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface DisconnectCauses {
    }

    @IntDef(value = {
            PreciseDisconnectCause.NOT_VALID,
            PreciseDisconnectCause.NO_DISCONNECT_CAUSE_AVAILABLE,
            PreciseDisconnectCause.UNOBTAINABLE_NUMBER,
            PreciseDisconnectCause.NORMAL,
            PreciseDisconnectCause.BUSY,
            PreciseDisconnectCause.NUMBER_CHANGED,
            PreciseDisconnectCause.STATUS_ENQUIRY,
            PreciseDisconnectCause.NORMAL_UNSPECIFIED,
            PreciseDisconnectCause.NO_CIRCUIT_AVAIL,
            PreciseDisconnectCause.TEMPORARY_FAILURE,
            PreciseDisconnectCause.SWITCHING_CONGESTION,
            PreciseDisconnectCause.CHANNEL_NOT_AVAIL,
            PreciseDisconnectCause.QOS_NOT_AVAIL,
            PreciseDisconnectCause.BEARER_NOT_AVAIL,
            PreciseDisconnectCause.ACM_LIMIT_EXCEEDED,
            PreciseDisconnectCause.CALL_BARRED,
            PreciseDisconnectCause.FDN_BLOCKED,
            PreciseDisconnectCause.IMSI_UNKNOWN_IN_VLR,
            PreciseDisconnectCause.IMEI_NOT_ACCEPTED,
            PreciseDisconnectCause.CDMA_LOCKED_UNTIL_POWER_CYCLE,
            PreciseDisconnectCause.CDMA_DROP,
            PreciseDisconnectCause.CDMA_INTERCEPT,
            PreciseDisconnectCause.CDMA_REORDER,
            PreciseDisconnectCause.CDMA_SO_REJECT,
            PreciseDisconnectCause.CDMA_RETRY_ORDER,
            PreciseDisconnectCause.CDMA_ACCESS_FAILURE,
            PreciseDisconnectCause.CDMA_PREEMPTED,
            PreciseDisconnectCause.CDMA_NOT_EMERGENCY,
            PreciseDisconnectCause.CDMA_ACCESS_BLOCKED,
            PreciseDisconnectCause.ERROR_UNSPECIFIED,
    })
    @Retention(RetentionPolicy.SOURCE)
    public @interface PreciseDisconnectCauses {
    }

    @Retention(RetentionPolicy.SOURCE)
    @IntDef(prefix = {"RIL_RADIO_TECHNOLOGY_" }, value = {
            ServiceState.RIL_RADIO_TECHNOLOGY_UNKNOWN,
+15 −9
Original line number Diff line number Diff line
@@ -16,19 +16,18 @@

package android.telephony;

import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.annotation.SystemApi;
import android.annotation.UnsupportedAppUsage;
import android.os.Parcel;
import android.os.Parcelable;
import android.telephony.Annotation.DisconnectCauses;
import android.telephony.Annotation.PreciseCallStates;
import android.telephony.Annotation.PreciseDisconnectCauses;
import android.telephony.DisconnectCause;
import android.telephony.PreciseDisconnectCause;

import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.util.Objects;

/**
@@ -73,19 +72,26 @@ public final class PreciseCallState implements Parcelable {
    private @PreciseCallStates int mRingingCallState = PRECISE_CALL_STATE_NOT_VALID;
    private @PreciseCallStates int mForegroundCallState = PRECISE_CALL_STATE_NOT_VALID;
    private @PreciseCallStates int mBackgroundCallState = PRECISE_CALL_STATE_NOT_VALID;
    private int mDisconnectCause = DisconnectCause.NOT_VALID;
    private int mPreciseDisconnectCause = PreciseDisconnectCause.NOT_VALID;
    private @DisconnectCauses int mDisconnectCause = DisconnectCause.NOT_VALID;
    private @PreciseDisconnectCauses int mPreciseDisconnectCause = PreciseDisconnectCause.NOT_VALID;

    /**
     * Constructor
     * Construct PreciseCallState with parameters
     *
     * @param ringingCall ring call state
     * @param foregroundCall foreground call state
     * @param backgroundCall background call state
     * @param disconnectCause disconnect cause
     * @param preciseDisconnectCause precise disconnect cause
     *
     * @hide
     */
    @UnsupportedAppUsage
    @SystemApi
    public PreciseCallState(@PreciseCallStates int ringingCall,
                            @PreciseCallStates int foregroundCall,
                            @PreciseCallStates int backgroundCall, int disconnectCause,
                            int preciseDisconnectCause) {
                            @PreciseCallStates int backgroundCall,
                            @DisconnectCauses int disconnectCause,
                            @PreciseDisconnectCauses int preciseDisconnectCause) {
        mRingingCallState = ringingCall;
        mForegroundCallState = foregroundCall;
        mBackgroundCallState = backgroundCall;