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

Commit 363648c3 authored by Aishwarya Mallampati's avatar Aishwarya Mallampati Committed by Android (Google) Code Review
Browse files

Merge "Remove synchronized() blocks that are not required." into main

parents a7cac2d4 ec2d24f0
Loading
Loading
Loading
Loading
+73 −84
Original line number Diff line number Diff line
@@ -46,7 +46,6 @@ import android.util.Log;
import android.util.Pair;

import com.android.internal.R;
import com.android.internal.annotations.GuardedBy;
import com.android.internal.annotations.VisibleForTesting;
import com.android.internal.os.SomeArgs;
import com.android.internal.telephony.IIntegerConsumer;
@@ -80,8 +79,8 @@ public class DatagramReceiver extends Handler {

    /** Key used to read/write satellite datagramId in shared preferences. */
    private static final String SATELLITE_DATAGRAM_ID_KEY = "satellite_datagram_id_key";
    private static AtomicLong mNextDatagramId = new AtomicLong(0);

    /** All the variables initialized inside the constructor are declared here. */
    @NonNull private static DatagramReceiver sInstance;
    @NonNull private final Context mContext;
    @NonNull private final ContentResolver mContentResolver;
@@ -91,17 +90,23 @@ public class DatagramReceiver extends Handler {
    @NonNull private final SessionMetricsStats mSessionMetricsStats;
    @NonNull private final Looper mLooper;
    @NonNull private final FeatureFlags mFeatureFlags;
    @Nullable private PersistentLogger mPersistentLogger = null;

    /** All the atomic variables are declared here. */
    private static AtomicLong mNextDatagramId = new AtomicLong(0);
    private AtomicLong mDatagramTransferStartTime = new AtomicLong(0);
    private AtomicBoolean mIsDemoMode = new AtomicBoolean(false);
    private AtomicBoolean mIsAligned = new AtomicBoolean(false);

    /**
     * All the variables declared here should only be accessed by methods that run inside the
     * handler thread.
     */
    @Nullable
    private DatagramReceiverHandlerRequest mDemoPollPendingSatelliteDatagramsRequest = null;
    @Nullable
    private DatagramReceiverHandlerRequest mPendingPollSatelliteDatagramsRequest = null;
    private final Object mLock = new Object();
    @Nullable
    private PersistentLogger mPersistentLogger = null;


    /**
     * Map key: subId, value: SatelliteDatagramListenerHandler to notify registrants.
@@ -636,7 +641,6 @@ public class DatagramReceiver extends Handler {
    }

    private void handleSatelliteConnectedEvent() {
        synchronized (mLock) {
        if (isDatagramWaitForConnectedStateTimerStarted()) {
            stopDatagramWaitForConnectedStateTimer();
            if (mPendingPollSatelliteDatagramsRequest == null) {
@@ -652,7 +656,6 @@ public class DatagramReceiver extends Handler {
            mPendingPollSatelliteDatagramsRequest = null;
        }
    }
    }

    private void pollPendingSatelliteDatagramsInternal(int subId,
            @NonNull Consumer<Integer> callback) {
@@ -667,7 +670,6 @@ public class DatagramReceiver extends Handler {
        if (mDatagramController.needsWaitingForSatelliteConnected(
                SatelliteManager.DATAGRAM_TYPE_UNKNOWN)) {
            plogd("pollPendingSatelliteDatagramsInternal: wait for satellite connected");
            synchronized (mLock) {
            mPendingPollSatelliteDatagramsRequest = new DatagramReceiverHandlerRequest(
                    callback, SatelliteServiceUtils.getPhone(), subId);
            mDatagramController.updateReceiveStatus(subId,
@@ -676,7 +678,6 @@ public class DatagramReceiver extends Handler {
                    mDatagramController.getReceivePendingCount(),
                    SatelliteManager.SATELLITE_RESULT_SUCCESS);
            startDatagramWaitForConnectedStateTimer();
            }
            return;
        }

@@ -691,7 +692,6 @@ public class DatagramReceiver extends Handler {
        if (mIsDemoMode.get()) {
            DatagramReceiverHandlerRequest request = new DatagramReceiverHandlerRequest(
                    callback, phone, subId);
            synchronized (mLock) {
            if (!mDatagramController.waitForAligningToSatellite(mIsAligned.get())) {
                Message msg = obtainMessage(EVENT_POLL_PENDING_SATELLITE_DATAGRAMS_DONE,
                        request);
@@ -700,7 +700,6 @@ public class DatagramReceiver extends Handler {
            } else {
                startSatelliteAlignedTimer(request);
            }
            }
        } else {
            sendRequestAsync(CMD_POLL_PENDING_SATELLITE_DATAGRAMS, callback, phone, subId);
        }
@@ -726,7 +725,6 @@ public class DatagramReceiver extends Handler {
    private void handleEventSatelliteModemStateChanged(
            @SatelliteManager.SatelliteModemState int state) {
        plogd("handleEventSatelliteModemStateChanged: state = " + state);
        synchronized (mLock) {
        if (state == SatelliteManager.SATELLITE_MODEM_STATE_OFF
                || state == SatelliteManager.SATELLITE_MODEM_STATE_UNAVAILABLE) {
            plogd("onSatelliteModemStateChanged: cleaning up resources");
@@ -735,9 +733,7 @@ public class DatagramReceiver extends Handler {
            handleSatelliteConnectedEvent();
        }
    }
    }

    @GuardedBy("mLock")
    private void cleanupDemoModeResources() {
        if (isSatelliteAlignedTimerStarted()) {
            stopSatelliteAlignedTimer();
@@ -755,9 +751,7 @@ public class DatagramReceiver extends Handler {
        mIsAligned.set(false);
    }

    @GuardedBy("mLock")
    private void cleanUpResources() {
        synchronized (mLock) {
        if (mPendingPollSatelliteDatagramsRequest != null) {
            Consumer<Integer> callback =
                    (Consumer<Integer>) mPendingPollSatelliteDatagramsRequest.argument;
@@ -765,7 +759,6 @@ public class DatagramReceiver extends Handler {
            mPendingPollSatelliteDatagramsRequest = null;
        }
        stopDatagramWaitForConnectedStateTimer();
        }

        int subId = SatelliteController.getInstance().getSelectedSatelliteSubId();
        if (mDatagramController.isReceivingDatagrams()) {
@@ -855,12 +848,10 @@ public class DatagramReceiver extends Handler {
    }

    private void handleRequestSetDeviceAlignedWithSatellite(boolean isAligned) {
        synchronized (mLock) {
        mIsAligned.set(isAligned);
        plogd("setDeviceAlignedWithSatellite: " + isAligned);
        if (isAligned && mIsDemoMode.get()) handleEventSatelliteAligned();
    }
    }

    private void startSatelliteAlignedTimer(DatagramReceiverHandlerRequest request) {
        if (isSatelliteAlignedTimerStarted()) {
@@ -933,7 +924,6 @@ public class DatagramReceiver extends Handler {
    }

    private void handleEventDatagramWaitForConnectedStateTimedOut() {
        synchronized (mLock) {
        if (mPendingPollSatelliteDatagramsRequest == null) {
            plogw("handleEventDatagramWaitForConnectedStateTimedOut: "
                    + "mPendingPollSatelliteDatagramsRequest is null");
@@ -960,7 +950,6 @@ public class DatagramReceiver extends Handler {
        callback.accept(SatelliteManager.SATELLITE_RESULT_NOT_REACHABLE);
        mPendingPollSatelliteDatagramsRequest = null;
    }
    }

    /**
     * Destroys this DatagramDispatcher. Used for tearing down static resources during testing.