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

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

Merge changes If539cf5d,I9765f1c9,I6d3007a1 am: f2babbbd am: cfe25a8b

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

Change-Id: I028d1f51c9685bcc7bcaabd0339b930aa46940c6
parents d219f865 cfe25a8b
Loading
Loading
Loading
Loading
+2 −1
Original line number Original line Diff line number Diff line
@@ -219,7 +219,7 @@ package android.net {
    method public void onAutomaticReconnectDisabled();
    method public void onAutomaticReconnectDisabled();
    method public void onBandwidthUpdateRequested();
    method public void onBandwidthUpdateRequested();
    method public void onNetworkCreated();
    method public void onNetworkCreated();
    method public void onNetworkDisconnected();
    method public void onNetworkDestroyed();
    method public void onNetworkUnwanted();
    method public void onNetworkUnwanted();
    method public void onQosCallbackRegistered(int, @NonNull android.net.QosFilter);
    method public void onQosCallbackRegistered(int, @NonNull android.net.QosFilter);
    method public void onQosCallbackUnregistered(int);
    method public void onQosCallbackUnregistered(int);
@@ -238,6 +238,7 @@ package android.net {
    method public final void sendQosSessionLost(int, int, int);
    method public final void sendQosSessionLost(int, int, int);
    method public final void sendSocketKeepaliveEvent(int, int);
    method public final void sendSocketKeepaliveEvent(int, int);
    method @Deprecated public void setLegacySubtype(int, @NonNull String);
    method @Deprecated public void setLegacySubtype(int, @NonNull String);
    method public void setTeardownDelayMs(@IntRange(from=0, to=0x1388) int);
    method public final void setUnderlyingNetworks(@Nullable java.util.List<android.net.Network>);
    method public final void setUnderlyingNetworks(@Nullable java.util.List<android.net.Network>);
    method public void unregister();
    method public void unregister();
    field public static final int VALIDATION_STATUS_NOT_VALID = 2; // 0x2
    field public static final int VALIDATION_STATUS_NOT_VALID = 2; // 0x2
+3 −1
Original line number Original line Diff line number Diff line
@@ -921,6 +921,7 @@ public class ConnectivityManager {
            BLOCKED_REASON_DOZE,
            BLOCKED_REASON_DOZE,
            BLOCKED_REASON_APP_STANDBY,
            BLOCKED_REASON_APP_STANDBY,
            BLOCKED_REASON_RESTRICTED_MODE,
            BLOCKED_REASON_RESTRICTED_MODE,
            BLOCKED_REASON_LOCKDOWN_VPN,
            BLOCKED_METERED_REASON_DATA_SAVER,
            BLOCKED_METERED_REASON_DATA_SAVER,
            BLOCKED_METERED_REASON_USER_RESTRICTED,
            BLOCKED_METERED_REASON_USER_RESTRICTED,
            BLOCKED_METERED_REASON_ADMIN_DISABLED,
            BLOCKED_METERED_REASON_ADMIN_DISABLED,
@@ -3659,7 +3660,8 @@ public class ConnectivityManager {
        public void onBlockedStatusChanged(@NonNull Network network, boolean blocked) {}
        public void onBlockedStatusChanged(@NonNull Network network, boolean blocked) {}


        /**
        /**
         * Called when access to the specified network is blocked or unblocked.
         * Called when access to the specified network is blocked or unblocked, or the reason for
         * access being blocked changes.
         *
         *
         * If a NetworkCallback object implements this method,
         * If a NetworkCallback object implements this method,
         * {@link #onBlockedStatusChanged(Network, boolean)} will not be called.
         * {@link #onBlockedStatusChanged(Network, boolean)} will not be called.
+1 −1
Original line number Original line Diff line number Diff line
@@ -47,5 +47,5 @@ oneway interface INetworkAgent {
    void onQosFilterCallbackRegistered(int qosCallbackId, in QosFilterParcelable filterParcel);
    void onQosFilterCallbackRegistered(int qosCallbackId, in QosFilterParcelable filterParcel);
    void onQosCallbackUnregistered(int qosCallbackId);
    void onQosCallbackUnregistered(int qosCallbackId);
    void onNetworkCreated();
    void onNetworkCreated();
    void onNetworkDisconnected();
    void onNetworkDestroyed();
}
}
+1 −0
Original line number Original line Diff line number Diff line
@@ -41,4 +41,5 @@ oneway interface INetworkAgentRegistry {
    void sendNrQosSessionAvailable(int callbackId, in QosSession session, in NrQosSessionAttributes attributes);
    void sendNrQosSessionAvailable(int callbackId, in QosSession session, in NrQosSessionAttributes attributes);
    void sendQosSessionLost(int qosCallbackId, in QosSession session);
    void sendQosSessionLost(int qosCallbackId, in QosSession session);
    void sendQosCallbackError(int qosCallbackId, int exceptionType);
    void sendQosCallbackError(int qosCallbackId, int exceptionType);
    void sendTeardownDelayMs(int teardownDelayMs);
}
}
+43 −7
Original line number Original line Diff line number Diff line
@@ -184,6 +184,20 @@ public abstract class NetworkAgent {
     */
     */
    public static final int EVENT_UNDERLYING_NETWORKS_CHANGED = BASE + 5;
    public static final int EVENT_UNDERLYING_NETWORKS_CHANGED = BASE + 5;


    /**
     * Sent by the NetworkAgent to ConnectivityService to pass the current value of the teardown
     * delay.
     * arg1 = teardown delay in milliseconds
     * @hide
     */
    public static final int EVENT_TEARDOWN_DELAY_CHANGED = BASE + 6;

    /**
     * The maximum value for the teardown delay, in milliseconds.
     * @hide
     */
    public static final int MAX_TEARDOWN_DELAY_MS = 5000;

    /**
    /**
     * Sent by ConnectivityService to the NetworkAgent to inform the agent of the
     * Sent by ConnectivityService to the NetworkAgent to inform the agent of the
     * networks status - whether we could use the network or could not, due to
     * networks status - whether we could use the network or could not, due to
@@ -197,7 +211,6 @@ public abstract class NetworkAgent {
     */
     */
    public static final int CMD_REPORT_NETWORK_STATUS = BASE + 7;
    public static final int CMD_REPORT_NETWORK_STATUS = BASE + 7;



    /**
    /**
     * Network validation suceeded.
     * Network validation suceeded.
     * Corresponds to {@link NetworkCapabilities.NET_CAPABILITY_VALIDATED}.
     * Corresponds to {@link NetworkCapabilities.NET_CAPABILITY_VALIDATED}.
@@ -376,7 +389,7 @@ public abstract class NetworkAgent {
     *
     *
     * @hide
     * @hide
     */
     */
    public static final int CMD_NETWORK_DISCONNECTED = BASE + 23;
    public static final int CMD_NETWORK_DESTROYED = BASE + 23;


    private static NetworkInfo getLegacyNetworkInfo(final NetworkAgentConfig config) {
    private static NetworkInfo getLegacyNetworkInfo(final NetworkAgentConfig config) {
        final NetworkInfo ni = new NetworkInfo(config.legacyType, config.legacySubType,
        final NetworkInfo ni = new NetworkInfo(config.legacyType, config.legacySubType,
@@ -581,8 +594,8 @@ public abstract class NetworkAgent {
                    onNetworkCreated();
                    onNetworkCreated();
                    break;
                    break;
                }
                }
                case CMD_NETWORK_DISCONNECTED: {
                case CMD_NETWORK_DESTROYED: {
                    onNetworkDisconnected();
                    onNetworkDestroyed();
                    break;
                    break;
                }
                }
            }
            }
@@ -732,8 +745,8 @@ public abstract class NetworkAgent {
        }
        }


        @Override
        @Override
        public void onNetworkDisconnected() {
        public void onNetworkDestroyed() {
            mHandler.sendMessage(mHandler.obtainMessage(CMD_NETWORK_DISCONNECTED));
            mHandler.sendMessage(mHandler.obtainMessage(CMD_NETWORK_DESTROYED));
        }
        }
    }
    }


@@ -850,6 +863,29 @@ public abstract class NetworkAgent {
        queueOrSendNetworkInfo(mNetworkInfo);
        queueOrSendNetworkInfo(mNetworkInfo);
    }
    }


    /**
     * Sets the value of the teardown delay.
     *
     * The teardown delay is the time between when the network disconnects and when the native
     * network corresponding to this {@code NetworkAgent} is destroyed. By default, the native
     * network is destroyed immediately. If {@code teardownDelayMs} is non-zero, then when this
     * network disconnects, the system will instead immediately mark the network as restricted
     * and unavailable to unprivileged apps, but will defer destroying the native network until the
     * teardown delay timer expires.
     *
     * The interfaces in use by this network will remain in use until the native network is
     * destroyed and cannot be reused until {@link #onNetworkDestroyed()} is called.
     *
     * This method may be called at any time while the network is connected. It has no effect if
     * the network is already disconnected and the teardown delay timer is running.
     *
     * @param teardownDelayMs the teardown delay to set, or 0 to disable teardown delay.
     */
    public void setTeardownDelayMs(
            @IntRange(from = 0, to = MAX_TEARDOWN_DELAY_MS) int teardownDelayMs) {
        queueOrSendMessage(reg -> reg.sendTeardownDelayMs(teardownDelayMs));
    }

    /**
    /**
     * Change the legacy subtype of this network agent.
     * Change the legacy subtype of this network agent.
     *
     *
@@ -1053,7 +1089,7 @@ public abstract class NetworkAgent {
    /**
    /**
     * Called when ConnectivityService has successfully destroy this NetworkAgent's native network.
     * Called when ConnectivityService has successfully destroy this NetworkAgent's native network.
     */
     */
    public void onNetworkDisconnected() {}
    public void onNetworkDestroyed() {}


    /**
    /**
     * Requests that the network hardware send the specified packet at the specified interval.
     * Requests that the network hardware send the specified packet at the specified interval.
Loading