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

Commit d51fc1fb authored by Treehugger Robot's avatar Treehugger Robot Committed by Automerger Merge Worker
Browse files

Merge "Fixed NPE when local or remote port range does not exist" am:...

Merge "Fixed NPE when local or remote port range does not exist" am: 4e6d04a6 am: f4e93e28 am: 7b25ef8e

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

Change-Id: I7aa822a2ada0a60bcae1433b4035421b94c8bd7d
parents f099b1b6 7b25ef8e
Loading
Loading
Loading
Loading
+18 −19
Original line number Diff line number Diff line
@@ -18,6 +18,7 @@ package android.telephony.data;

import android.annotation.IntDef;
import android.annotation.NonNull;
import android.annotation.Nullable;
import android.net.LinkAddress;
import android.os.Parcel;
import android.os.Parcelable;
@@ -35,11 +36,10 @@ import java.util.Objects;
 * @hide
 */
public final class QosBearerFilter implements Parcelable {

    private List<LinkAddress> localAddresses;
    private List<LinkAddress> remoteAddresses;
    private PortRange localPort;
    private PortRange remotePort;
    private @NonNull List<LinkAddress> localAddresses;
    private @NonNull List<LinkAddress> remoteAddresses;
    private @Nullable PortRange localPort;
    private @Nullable PortRange remotePort;

    /** @hide */
    @Retention(RetentionPolicy.SOURCE)
@@ -61,8 +61,7 @@ public final class QosBearerFilter implements Parcelable {
     */
    public static final int QOS_MAX_PORT = 65535; // android.hardware.radio.V1_6.QosPortRange.MIN;

    @QosProtocol
    private int protocol;
    private @QosProtocol int protocol;

    private int typeOfServiceMask;

@@ -85,8 +84,7 @@ public final class QosBearerFilter implements Parcelable {
    public static final int QOS_FILTER_DIRECTION_BIDIRECTIONAL =
            android.hardware.radio.V1_6.QosFilterDirection.BIDIRECTIONAL;

    @QosBearerFilterDirection
    private int filterDirection;
    private @QosBearerFilterDirection int filterDirection;

    /**
     * Specified the order in which the filter needs to be matched.
@@ -94,9 +92,10 @@ public final class QosBearerFilter implements Parcelable {
     */
    private int precedence;

    public QosBearerFilter(List<LinkAddress> localAddresses, List<LinkAddress> remoteAddresses,
            PortRange localPort, PortRange remotePort, int protocol, int tos,
            long flowLabel, long spi, int direction, int precedence) {
    public QosBearerFilter(@NonNull List<LinkAddress> localAddresses,
            @NonNull List<LinkAddress> remoteAddresses, @Nullable PortRange localPort,
            @Nullable PortRange remotePort, @QosProtocol int protocol, int tos, long flowLabel,
            long spi, @QosBearerFilterDirection int direction, int precedence) {
        this.localAddresses = new ArrayList<>();
        this.localAddresses.addAll(localAddresses);
        this.remoteAddresses = new ArrayList<>();
@@ -111,19 +110,19 @@ public final class QosBearerFilter implements Parcelable {
        this.precedence = precedence;
    }

    public List<LinkAddress> getLocalAddresses() {
    public @NonNull List<LinkAddress> getLocalAddresses() {
        return localAddresses;
    }

    public List<LinkAddress> getRemoteAddresses() {
    public @NonNull List<LinkAddress> getRemoteAddresses() {
        return remoteAddresses;
    }

    public PortRange getLocalPortRange() {
    public @Nullable PortRange getLocalPortRange() {
        return localPort;
    }

    public PortRange getRemotePortRange() {
    public @Nullable PortRange getRemotePortRange() {
        return remotePort;
    }

@@ -245,8 +244,8 @@ public final class QosBearerFilter implements Parcelable {
                && localAddresses.containsAll(other.localAddresses)
                && remoteAddresses.size() == other.remoteAddresses.size()
                && remoteAddresses.containsAll(other.remoteAddresses)
                && localPort.equals(other.localPort)
                && remotePort.equals(other.remotePort)
                && Objects.equals(localPort, other.localPort)
                && Objects.equals(remotePort, other.remotePort)
                && protocol == other.protocol
                && typeOfServiceMask == other.typeOfServiceMask
                && flowLabel == other.flowLabel