summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSarah Chin <sarahchin@google.com>2021-09-29 12:13:27 -0700
committerSarah Chin <sarahchin@google.com>2021-10-06 10:14:30 +0000
commit80b8c7f128026f22c75fec17e49948212ecefb33 (patch)
tree1ddd11b94d11e1bff9a5c5b3e20554ed816424f6
parent8dafa60a2fcf8beec61b5ddbc7729b861865b05c (diff)
downloadbase-80b8c7f128026f22c75fec17e49948212ecefb33.tar.gz
Update constructors for IRadioData classes
Test: atest FrameworksTelephonyTests Bug: 198331673 Change-Id: I8480df1164548dde491c6ae6251bbc2725c3eadf Merged-In: I8480df1164548dde491c6ae6251bbc2725c3eadf
-rw-r--r--Android.bp6
-rw-r--r--telephony/java/android/telephony/data/EpsQos.java12
-rw-r--r--telephony/java/android/telephony/data/NetworkSlicingConfig.java36
-rw-r--r--telephony/java/android/telephony/data/NrQos.java11
-rw-r--r--telephony/java/android/telephony/data/Qos.java25
-rw-r--r--telephony/java/android/telephony/data/QosBearerFilter.java116
-rw-r--r--telephony/java/android/telephony/data/QosBearerSession.java22
-rw-r--r--telephony/java/android/telephony/data/RouteSelectionDescriptor.java30
-rw-r--r--telephony/java/android/telephony/data/UrspRule.java49
-rw-r--r--telephony/java/com/android/internal/telephony/RILConstants.java2
10 files changed, 45 insertions, 264 deletions
diff --git a/Android.bp b/Android.bp
index 93209d833bd8..d976b9172602 100644
--- a/Android.bp
+++ b/Android.bp
@@ -244,6 +244,12 @@ java_library {
"android.hardware.radio-V1.4-java",
"android.hardware.radio-V1.5-java",
"android.hardware.radio-V1.6-java",
+ "android.hardware.radio.data-V1-java",
+ "android.hardware.radio.messaging-V1-java",
+ "android.hardware.radio.modem-V1-java",
+ "android.hardware.radio.network-V1-java",
+ "android.hardware.radio.sim-V1-java",
+ "android.hardware.radio.voice-V1-java",
"android.hardware.thermal-V1.0-java-constants",
"android.hardware.thermal-V1.0-java",
"android.hardware.thermal-V1.1-java",
diff --git a/telephony/java/android/telephony/data/EpsQos.java b/telephony/java/android/telephony/data/EpsQos.java
index 22c8b0a0a74f..64c956f22872 100644
--- a/telephony/java/android/telephony/data/EpsQos.java
+++ b/telephony/java/android/telephony/data/EpsQos.java
@@ -32,15 +32,9 @@ public final class EpsQos extends Qos implements Parcelable {
int qosClassId;
- public EpsQos() {
- super(Qos.QOS_TYPE_EPS,
- new android.hardware.radio.V1_6.QosBandwidth(),
- new android.hardware.radio.V1_6.QosBandwidth());
- }
-
- public EpsQos(@NonNull android.hardware.radio.V1_6.EpsQos qos) {
- super(Qos.QOS_TYPE_EPS, qos.downlink, qos.uplink);
- qosClassId = qos.qci;
+ public EpsQos(QosBandwidth downlink, QosBandwidth uplink, int qosClassId) {
+ super(Qos.QOS_TYPE_EPS, downlink, uplink);
+ this.qosClassId = qosClassId;
}
private EpsQos(Parcel source) {
diff --git a/telephony/java/android/telephony/data/NetworkSlicingConfig.java b/telephony/java/android/telephony/data/NetworkSlicingConfig.java
index dec787f40ff2..024a3f576a7b 100644
--- a/telephony/java/android/telephony/data/NetworkSlicingConfig.java
+++ b/telephony/java/android/telephony/data/NetworkSlicingConfig.java
@@ -33,39 +33,15 @@ public final class NetworkSlicingConfig implements Parcelable {
private final List<NetworkSliceInfo> mSliceInfo;
public NetworkSlicingConfig() {
- mUrspRules = new ArrayList<UrspRule>();
- mSliceInfo = new ArrayList<NetworkSliceInfo>();
+ mUrspRules = new ArrayList<>();
+ mSliceInfo = new ArrayList<>();
}
/** @hide */
- public NetworkSlicingConfig(android.hardware.radio.V1_6.SlicingConfig sc) {
- this(sc.urspRules, sc.sliceInfo);
- }
-
- /** @hide */
- public NetworkSlicingConfig(List<android.hardware.radio.V1_6.UrspRule> urspRules,
- List<android.hardware.radio.V1_6.SliceInfo> sliceInfo) {
- mUrspRules = new ArrayList<UrspRule>();
- for (android.hardware.radio.V1_6.UrspRule ur : urspRules) {
- mUrspRules.add(new UrspRule(ur.precedence, ur.trafficDescriptors,
- ur.routeSelectionDescriptor));
- }
- mSliceInfo = new ArrayList<NetworkSliceInfo>();
- for (android.hardware.radio.V1_6.SliceInfo si : sliceInfo) {
- mSliceInfo.add(sliceInfoBuilder(si));
- }
- }
-
- private NetworkSliceInfo sliceInfoBuilder(android.hardware.radio.V1_6.SliceInfo si) {
- NetworkSliceInfo.Builder builder = new NetworkSliceInfo.Builder()
- .setSliceServiceType(si.sst)
- .setMappedHplmnSliceServiceType(si.mappedHplmnSst);
- if (si.sliceDifferentiator != NetworkSliceInfo.SLICE_DIFFERENTIATOR_NO_SLICE) {
- builder
- .setSliceDifferentiator(si.sliceDifferentiator)
- .setMappedHplmnSliceDifferentiator(si.mappedHplmnSD);
- }
- return builder.build();
+ public NetworkSlicingConfig(List<UrspRule> urspRules, List<NetworkSliceInfo> sliceInfo) {
+ this();
+ mUrspRules.addAll(urspRules);
+ mSliceInfo.addAll(sliceInfo);
}
/** @hide */
diff --git a/telephony/java/android/telephony/data/NrQos.java b/telephony/java/android/telephony/data/NrQos.java
index fe124ac15393..a24d5fa5c278 100644
--- a/telephony/java/android/telephony/data/NrQos.java
+++ b/telephony/java/android/telephony/data/NrQos.java
@@ -32,11 +32,12 @@ public final class NrQos extends Qos implements Parcelable {
int fiveQi;
int averagingWindowMs;
- public NrQos(@NonNull android.hardware.radio.V1_6.NrQos qos) {
- super(Qos.QOS_TYPE_NR, qos.downlink, qos.uplink);
- fiveQi = qos.fiveQi;
- qosFlowId = qos.qfi;
- averagingWindowMs = qos.averagingWindowMs;
+ public NrQos(QosBandwidth downlink, QosBandwidth uplink, int qosFlowId, int fiveQi,
+ int averagingWindowMs) {
+ super(Qos.QOS_TYPE_NR, downlink, uplink);
+ this.qosFlowId = qosFlowId;
+ this.fiveQi = fiveQi;
+ this.averagingWindowMs = averagingWindowMs;
}
private NrQos(Parcel source) {
diff --git a/telephony/java/android/telephony/data/Qos.java b/telephony/java/android/telephony/data/Qos.java
index c286c6217450..8c437c83e196 100644
--- a/telephony/java/android/telephony/data/Qos.java
+++ b/telephony/java/android/telephony/data/Qos.java
@@ -48,12 +48,10 @@ public abstract class Qos {
final QosBandwidth downlink;
final QosBandwidth uplink;
- Qos(int type,
- @NonNull android.hardware.radio.V1_6.QosBandwidth downlink,
- @NonNull android.hardware.radio.V1_6.QosBandwidth uplink) {
+ Qos(int type, QosBandwidth downlink, QosBandwidth uplink) {
this.type = type;
- this.downlink = new QosBandwidth(downlink.maxBitrateKbps, downlink.guaranteedBitrateKbps);
- this.uplink = new QosBandwidth(uplink.maxBitrateKbps, uplink.guaranteedBitrateKbps);
+ this.downlink = downlink;
+ this.uplink = uplink;
}
public QosBandwidth getDownlinkBandwidth() {
@@ -68,10 +66,7 @@ public abstract class Qos {
int maxBitrateKbps;
int guaranteedBitrateKbps;
- QosBandwidth() {
- }
-
- QosBandwidth(int maxBitrateKbps, int guaranteedBitrateKbps) {
+ public QosBandwidth(int maxBitrateKbps, int guaranteedBitrateKbps) {
this.maxBitrateKbps = maxBitrateKbps;
this.guaranteedBitrateKbps = guaranteedBitrateKbps;
}
@@ -158,18 +153,6 @@ public abstract class Qos {
}
/** @hide */
- public static @NonNull Qos create(@NonNull android.hardware.radio.V1_6.Qos qos) {
- switch (qos.getDiscriminator()) {
- case android.hardware.radio.V1_6.Qos.hidl_discriminator.eps:
- return new EpsQos(qos.eps());
- case android.hardware.radio.V1_6.Qos.hidl_discriminator.nr:
- return new NrQos(qos.nr());
- default:
- return null;
- }
- }
-
- /** @hide */
public @QosType int getType() {
return type;
}
diff --git a/telephony/java/android/telephony/data/QosBearerFilter.java b/telephony/java/android/telephony/data/QosBearerFilter.java
index 54930d0266b7..5f5762b2235b 100644
--- a/telephony/java/android/telephony/data/QosBearerFilter.java
+++ b/telephony/java/android/telephony/data/QosBearerFilter.java
@@ -18,15 +18,12 @@ package android.telephony.data;
import android.annotation.IntDef;
import android.annotation.NonNull;
-import android.net.InetAddresses;
import android.net.LinkAddress;
import android.os.Parcel;
import android.os.Parcelable;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
-import java.net.InetAddress;
-import java.net.Inet4Address;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -97,20 +94,13 @@ public final class QosBearerFilter implements Parcelable {
*/
private int precedence;
- QosBearerFilter() {
- localAddresses = new ArrayList<>();
- remoteAddresses = new ArrayList<>();
- localPort = new PortRange();
- remotePort = new PortRange();
- protocol = QOS_PROTOCOL_UNSPECIFIED;
- filterDirection = QOS_FILTER_DIRECTION_BIDIRECTIONAL;
- }
-
public QosBearerFilter(List<LinkAddress> localAddresses, List<LinkAddress> remoteAddresses,
PortRange localPort, PortRange remotePort, int protocol, int tos,
long flowLabel, long spi, int direction, int precedence) {
- this.localAddresses = localAddresses;
- this.remoteAddresses = remoteAddresses;
+ this.localAddresses = new ArrayList<>();
+ this.localAddresses.addAll(localAddresses);
+ this.remoteAddresses = new ArrayList<>();
+ this.remoteAddresses.addAll(remoteAddresses);
this.localPort = localPort;
this.remotePort = remotePort;
this.protocol = protocol;
@@ -141,82 +131,10 @@ public final class QosBearerFilter implements Parcelable {
return precedence;
}
- /** @hide */
- public static @NonNull QosBearerFilter create(
- @NonNull android.hardware.radio.V1_6.QosFilter qosFilter) {
- QosBearerFilter ret = new QosBearerFilter();
-
- String[] localAddresses = qosFilter.localAddresses.stream().toArray(String[]::new);
- if (localAddresses != null) {
- for (String address : localAddresses) {
- ret.localAddresses.add(createLinkAddressFromString(address));
- }
- }
-
- String[] remoteAddresses = qosFilter.remoteAddresses.stream().toArray(String[]::new);
- if (remoteAddresses != null) {
- for (String address : remoteAddresses) {
- ret.remoteAddresses.add(createLinkAddressFromString(address));
- }
- }
-
- if (qosFilter.localPort != null) {
- if (qosFilter.localPort.getDiscriminator()
- == android.hardware.radio.V1_6.MaybePort.hidl_discriminator.range) {
- final android.hardware.radio.V1_6.PortRange portRange = qosFilter.localPort.range();
- ret.localPort.start = portRange.start;
- ret.localPort.end = portRange.end;
- }
- }
-
- if (qosFilter.remotePort != null) {
- if (qosFilter.remotePort.getDiscriminator()
- == android.hardware.radio.V1_6.MaybePort.hidl_discriminator.range) {
- final android.hardware.radio.V1_6.PortRange portRange
- = qosFilter.remotePort.range();
- ret.remotePort.start = portRange.start;
- ret.remotePort.end = portRange.end;
- }
- }
-
- ret.protocol = qosFilter.protocol;
-
- if (qosFilter.tos != null) {
- if (qosFilter.tos.getDiscriminator()
- == android.hardware.radio.V1_6.QosFilter.TypeOfService.hidl_discriminator.value) {
- ret.typeOfServiceMask = qosFilter.tos.value();
- }
- }
-
- if (qosFilter.flowLabel != null) {
- if (qosFilter.flowLabel.getDiscriminator()
- == android.hardware.radio.V1_6.QosFilter.Ipv6FlowLabel.hidl_discriminator.value) {
- ret.flowLabel = qosFilter.flowLabel.value();
- }
- }
-
- if (qosFilter.spi != null) {
- if (qosFilter.spi.getDiscriminator()
- == android.hardware.radio.V1_6.QosFilter.IpsecSpi.hidl_discriminator.value) {
- ret.securityParameterIndex = qosFilter.spi.value();
- }
- }
-
- ret.filterDirection = qosFilter.direction;
- ret.precedence = qosFilter.precedence;
-
- return ret;
- }
-
public static class PortRange implements Parcelable {
int start;
int end;
- PortRange() {
- start = -1;
- end = -1;
- }
-
private PortRange(Parcel source) {
start = source.readInt();
end = source.readInt();
@@ -337,32 +255,6 @@ public final class QosBearerFilter implements Parcelable {
&& precedence == other.precedence;
}
- private static LinkAddress createLinkAddressFromString(String addressString) {
- addressString = addressString.trim();
- InetAddress address = null;
- int prefixLength = -1;
- try {
- String[] pieces = addressString.split("/", 2);
- address = InetAddresses.parseNumericAddress(pieces[0]);
- if (pieces.length == 1) {
- prefixLength = (address instanceof Inet4Address) ? 32 : 128;
- } else if (pieces.length == 2) {
- prefixLength = Integer.parseInt(pieces[1]);
- }
- } catch (NullPointerException e) { // Null string.
- } catch (ArrayIndexOutOfBoundsException e) { // No prefix length.
- } catch (NumberFormatException e) { // Non-numeric prefix.
- } catch (IllegalArgumentException e) { // Invalid IP address.
- }
-
- if (address == null || prefixLength == -1) {
- throw new IllegalArgumentException("Invalid link address " + addressString);
- }
-
- return new LinkAddress(address, prefixLength, 0, 0,
- LinkAddress.LIFETIME_UNKNOWN, LinkAddress.LIFETIME_UNKNOWN);
- }
-
private QosBearerFilter(Parcel source) {
localAddresses = new ArrayList<>();
source.readList(localAddresses, LinkAddress.class.getClassLoader());
diff --git a/telephony/java/android/telephony/data/QosBearerSession.java b/telephony/java/android/telephony/data/QosBearerSession.java
index 30effc9273d7..ffeb08a17584 100644
--- a/telephony/java/android/telephony/data/QosBearerSession.java
+++ b/telephony/java/android/telephony/data/QosBearerSession.java
@@ -36,10 +36,12 @@ public final class QosBearerSession implements Parcelable{
final Qos qos;
final List<QosBearerFilter> qosBearerFilterList;
- public QosBearerSession(int qosBearerSessionId, @NonNull Qos qos, @NonNull List<QosBearerFilter> qosBearerFilterList) {
+ public QosBearerSession(int qosBearerSessionId, @NonNull Qos qos,
+ @NonNull List<QosBearerFilter> qosBearerFilterList) {
this.qosBearerSessionId = qosBearerSessionId;
this.qos = qos;
- this.qosBearerFilterList = qosBearerFilterList;
+ this.qosBearerFilterList = new ArrayList<>();
+ this.qosBearerFilterList.addAll(qosBearerFilterList);
}
private QosBearerSession(Parcel source) {
@@ -72,22 +74,6 @@ public final class QosBearerSession implements Parcelable{
dest.writeList(qosBearerFilterList);
}
- public static @NonNull QosBearerSession create(
- @NonNull android.hardware.radio.V1_6.QosSession qosSession) {
- List<QosBearerFilter> qosBearerFilters = new ArrayList<>();
-
- if (qosSession.qosFilters != null) {
- for (android.hardware.radio.V1_6.QosFilter filter : qosSession.qosFilters) {
- qosBearerFilters.add(QosBearerFilter.create(filter));
- }
- }
-
- return new QosBearerSession(
- qosSession.qosSessionId,
- Qos.create(qosSession.qos),
- qosBearerFilters);
- }
-
@Override
public int describeContents() {
return 0;
diff --git a/telephony/java/android/telephony/data/RouteSelectionDescriptor.java b/telephony/java/android/telephony/data/RouteSelectionDescriptor.java
index c2457f21f5ef..b3b846441bb9 100644
--- a/telephony/java/android/telephony/data/RouteSelectionDescriptor.java
+++ b/telephony/java/android/telephony/data/RouteSelectionDescriptor.java
@@ -120,43 +120,23 @@ public final class RouteSelectionDescriptor implements Parcelable {
private final List<String> mDnn;
/** @hide */
- RouteSelectionDescriptor(android.hardware.radio.V1_6.RouteSelectionDescriptor rsd) {
- this(rsd.precedence, rsd.sessionType.value(), rsd.sscMode.value(), rsd.sliceInfo,
- rsd.dnn);
- }
-
- /** @hide */
public RouteSelectionDescriptor(int precedence, int sessionType, int sscMode,
- List<android.hardware.radio.V1_6.SliceInfo> sliceInfo, List<String> dnn) {
+ List<NetworkSliceInfo> sliceInfo, List<String> dnn) {
mPrecedence = precedence;
mSessionType = sessionType;
mSscMode = sscMode;
- mSliceInfo = new ArrayList<NetworkSliceInfo>();
- for (android.hardware.radio.V1_6.SliceInfo si : sliceInfo) {
- mSliceInfo.add(sliceInfoBuilder(si));
- }
- mDnn = new ArrayList<String>();
+ mSliceInfo = new ArrayList<>();
+ mSliceInfo.addAll(sliceInfo);
+ mDnn = new ArrayList<>();
mDnn.addAll(dnn);
}
- private NetworkSliceInfo sliceInfoBuilder(android.hardware.radio.V1_6.SliceInfo si) {
- NetworkSliceInfo.Builder builder = new NetworkSliceInfo.Builder()
- .setSliceServiceType(si.sst)
- .setMappedHplmnSliceServiceType(si.mappedHplmnSst);
- if (si.sliceDifferentiator != NetworkSliceInfo.SLICE_DIFFERENTIATOR_NO_SLICE) {
- builder
- .setSliceDifferentiator(si.sliceDifferentiator)
- .setMappedHplmnSliceDifferentiator(si.mappedHplmnSD);
- }
- return builder.build();
- }
-
private RouteSelectionDescriptor(Parcel p) {
mPrecedence = p.readInt();
mSessionType = p.readInt();
mSscMode = p.readInt();
mSliceInfo = p.createTypedArrayList(NetworkSliceInfo.CREATOR);
- mDnn = new ArrayList<String>();
+ mDnn = new ArrayList<>();
p.readStringList(mDnn);
}
diff --git a/telephony/java/android/telephony/data/UrspRule.java b/telephony/java/android/telephony/data/UrspRule.java
index fbe199975b00..afbd429973f2 100644
--- a/telephony/java/android/telephony/data/UrspRule.java
+++ b/telephony/java/android/telephony/data/UrspRule.java
@@ -19,12 +19,9 @@ package android.telephony.data;
import android.annotation.IntRange;
import android.annotation.NonNull;
import android.annotation.Nullable;
-import android.hardware.radio.V1_6.OptionalDnn;
-import android.hardware.radio.V1_6.OptionalOsAppId;
import android.os.Parcel;
import android.os.Parcelable;
-
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -52,48 +49,14 @@ public final class UrspRule implements Parcelable {
private final List<TrafficDescriptor> mTrafficDescriptors;
private final List<RouteSelectionDescriptor> mRouteSelectionDescriptor;
- UrspRule(android.hardware.radio.V1_6.UrspRule ur) {
- this(ur.precedence, ur.trafficDescriptors, ur.routeSelectionDescriptor);
- }
-
/** @hide */
- public UrspRule(int precedence,
- List<android.hardware.radio.V1_6.TrafficDescriptor> trafficDescriptors,
- List<android.hardware.radio.V1_6.RouteSelectionDescriptor> routeSelectionDescriptor) {
+ public UrspRule(int precedence, List<TrafficDescriptor> trafficDescriptors,
+ List<RouteSelectionDescriptor> routeSelectionDescriptor) {
mPrecedence = precedence;
- mTrafficDescriptors = new ArrayList<TrafficDescriptor>();
- for (android.hardware.radio.V1_6.TrafficDescriptor td : trafficDescriptors) {
- mTrafficDescriptors.add(convertToTrafficDescriptor(td));
- }
- mRouteSelectionDescriptor = new ArrayList<RouteSelectionDescriptor>();
- for (android.hardware.radio.V1_6.RouteSelectionDescriptor rsd : routeSelectionDescriptor) {
- mRouteSelectionDescriptor.add(new RouteSelectionDescriptor(rsd));
- }
- }
-
- /** Convert an ArrayList of Bytes to an exactly-sized primitive array */
- private byte[] arrayListToPrimitiveArray(ArrayList<Byte> bytes) {
- byte[] ret = new byte[bytes.size()];
- for (int i = 0; i < ret.length; i++) {
- ret[i] = bytes.get(i);
- }
- return ret;
- }
-
- private TrafficDescriptor convertToTrafficDescriptor(
- android.hardware.radio.V1_6.TrafficDescriptor td) {
- String dnn = td.dnn.getDiscriminator() == OptionalDnn.hidl_discriminator.noinit
- ? null : td.dnn.value();
- byte[] osAppId = td.osAppId.getDiscriminator() == OptionalOsAppId.hidl_discriminator.noinit
- ? null : arrayListToPrimitiveArray(td.osAppId.value().osAppId);
- TrafficDescriptor.Builder builder = new TrafficDescriptor.Builder();
- if (dnn != null) {
- builder.setDataNetworkName(dnn);
- }
- if (osAppId != null) {
- builder.setOsAppId(osAppId);
- }
- return builder.build();
+ mTrafficDescriptors = new ArrayList<>();
+ mTrafficDescriptors.addAll(trafficDescriptors);
+ mRouteSelectionDescriptor = new ArrayList<>();
+ mRouteSelectionDescriptor.addAll(routeSelectionDescriptor);
}
private UrspRule(Parcel p) {
diff --git a/telephony/java/com/android/internal/telephony/RILConstants.java b/telephony/java/com/android/internal/telephony/RILConstants.java
index fe8e6715fe35..b73f8271da1f 100644
--- a/telephony/java/com/android/internal/telephony/RILConstants.java
+++ b/telephony/java/com/android/internal/telephony/RILConstants.java
@@ -566,7 +566,7 @@ public interface RILConstants {
int RIL_UNSOL_RINGBACK_TONE = 1029;
int RIL_UNSOL_RESEND_INCALL_MUTE = 1030;
int RIL_UNSOL_CDMA_SUBSCRIPTION_SOURCE_CHANGED = 1031;
- int RIL_UNSOl_CDMA_PRL_CHANGED = 1032;
+ int RIL_UNSOL_CDMA_PRL_CHANGED = 1032;
int RIL_UNSOL_EXIT_EMERGENCY_CALLBACK_MODE = 1033;
int RIL_UNSOL_RIL_CONNECTED = 1034;
int RIL_UNSOL_VOICE_RADIO_TECH_CHANGED = 1035;