Merge "Fixed NPE when local or remote port range does not exist" am: 4e6d04a608
Original change: https://android-review.googlesource.com/c/platform/frameworks/base/+/1944225 Change-Id: If75d5ec910d00998142241f5a67c0c232885210e
This commit is contained in:
@@ -18,6 +18,7 @@ package android.telephony.data;
|
|||||||
|
|
||||||
import android.annotation.IntDef;
|
import android.annotation.IntDef;
|
||||||
import android.annotation.NonNull;
|
import android.annotation.NonNull;
|
||||||
|
import android.annotation.Nullable;
|
||||||
import android.net.LinkAddress;
|
import android.net.LinkAddress;
|
||||||
import android.os.Parcel;
|
import android.os.Parcel;
|
||||||
import android.os.Parcelable;
|
import android.os.Parcelable;
|
||||||
@@ -35,11 +36,10 @@ import java.util.Objects;
|
|||||||
* @hide
|
* @hide
|
||||||
*/
|
*/
|
||||||
public final class QosBearerFilter implements Parcelable {
|
public final class QosBearerFilter implements Parcelable {
|
||||||
|
private @NonNull List<LinkAddress> localAddresses;
|
||||||
private List<LinkAddress> localAddresses;
|
private @NonNull List<LinkAddress> remoteAddresses;
|
||||||
private List<LinkAddress> remoteAddresses;
|
private @Nullable PortRange localPort;
|
||||||
private PortRange localPort;
|
private @Nullable PortRange remotePort;
|
||||||
private PortRange remotePort;
|
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
@Retention(RetentionPolicy.SOURCE)
|
@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;
|
public static final int QOS_MAX_PORT = 65535; // android.hardware.radio.V1_6.QosPortRange.MIN;
|
||||||
|
|
||||||
@QosProtocol
|
private @QosProtocol int protocol;
|
||||||
private int protocol;
|
|
||||||
|
|
||||||
private int typeOfServiceMask;
|
private int typeOfServiceMask;
|
||||||
|
|
||||||
@@ -85,8 +84,7 @@ public final class QosBearerFilter implements Parcelable {
|
|||||||
public static final int QOS_FILTER_DIRECTION_BIDIRECTIONAL =
|
public static final int QOS_FILTER_DIRECTION_BIDIRECTIONAL =
|
||||||
android.hardware.radio.V1_6.QosFilterDirection.BIDIRECTIONAL;
|
android.hardware.radio.V1_6.QosFilterDirection.BIDIRECTIONAL;
|
||||||
|
|
||||||
@QosBearerFilterDirection
|
private @QosBearerFilterDirection int filterDirection;
|
||||||
private int filterDirection;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Specified the order in which the filter needs to be matched.
|
* Specified the order in which the filter needs to be matched.
|
||||||
@@ -94,9 +92,10 @@ public final class QosBearerFilter implements Parcelable {
|
|||||||
*/
|
*/
|
||||||
private int precedence;
|
private int precedence;
|
||||||
|
|
||||||
public QosBearerFilter(List<LinkAddress> localAddresses, List<LinkAddress> remoteAddresses,
|
public QosBearerFilter(@NonNull List<LinkAddress> localAddresses,
|
||||||
PortRange localPort, PortRange remotePort, int protocol, int tos,
|
@NonNull List<LinkAddress> remoteAddresses, @Nullable PortRange localPort,
|
||||||
long flowLabel, long spi, int direction, int precedence) {
|
@Nullable PortRange remotePort, @QosProtocol int protocol, int tos, long flowLabel,
|
||||||
|
long spi, @QosBearerFilterDirection int direction, int precedence) {
|
||||||
this.localAddresses = new ArrayList<>();
|
this.localAddresses = new ArrayList<>();
|
||||||
this.localAddresses.addAll(localAddresses);
|
this.localAddresses.addAll(localAddresses);
|
||||||
this.remoteAddresses = new ArrayList<>();
|
this.remoteAddresses = new ArrayList<>();
|
||||||
@@ -111,19 +110,19 @@ public final class QosBearerFilter implements Parcelable {
|
|||||||
this.precedence = precedence;
|
this.precedence = precedence;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<LinkAddress> getLocalAddresses() {
|
public @NonNull List<LinkAddress> getLocalAddresses() {
|
||||||
return localAddresses;
|
return localAddresses;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<LinkAddress> getRemoteAddresses() {
|
public @NonNull List<LinkAddress> getRemoteAddresses() {
|
||||||
return remoteAddresses;
|
return remoteAddresses;
|
||||||
}
|
}
|
||||||
|
|
||||||
public PortRange getLocalPortRange() {
|
public @Nullable PortRange getLocalPortRange() {
|
||||||
return localPort;
|
return localPort;
|
||||||
}
|
}
|
||||||
|
|
||||||
public PortRange getRemotePortRange() {
|
public @Nullable PortRange getRemotePortRange() {
|
||||||
return remotePort;
|
return remotePort;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -245,8 +244,8 @@ public final class QosBearerFilter implements Parcelable {
|
|||||||
&& localAddresses.containsAll(other.localAddresses)
|
&& localAddresses.containsAll(other.localAddresses)
|
||||||
&& remoteAddresses.size() == other.remoteAddresses.size()
|
&& remoteAddresses.size() == other.remoteAddresses.size()
|
||||||
&& remoteAddresses.containsAll(other.remoteAddresses)
|
&& remoteAddresses.containsAll(other.remoteAddresses)
|
||||||
&& localPort.equals(other.localPort)
|
&& Objects.equals(localPort, other.localPort)
|
||||||
&& remotePort.equals(other.remotePort)
|
&& Objects.equals(remotePort, other.remotePort)
|
||||||
&& protocol == other.protocol
|
&& protocol == other.protocol
|
||||||
&& typeOfServiceMask == other.typeOfServiceMask
|
&& typeOfServiceMask == other.typeOfServiceMask
|
||||||
&& flowLabel == other.flowLabel
|
&& flowLabel == other.flowLabel
|
||||||
|
|||||||
Reference in New Issue
Block a user