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

Commit 7d1f8bb5 authored by Lorenzo Colitti's avatar Lorenzo Colitti Committed by Automerger Merge Worker
Browse files

Merge "More cleanly separate requests and listens." am: 7a4c2485 am:...

Merge "More cleanly separate requests and listens." am: 7a4c2485 am: 80fbe908 am: 580ed937 am: 9a95eef4

Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1565202

MUST ONLY BE SUBMITTED BY AUTOMERGER

Change-Id: I3b780f81d0a10d8bb3ee011aa3820314cd2ea9df
parents 59550eaa 9a95eef4
Loading
Loading
Loading
Loading
+1 −19
Original line number Original line Diff line number Diff line
@@ -435,25 +435,7 @@ public class NetworkRequest implements Parcelable {
     * @hide
     * @hide
     */
     */
    public boolean isRequest() {
    public boolean isRequest() {
        return isForegroundRequest() || isBackgroundRequest();
        return type == Type.REQUEST || type == Type.BACKGROUND_REQUEST;
    }

    /**
     * Returns true iff. the contained NetworkRequest is one that:
     *
     *     - should be associated with at most one satisfying network
     *       at a time;
     *
     *     - should cause a network to be kept up and in the foreground if
     *       it is the best network which can satisfy the NetworkRequest.
     *
     * For full detail of how isRequest() is used for pairing Networks with
     * NetworkRequests read rematchNetworkAndRequests().
     *
     * @hide
     */
    public boolean isForegroundRequest() {
        return type == Type.TRACK_DEFAULT || type == Type.REQUEST;
    }
    }


    /**
    /**
+9 −12
Original line number Original line Diff line number Diff line
@@ -3589,10 +3589,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
        // As this request was not satisfied on rematch and thus never had any scores sent to the
        // As this request was not satisfied on rematch and thus never had any scores sent to the
        // factories, send null now for each request of type REQUEST.
        // factories, send null now for each request of type REQUEST.
        for (final NetworkRequest req : nri.mRequests) {
        for (final NetworkRequest req : nri.mRequests) {
            if (!req.isRequest()) {
            if (req.isRequest()) sendUpdatedScoreToFactories(req, null);
                continue;
            }
            sendUpdatedScoreToFactories(req, null);
        }
        }
    }
    }


@@ -3769,7 +3766,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
        mNetworkRequestInfoLogs.log("RELEASE " + nri);
        mNetworkRequestInfoLogs.log("RELEASE " + nri);


        if (null != nri.getActiveRequest()) {
        if (null != nri.getActiveRequest()) {
            if (nri.getActiveRequest().isRequest()) {
            if (!nri.getActiveRequest().isListen()) {
                removeSatisfiedNetworkRequestFromNetwork(nri);
                removeSatisfiedNetworkRequestFromNetwork(nri);
            } else {
            } else {
                nri.setSatisfier(null, null);
                nri.setSatisfier(null, null);
@@ -5517,7 +5514,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
        }
        }


        // The network currently satisfying this NRI. Only one request in an NRI can have a
        // The network currently satisfying this NRI. Only one request in an NRI can have a
        // satisfier. For non-multilayer requests, only REQUEST-type requests can have a satisfier.
        // satisfier. For non-multilayer requests, only non-listen requests can have a satisfier.
        @Nullable
        @Nullable
        private NetworkAgentInfo mSatisfier;
        private NetworkAgentInfo mSatisfier;
        NetworkAgentInfo getSatisfier() {
        NetworkAgentInfo getSatisfier() {
@@ -7005,8 +7002,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
    private void sendUpdatedScoreToFactories(NetworkAgentInfo nai) {
    private void sendUpdatedScoreToFactories(NetworkAgentInfo nai) {
        for (int i = 0; i < nai.numNetworkRequests(); i++) {
        for (int i = 0; i < nai.numNetworkRequests(); i++) {
            NetworkRequest nr = nai.requestAt(i);
            NetworkRequest nr = nai.requestAt(i);
            // Don't send listening requests to factories. b/17393458
            // Don't send listening or track default request to factories. b/17393458
            if (nr.isListen()) continue;
            if (!nr.isRequest()) continue;
            sendUpdatedScoreToFactories(nr, nai);
            sendUpdatedScoreToFactories(nr, nai);
        }
        }
    }
    }
@@ -7068,10 +7065,10 @@ public class ConnectivityService extends IConnectivityManager.Stub
        ensureRunningOnConnectivityServiceThread();
        ensureRunningOnConnectivityServiceThread();
        for (final NetworkRequestInfo nri : getNrisFromGlobalRequests()) {
        for (final NetworkRequestInfo nri : getNrisFromGlobalRequests()) {
            for (final NetworkRequest req : nri.mRequests) {
            for (final NetworkRequest req : nri.mRequests) {
                if (req.isListen() && nri.getActiveRequest() == req) {
                if (!req.isRequest() && nri.getActiveRequest() == req) {
                    break;
                    break;
                }
                }
                if (req.isListen()) {
                if (!req.isRequest()) {
                    continue;
                    continue;
                }
                }
                // Only set the nai for the request it is satisfying.
                // Only set the nai for the request it is satisfying.
@@ -7221,8 +7218,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
        if (nai.numRequestNetworkRequests() != 0) {
        if (nai.numRequestNetworkRequests() != 0) {
            for (int i = 0; i < nai.numNetworkRequests(); i++) {
            for (int i = 0; i < nai.numNetworkRequests(); i++) {
                NetworkRequest nr = nai.requestAt(i);
                NetworkRequest nr = nai.requestAt(i);
                // Ignore listening requests.
                // Ignore listening and track default requests.
                if (nr.isListen()) continue;
                if (!nr.isRequest()) continue;
                loge("Dead network still had at least " + nr);
                loge("Dead network still had at least " + nr);
                break;
                break;
            }
            }