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

Commit c20e4124 authored by Ling Ma's avatar Ling Ma Committed by Android (Google) Code Review
Browse files

Merge "Passing feature flags to more components" into main

parents 05d8a25f b95c48e9
Loading
Loading
Loading
Loading
+6 −5
Original line number Diff line number Diff line
@@ -268,7 +268,7 @@ public class PhoneFactory {
                        makePhoneSwitcher(maxActivePhones, sContext, Looper.myLooper(),
                                featureFlags);

                sProxyController = ProxyController.getInstance(context);
                sProxyController = ProxyController.getInstance(context, featureFlags);

                sIntentBroadcaster = IntentBroadcaster.getInstance(context);

@@ -276,7 +276,7 @@ public class PhoneFactory {

                for (int i = 0; i < numPhones; i++) {
                    sTelephonyNetworkFactories[i] = new TelephonyNetworkFactory(
                            Looper.myLooper(), sPhones[i]);
                            Looper.myLooper(), sPhones[i], featureFlags);
                }
            }
        }
@@ -285,8 +285,9 @@ public class PhoneFactory {
    /**
     * Upon single SIM to dual SIM switch or vice versa, we dynamically allocate or de-allocate
     * Phone and CommandInterface objects.
     * @param context
     * @param activeModemCount
     *
     * @param context The context
     * @param activeModemCount The number of active modems
     */
    public static void onMultiSimConfigChanged(Context context, int activeModemCount) {
        synchronized (sLockProxyPhones) {
@@ -313,7 +314,7 @@ public class PhoneFactory {
                    sPhones[i].createImsPhone();
                }
                sTelephonyNetworkFactories[i] = new TelephonyNetworkFactory(
                        Looper.myLooper(), sPhones[i]);
                        Looper.myLooper(), sPhones[i], sFeatureFlags);
            }
        }
    }
+15 −5
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package com.android.internal.telephony;

import static java.util.Arrays.copyOf;

import android.annotation.NonNull;
import android.compat.annotation.UnsupportedAppUsage;
import android.content.Context;
import android.content.Intent;
@@ -33,6 +34,7 @@ import android.util.Log;

import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.telephony.data.PhoneSwitcher;
import com.android.internal.telephony.flags.FeatureFlags;
import com.android.telephony.Rlog;

import java.util.ArrayList;
@@ -111,11 +113,12 @@ public class ProxyController {
    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
    private int[] mOldRadioAccessFamily;

    @NonNull
    private final FeatureFlags mFlags;

    //***** Class Methods
    public static ProxyController getInstance(Context context) {
    public static ProxyController getInstance(Context context, FeatureFlags flags) {
        if (sProxyController == null) {
            sProxyController = new ProxyController(context);
            sProxyController = new ProxyController(context, flags);
        }
        return sProxyController;
    }
@@ -125,16 +128,23 @@ public class ProxyController {
        return sProxyController;
    }

    private ProxyController(Context context) {
    /**
     * Constructor
     *
     * @param context The context
     * @param featureFlags Feature flags
     */
    public ProxyController(@NonNull Context context, @NonNull FeatureFlags featureFlags) {
        logd("Constructor - Enter");

        mContext = context;
        mFlags = featureFlags;
        mPhones = PhoneFactory.getPhones();
        mPhoneSwitcher = PhoneSwitcher.getInstance();

        mUiccPhoneBookController = new UiccPhoneBookController();
        mPhoneSubInfoController = new PhoneSubInfoController(mContext);
        mSmsController = new SmsController(mContext);
        mSmsController = new SmsController(mContext, featureFlags);
        mSetRadioAccessFamilyStatus = new int[mPhones.length];
        mNewRadioAccessFamily = new int[mPhones.length];
        mOldRadioAccessFamily = new int[mPhones.length];
+5 −2
Original line number Diff line number Diff line
@@ -22,6 +22,7 @@ import static android.content.pm.PackageManager.PERMISSION_GRANTED;

import static com.android.internal.telephony.util.TelephonyUtils.checkDumpPermission;

import android.annotation.NonNull;
import android.annotation.Nullable;
import android.app.ActivityManager;
import android.app.AppOpsManager;
@@ -44,6 +45,7 @@ import android.telephony.TelephonyFrameworkInitializer;
import android.telephony.TelephonyManager;

import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.telephony.flags.FeatureFlags;
import com.android.internal.telephony.subscription.SubscriptionManagerService;
import com.android.internal.telephony.util.TelephonyUtils;
import com.android.internal.util.IndentingPrintWriter;
@@ -62,10 +64,11 @@ public class SmsController extends ISmsImplBase {
    static final String LOG_TAG = "SmsController";

    private final Context mContext;

    private final FeatureFlags mFlags;
    @VisibleForTesting
    public SmsController(Context context) {
    public SmsController(Context context, @NonNull FeatureFlags flags) {
        mContext = context;
        mFlags = flags;
        ServiceRegisterer smsServiceRegisterer = TelephonyFrameworkInitializer
                .getTelephonyServiceManager()
                .getSmsServiceRegisterer();
+3 −2
Original line number Diff line number Diff line
@@ -342,8 +342,9 @@ public class TelephonyComponentFactory {
     * Create a new UiccProfile object.
     */
    public UiccProfile makeUiccProfile(Context context, CommandsInterface ci, IccCardStatus ics,
                                       int phoneId, UiccCard uiccCard, Object lock) {
        return new UiccProfile(context, ci, ics, phoneId, uiccCard, lock);
                                       int phoneId, UiccCard uiccCard, Object lock,
            @NonNull FeatureFlags flags) {
        return new UiccProfile(context, ci, ics, phoneId, uiccCard, lock, flags);
    }

    public EriManager makeEriManager(Phone phone, int eriFileSource) {
+6 −1
Original line number Diff line number Diff line
@@ -49,6 +49,8 @@ import com.android.internal.telephony.CommandsInterface;
import com.android.internal.telephony.PhoneConstants;
import com.android.internal.telephony.ProxyController;
import com.android.internal.telephony.SmsController;
import com.android.internal.telephony.flags.FeatureFlags;
import com.android.internal.telephony.flags.FeatureFlagsImpl;
import com.android.internal.telephony.subscription.SubscriptionManagerService;
import com.android.internal.telephony.uicc.IccCardStatus.CardState;
import com.android.internal.telephony.uicc.IccFileHandler;
@@ -104,6 +106,8 @@ public class CatService extends Handler implements AppInterface {
    @UnsupportedAppUsage(maxTargetSdk = Build.VERSION_CODES.R, trackingBug = 170729553)
    private static CatService[] sInstance = null;
    @UnsupportedAppUsage
    private static final FeatureFlags sFlags = new FeatureFlagsImpl();
    @UnsupportedAppUsage
    private CommandsInterface mCmdIf;
    @UnsupportedAppUsage
    private Context mContext;
@@ -487,7 +491,8 @@ public class CatService extends Handler implements AppInterface {
                        destAddr = ((SendSMSParams) cmdParams).mDestAddress.text;
                    }
                    if (text != null && destAddr != null) {
                        ProxyController proxyController = ProxyController.getInstance(mContext);
                        ProxyController proxyController = ProxyController
                                .getInstance(mContext, sFlags);
                        SubscriptionManager subscriptionManager = (SubscriptionManager)
                                mContext.getSystemService(
                                        Context.TELEPHONY_SUBSCRIPTION_SERVICE);
Loading