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

Commit 13657dfb authored by Android Build Coastguard Worker's avatar Android Build Coastguard Worker
Browse files

Snap for 13424156 from ba8f3583 to 25Q3-release

Change-Id: I6bbd3426409bec071f569e7dc621ce0793c1cf32
parents 0ebda44c ba8f3583
Loading
Loading
Loading
Loading
+0 −11
Original line number Diff line number Diff line
@@ -79,17 +79,6 @@ flag {
    }
}

# OWNER=sasindran TARGET=24Q3
flag {
    name: "use_relaxed_id_match"
    namespace: "telephony"
    description: "This flag supports relaxed id match for radio state changes"
    bug:"336916327"
    metadata {
        purpose: PURPOSE_BUGFIX
    }
}

# OWNER=joonhunshin TARGET=24Q4
flag {
    name: "use_carrier_config_for_cfnry_time_via_mmi"
+123 −0
Original line number Diff line number Diff line
@@ -341,6 +341,11 @@ public class SatelliteController extends Handler {
    private static final int REQUEST_SET_DEVICE_ALIGNED_WITH_SATELLITE = 80;
    private static final int REQUEST_ADD_ATTACH_RESTRICTION_FOR_CARRIER = 81;
    private static final int REQUEST_REMOVE_ATTACH_RESTRICTION_FOR_CARRIER = 82;
    private static final int REQUEST_NTN_SIGNAL_STRENGTH = 83;
    private static final int REQUEST_SATELLITE_SUBSCRIBER_PROVISION_STATUS = 84;
    private static final int REQUEST_SET_NTN_SMS_SUPPORTED_BY_MESSAGES_APP = 85;
    private static final int REQUEST_PROVISION_SATELLITE = 86;
    private static final int REQUEST_DEPROVISION_SATELLITE = 87;

    @NonNull private static SatelliteController sInstance;
    @NonNull private final Context mContext;
@@ -2558,6 +2563,67 @@ public class SatelliteController extends Handler {
                break;
            }

            case REQUEST_NTN_SIGNAL_STRENGTH: {
                plogd("REQUEST_NTN_SIGNAL_STRENGTH");
                SomeArgs args = (SomeArgs) msg.obj;
                ResultReceiver result = (ResultReceiver) args.arg1;
                try {
                    handleRequestNtnSignalStrength(result);
                } finally {
                    args.recycle();
                }
                break;
            }

            case REQUEST_SATELLITE_SUBSCRIBER_PROVISION_STATUS: {
                plogd("REQUEST_SATELLITE_SUBSCRIBER_PROVISION_STATUS");
                SomeArgs args = (SomeArgs) msg.obj;
                ResultReceiver result = (ResultReceiver) args.arg1;
                try {
                    handleRequestSatelliteSubscriberProvisionStatus(result);
                } finally {
                    args.recycle();
                }
                break;
            }

            case REQUEST_SET_NTN_SMS_SUPPORTED_BY_MESSAGES_APP: {
                plogd("REQUEST_SET_NTN_SMS_SUPPORTED_BY_MESSAGES_APP");
                SomeArgs args = (SomeArgs) msg.obj;
                boolean ntnSmsSupported = (boolean) args.arg1;
                try {
                    handleRequestSetNtnSmsSupportedByMessagesApp(ntnSmsSupported);
                } finally {
                    args.recycle();
                }
                break;
            }

            case REQUEST_PROVISION_SATELLITE: {
                plogd("REQUEST_PROVISION_SATELLITE");
                SomeArgs args = (SomeArgs) msg.obj;
                List<SatelliteSubscriberInfo> list = (List<SatelliteSubscriberInfo>) args.arg1;
                ResultReceiver result = (ResultReceiver) args.arg2;
                try {
                    handleRequestProvisionSatellite(list, result);
                } finally {
                    args.recycle();
                }
                break;
            }

            case REQUEST_DEPROVISION_SATELLITE: {
                plogd("REQUEST_DEPROVISION_SATELLITE");
                SomeArgs args = (SomeArgs) msg.obj;
                List<SatelliteSubscriberInfo> list = (List<SatelliteSubscriberInfo>) args.arg1;
                ResultReceiver result = (ResultReceiver) args.arg2;
                try {
                    handleRequestDeprovisionSatellite(list, result);
                } finally {
                    args.recycle();
                }
                break;
            }

            default:
                Log.w(TAG, "SatelliteControllerHandler: unexpected message code: " +
@@ -3788,6 +3854,18 @@ public class SatelliteController extends Handler {
    public void requestNtnSignalStrength(@NonNull ResultReceiver result) {
        if (DBG) plogd("requestNtnSignalStrength()");

        if (mFeatureFlags.satelliteImproveMultiThreadDesign()) {
            SomeArgs args = SomeArgs.obtain();
            args.arg1 = result;
            sendMessage(obtainMessage(REQUEST_NTN_SIGNAL_STRENGTH, args));
            return;
        }

        handleRequestNtnSignalStrength(result);
    }

    private void handleRequestNtnSignalStrength(@NonNull ResultReceiver result) {
        plogd("handleRequestNtnSignalStrength");
        int error = evaluateOemSatelliteRequestAllowed(true);
        if (error != SATELLITE_RESULT_SUCCESS) {
            result.send(error, null);
@@ -8200,6 +8278,16 @@ public class SatelliteController extends Handler {
     * to be used for provision if the request is successful or an error code if the request failed.
     */
    public void requestSatelliteSubscriberProvisionStatus(@NonNull ResultReceiver result) {
        if (mFeatureFlags.satelliteImproveMultiThreadDesign()) {
            SomeArgs args = SomeArgs.obtain();
            args.arg1 = result;
            sendMessage(obtainMessage(REQUEST_SATELLITE_SUBSCRIBER_PROVISION_STATUS, args));
        }

        handleRequestSatelliteSubscriberProvisionStatus(result);
    }

    private void handleRequestSatelliteSubscriberProvisionStatus(@NonNull ResultReceiver result) {
        if (!mFeatureFlags.carrierRoamingNbIotNtn()) {
            logd("requestSatelliteSubscriberProvisionStatus: carrierRoamingNbIotNtn is disabled");
            result.send(SATELLITE_RESULT_REQUEST_NOT_SUPPORTED, null);
@@ -8497,6 +8585,18 @@ public class SatelliteController extends Handler {
     */
    public void provisionSatellite(@NonNull List<SatelliteSubscriberInfo> list,
            @NonNull ResultReceiver result) {
        if (mFeatureFlags.satelliteImproveMultiThreadDesign()) {
            SomeArgs args = SomeArgs.obtain();
            args.arg1 = list;
            args.arg2 = result;
            sendMessage(obtainMessage(REQUEST_PROVISION_SATELLITE, args));
        }

        handleRequestProvisionSatellite(list, result);
    }

    private void handleRequestProvisionSatellite(@NonNull List<SatelliteSubscriberInfo> list,
            @NonNull ResultReceiver result) {
        if (!mFeatureFlags.carrierRoamingNbIotNtn()) {
            result.send(SATELLITE_RESULT_REQUEST_NOT_SUPPORTED, null);
            logd("provisionSatellite: carrierRoamingNbIotNtn not support");
@@ -8581,6 +8681,18 @@ public class SatelliteController extends Handler {
     */
    public void deprovisionSatellite(@NonNull List<SatelliteSubscriberInfo> list,
            @NonNull ResultReceiver result) {
        if (mFeatureFlags.satelliteImproveMultiThreadDesign()) {
            SomeArgs args = SomeArgs.obtain();
            args.arg1 = list;
            args.arg2 = result;
            sendMessage(obtainMessage(REQUEST_DEPROVISION_SATELLITE, args));
        }

        handleRequestDeprovisionSatellite(list, result);
    }

    private void handleRequestDeprovisionSatellite(@NonNull List<SatelliteSubscriberInfo> list,
            @NonNull ResultReceiver result) {
        if (!mFeatureFlags.carrierRoamingNbIotNtn()) {
            result.send(SATELLITE_RESULT_REQUEST_NOT_SUPPORTED, null);
            logd("deprovisionSatellite: carrierRoamingNbIotNtn not support");
@@ -8608,6 +8720,17 @@ public class SatelliteController extends Handler {
     * @param ntnSmsSupported {@code true} If application supports NTN SMS, else {@code false}.
     */
    public void setNtnSmsSupportedByMessagesApp(boolean ntnSmsSupported) {
        if (mFeatureFlags.satelliteImproveMultiThreadDesign()) {
            SomeArgs args = SomeArgs.obtain();
            args.arg1 = ntnSmsSupported;
            sendMessage(obtainMessage(REQUEST_SET_NTN_SMS_SUPPORTED_BY_MESSAGES_APP, args));
            return;
        }

        handleRequestSetNtnSmsSupportedByMessagesApp(ntnSmsSupported);
    }

    private void handleRequestSetNtnSmsSupportedByMessagesApp(boolean ntnSmsSupported) {
        if (!mFeatureFlags.carrierRoamingNbIotNtn()) {
            return;
        }
+4 −3
Original line number Diff line number Diff line
@@ -4470,7 +4470,7 @@ public class SatelliteControllerTest extends TelephonyTest {
        inputList.add(list.get(0));
        verifyProvisionSatellite(inputList);

        verify(mMockSatelliteModemInterface, times(1)).updateSatelliteSubscription(anyString(),
        verify(mMockSatelliteModemInterface, times(2)).updateSatelliteSubscription(anyString(),
                any());
        assertTrue(waitForForEvents(
                semaphore, 1, "testRegisterForSatelliteSubscriptionProvisionStateChanged"));
@@ -4841,8 +4841,8 @@ public class SatelliteControllerTest extends TelephonyTest {

        List<SatelliteSubscriberInfo> inputList = getExpectedSatelliteSubscriberInfoList();
        verifyProvisionSatellite(inputList);
        verify(mMockSubscriptionManagerService).setIsSatelliteProvisionedForNonIpDatagram(
                eq(SUB_ID), eq(true));
        verify(mMockSubscriptionManagerService, times(2))
                .setIsSatelliteProvisionedForNonIpDatagram(eq(SUB_ID), eq(true));
    }

    @Test
@@ -6230,6 +6230,7 @@ public class SatelliteControllerTest extends TelephonyTest {
    public void testSetNtnSmsSupportedByMessagesApp() {
        when(mFeatureFlags.carrierRoamingNbIotNtn()).thenReturn(true);
        mSatelliteControllerUT.setNtnSmsSupportedByMessagesApp(true);
        processAllMessages();
        assertTrue(mSharedPreferences.getBoolean(
                SatelliteController.NTN_SMS_SUPPORTED_BY_MESSAGES_APP_KEY, false));
    }