Moves the test DEs to the last index
Bug: 276836981
Test: on device test
Ignore-AOSP-First: nearby_not_in_aosp_yet
Change-Id: I82f9ff90b2081f21ad47fba6a3f846f4936ec99e
diff --git a/nearby/framework/java/android/nearby/DataElement.java b/nearby/framework/java/android/nearby/DataElement.java
index 02548cb..10c1132 100644
--- a/nearby/framework/java/android/nearby/DataElement.java
+++ b/nearby/framework/java/android/nearby/DataElement.java
@@ -78,8 +78,9 @@
int BATTERY = 11;
// Reserves test DE ranges from {@link DataElement.DataType#TEST_DE_BEGIN}
// to {@link DataElement.DataType#TEST_DE_END}, inclusive.
- int TEST_DE_BEGIN = 256;
- int TEST_DE_END = 260;
+ // Reserves 128 Test DEs.
+ int TEST_DE_BEGIN = Integer.MAX_VALUE - 127; // 2147483520
+ int TEST_DE_END = Integer.MAX_VALUE; // 2147483647
}
/**
diff --git a/nearby/service/java/com/android/server/nearby/provider/ChreDiscoveryProvider.java b/nearby/service/java/com/android/server/nearby/provider/ChreDiscoveryProvider.java
index 30d2000..40a9ee9 100644
--- a/nearby/service/java/com/android/server/nearby/provider/ChreDiscoveryProvider.java
+++ b/nearby/service/java/com/android/server/nearby/provider/ChreDiscoveryProvider.java
@@ -41,7 +41,6 @@
import com.google.protobuf.ByteString;
-import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import java.util.concurrent.Executor;
@@ -194,10 +193,7 @@
private Blefilter.DataElement toProtoDataElement(DataElement dataElement) {
return Blefilter.DataElement.newBuilder()
- .setKey(Arrays.stream(Blefilter.DataElement.ElementType.values())
- .filter(p -> p.getNumber() == dataElement.getKey())
- .findFirst()
- .get())
+ .setKey(dataElement.getKey())
.setValue(ByteString.copyFrom(dataElement.getValue()))
.setValueLength(dataElement.getValue().length)
.build();
@@ -363,31 +359,20 @@
PresenceDevice.Builder presenceDeviceBuilder) {
int endIndex = element.hasValueLength() ? element.getValueLength() :
element.getValue().size();
- switch (element.getKey()) {
- case DE_FAST_PAIR_ACCOUNT_KEY:
+ int key = element.getKey();
+ switch (key) {
+ case DataElement.DataType.ACCOUNT_KEY_DATA:
+ case DataElement.DataType.CONNECTION_STATUS:
+ case DataElement.DataType.BATTERY:
presenceDeviceBuilder.addExtendedProperty(
- new DataElement(DataElement.DataType.ACCOUNT_KEY_DATA,
- element.getValue().substring(0, endIndex).toByteArray()));
- break;
- case DE_CONNECTION_STATUS:
- presenceDeviceBuilder.addExtendedProperty(
- new DataElement(DataElement.DataType.CONNECTION_STATUS,
- element.getValue().substring(0, endIndex).toByteArray()));
- break;
- case DE_BATTERY_STATUS:
- presenceDeviceBuilder.addExtendedProperty(
- new DataElement(DataElement.DataType.BATTERY,
+ new DataElement(key,
element.getValue().substring(0, endIndex).toByteArray()));
break;
default:
if (mNearbyConfiguration.isTestAppSupported()
- && DataElement.isTestDeType(element.getKey().getNumber())) {
+ && DataElement.isTestDeType(key)) {
presenceDeviceBuilder.addExtendedProperty(
- new DataElement(Arrays.stream(
- Blefilter.DataElement.ElementType.values())
- .filter(p -> p.getNumber() == element.getKey().getNumber())
- .findFirst()
- .get().getNumber(),
+ new DataElement(key,
element.getValue().substring(0, endIndex).toByteArray()));
}
break;
diff --git a/nearby/service/proto/src/presence/blefilter.proto b/nearby/service/proto/src/presence/blefilter.proto
index 9b760c1..e1bf455 100644
--- a/nearby/service/proto/src/presence/blefilter.proto
+++ b/nearby/service/proto/src/presence/blefilter.proto
@@ -58,23 +58,16 @@
message DataElement {
enum ElementType {
- option allow_alias = true;
-
DE_NONE = 0;
DE_FAST_PAIR_ACCOUNT_KEY = 9;
DE_CONNECTION_STATUS = 10;
DE_BATTERY_STATUS = 11;
- // Reserves Test DEs.
- DE_TEST_BEGIN = 256;
- DE_TEST_1 = 256;
- DE_TEST_2 = 257;
- DE_TEST_3 = 258;
- DE_TEST_4 = 259;
- DE_TEST_5 = 260;
- DE_TEST_END = 260;
+ // Reserves 128 Test DEs.
+ DE_TEST_BEGIN = 2147483520; // INT_MAX - 127
+ DE_TEST_END = 2147483647; // INT_MAX
}
- optional ElementType key = 1;
+ optional int32 key = 1;
optional bytes value = 2;
optional uint32 value_length = 3;
}
diff --git a/nearby/tests/unit/src/com/android/server/nearby/provider/ChreDiscoveryProviderTest.java b/nearby/tests/unit/src/com/android/server/nearby/provider/ChreDiscoveryProviderTest.java
index 26fb6a9..25d3f73 100644
--- a/nearby/tests/unit/src/com/android/server/nearby/provider/ChreDiscoveryProviderTest.java
+++ b/nearby/tests/unit/src/com/android/server/nearby/provider/ChreDiscoveryProviderTest.java
@@ -67,11 +67,8 @@
private static final int DATA_TYPE_BLUETOOTH_ADDR_KEY = 101;
private static final int DATA_TYPE_FP_ACCOUNT_KEY = 9;
private static final int DATA_TYPE_BLE_SERVICE_DATA_KEY = 100;
- private static final int DATA_TYPE_TEST_1_KEY = 256;
- private static final int DATA_TYPE_TEST_2_KEY = 257;
- private static final int DATA_TYPE_TEST_3_KEY = 258;
- private static final int DATA_TYPE_TEST_4_KEY = 259;
- private static final int DATA_TYPE_TEST_5_KEY = 260;
+ private static final int DATA_TYPE_TEST_DE_BEGIN_KEY = 2147483520;
+ private static final int DATA_TYPE_TEST_DE_END_KEY = 2147483647;
private ChreDiscoveryProvider mChreDiscoveryProvider;
@@ -174,58 +171,27 @@
.setBleServiceData(ByteString.copyFrom(bleServiceData))
.setPublicCredential(credential)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_CONNECTION_STATUS)
+ .setKey(DATA_TYPE_CONNECTION_STATUS_KEY)
.setValue(ByteString.copyFrom(connectionStatus))
.setValueLength(connectionStatus.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_BATTERY_STATUS)
+ .setKey(DATA_TYPE_BATTERY_KEY)
.setValue(ByteString.copyFrom(batteryStatus))
.setValueLength(batteryStatus.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_FAST_PAIR_ACCOUNT_KEY)
+ .setKey(DATA_TYPE_FP_ACCOUNT_KEY)
.setValue(ByteString.copyFrom(fastPairAccountKey))
.setValueLength(fastPairAccountKey.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_1)
+ .setKey(DATA_TYPE_TEST_DE_BEGIN_KEY)
.setValue(ByteString.copyFrom(testData))
.setValueLength(testData.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_2)
- .setValue(ByteString.copyFrom(testData))
- .setValueLength(testData.length)
- )
- .addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_3)
- .setValue(ByteString.copyFrom(testData))
- .setValueLength(testData.length)
- )
- .addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_4)
- .setValue(ByteString.copyFrom(testData))
- .setValueLength(testData.length)
- )
- .addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_5)
+ .setKey(DATA_TYPE_TEST_DE_END_KEY)
.setValue(ByteString.copyFrom(testData))
.setValueLength(testData.length)
)
@@ -286,15 +252,9 @@
expectedExtendedProperties.add(
new DataElement(DATA_TYPE_BLE_SERVICE_DATA_KEY, new byte[] {1, 2, 3, 4, 5}));
expectedExtendedProperties.add(
- new DataElement(DATA_TYPE_TEST_1_KEY, testData));
+ new DataElement(DATA_TYPE_TEST_DE_BEGIN_KEY, testData));
expectedExtendedProperties.add(
- new DataElement(DATA_TYPE_TEST_2_KEY, testData));
- expectedExtendedProperties.add(
- new DataElement(DATA_TYPE_TEST_3_KEY, testData));
- expectedExtendedProperties.add(
- new DataElement(DATA_TYPE_TEST_4_KEY, testData));
- expectedExtendedProperties.add(
- new DataElement(DATA_TYPE_TEST_5_KEY, testData));
+ new DataElement(DATA_TYPE_TEST_DE_END_KEY, testData));
Blefilter.PublicCredential credential =
Blefilter.PublicCredential.newBuilder()
@@ -312,58 +272,27 @@
.setBleServiceData(ByteString.copyFrom(bleServiceData))
.setPublicCredential(credential)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_CONNECTION_STATUS)
+ .setKey(DATA_TYPE_CONNECTION_STATUS_KEY)
.setValue(ByteString.copyFrom(connectionStatus))
.setValueLength(connectionStatus.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_BATTERY_STATUS)
+ .setKey(DATA_TYPE_BATTERY_KEY)
.setValue(ByteString.copyFrom(batteryStatus))
.setValueLength(batteryStatus.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_FAST_PAIR_ACCOUNT_KEY)
+ .setKey(DATA_TYPE_FP_ACCOUNT_KEY)
.setValue(ByteString.copyFrom(fastPairAccountKey))
.setValueLength(fastPairAccountKey.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_1)
+ .setKey(DATA_TYPE_TEST_DE_BEGIN_KEY)
.setValue(ByteString.copyFrom(testData))
.setValueLength(testData.length)
)
.addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_2)
- .setValue(ByteString.copyFrom(testData))
- .setValueLength(testData.length)
- )
- .addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_3)
- .setValue(ByteString.copyFrom(testData))
- .setValueLength(testData.length)
- )
- .addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_4)
- .setValue(ByteString.copyFrom(testData))
- .setValueLength(testData.length)
- )
- .addDataElement(Blefilter.DataElement.newBuilder()
- .setKey(
- Blefilter.DataElement.ElementType
- .DE_TEST_5)
+ .setKey(DATA_TYPE_TEST_DE_END_KEY)
.setValue(ByteString.copyFrom(testData))
.setValueLength(testData.length)
)