From d2a8b98233360e26bc18e4f5ed7a931f86dd4c34 Mon Sep 17 00:00:00 2001 From: Kenneth Ford Date: Mon, 25 Mar 2024 20:59:02 +0000 Subject: Updates DeviceState to use specific parcel methods Fixes: 329150169 Test: DeviceStateTest Change-Id: I4a1012d29d46ef9a619a6b0eb8a41bc164765f13 --- .../android/hardware/devicestate/DeviceState.java | 27 ++++++---------------- 1 file changed, 7 insertions(+), 20 deletions(-) diff --git a/core/java/android/hardware/devicestate/DeviceState.java b/core/java/android/hardware/devicestate/DeviceState.java index 64fc4c29db90..e583627c0960 100644 --- a/core/java/android/hardware/devicestate/DeviceState.java +++ b/core/java/android/hardware/devicestate/DeviceState.java @@ -399,16 +399,8 @@ public final class DeviceState { public void writeToParcel(@NonNull Parcel dest, int flags) { dest.writeInt(mIdentifier); dest.writeString8(mName); - - dest.writeInt(mSystemProperties.size()); - for (int i = 0; i < mSystemProperties.size(); i++) { - dest.writeInt(mSystemProperties.valueAt(i)); - } - - dest.writeInt(mPhysicalProperties.size()); - for (int i = 0; i < mPhysicalProperties.size(); i++) { - dest.writeInt(mPhysicalProperties.valueAt(i)); - } + dest.writeArraySet(mSystemProperties); + dest.writeArraySet(mPhysicalProperties); } @NonNull @@ -417,16 +409,11 @@ public final class DeviceState { public DeviceState.Configuration createFromParcel(Parcel source) { int identifier = source.readInt(); String name = source.readString8(); - ArraySet<@DeviceStateProperties Integer> systemProperties = new ArraySet<>(); - int systemPropertySize = source.readInt(); - for (int i = 0; i < systemPropertySize; i++) { - systemProperties.add(source.readInt()); - } - ArraySet<@DeviceStateProperties Integer> physicalProperties = new ArraySet<>(); - int physicalPropertySize = source.readInt(); - for (int j = 0; j < physicalPropertySize; j++) { - physicalProperties.add(source.readInt()); - } + ArraySet<@SystemDeviceStateProperties Integer> systemProperties = + (ArraySet) source.readArraySet(null /* classLoader */); + ArraySet<@PhysicalDeviceStateProperties Integer> physicalProperties = + (ArraySet) source.readArraySet(null /* classLoader */); + return new DeviceState.Configuration(identifier, name, systemProperties, physicalProperties); } -- cgit v1.2.3-59-g8ed1b