Use mapping instead of numberic values for Device id type look up
Test: atest DeviceLockControllerRoboTest
Test: atest CtsDeviceLockTestCases
Bug: 270392813
Change-Id: If9188d419f7c44ff40ff405d803434d7f3c61e29
diff --git a/DeviceLockController/src/com/android/devicelockcontroller/common/DeviceLockConstants.java b/DeviceLockController/src/com/android/devicelockcontroller/common/DeviceLockConstants.java
index 6e5a3bb..ad2ec39 100644
--- a/DeviceLockController/src/com/android/devicelockcontroller/common/DeviceLockConstants.java
+++ b/DeviceLockController/src/com/android/devicelockcontroller/common/DeviceLockConstants.java
@@ -33,21 +33,21 @@
// Constants related to unique device identifiers.
@Retention(RetentionPolicy.SOURCE)
@IntDef(value = {
- DEVICE_ID_TYPE_UNSPECIFIED,
- DEVICE_ID_TYPE_IMEI,
- DEVICE_ID_TYPE_MEID,
+ DeviceIdType.DEVICE_ID_TYPE_UNSPECIFIED,
+ DeviceIdType.DEVICE_ID_TYPE_IMEI,
+ DeviceIdType.DEVICE_ID_TYPE_MEID,
})
public @interface DeviceIdType {
+ // The device id type is unspecified
+ int DEVICE_ID_TYPE_UNSPECIFIED = -1;
+ // The device id is a IMEI
+ int DEVICE_ID_TYPE_IMEI = 0;
+ // The device id is a MEID
+ int DEVICE_ID_TYPE_MEID = 1;
}
- // The device id type is unspecified
- public static final int DEVICE_ID_TYPE_UNSPECIFIED = -1;
- // The device id is a IMEI
- public static final int DEVICE_ID_TYPE_IMEI = 0;
- // The device id is a MEID
- public static final int DEVICE_ID_TYPE_MEID = 1;
@DeviceIdType
- private static final int LAST_DEVICE_ID_TYPE = DEVICE_ID_TYPE_MEID;
+ private static final int LAST_DEVICE_ID_TYPE = DeviceIdType.DEVICE_ID_TYPE_MEID;
public static final int TOTAL_DEVICE_ID_TYPES = LAST_DEVICE_ID_TYPE + 1;
// Constants related to unique device identifiers.
diff --git a/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java b/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java
index 8a816de..aeb932e 100644
--- a/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java
+++ b/DeviceLockController/src/com/android/devicelockcontroller/provision/grpc/impl/DeviceCheckInClientImpl.java
@@ -31,6 +31,7 @@
import com.android.devicelockcontroller.DeviceLockControllerApplication;
import com.android.devicelockcontroller.common.DeviceId;
import com.android.devicelockcontroller.common.DeviceLockConstants;
+import com.android.devicelockcontroller.common.DeviceLockConstants.DeviceIdType;
import com.android.devicelockcontroller.common.DeviceLockConstants.DeviceProvisionState;
import com.android.devicelockcontroller.common.DeviceLockConstants.SetupFailureReason;
import com.android.devicelockcontroller.proto.ClientDeviceIdentifier;
@@ -151,11 +152,24 @@
ArraySet<DeviceId> deviceIds, String carrierInfo) {
GetDeviceCheckinStatusRequest.Builder builder = GetDeviceCheckinStatusRequest.newBuilder();
for (DeviceId deviceId : deviceIds) {
+ DeviceIdentifierType type;
+ switch (deviceId.getType()) {
+ case DeviceIdType.DEVICE_ID_TYPE_UNSPECIFIED:
+ type = DeviceIdentifierType.DEVICE_IDENTIFIER_TYPE_UNSPECIFIED;
+ break;
+ case DeviceIdType.DEVICE_ID_TYPE_IMEI:
+ type = DeviceIdentifierType.DEVICE_IDENTIFIER_TYPE_IMEI;
+ break;
+ case DeviceIdType.DEVICE_ID_TYPE_MEID:
+ type = DeviceIdentifierType.DEVICE_IDENTIFIER_TYPE_MEID;
+ break;
+ default:
+ throw new IllegalStateException(
+ "Unexpected DeviceId type: " + deviceId.getType());
+ }
builder.addClientDeviceIdentifiers(
ClientDeviceIdentifier.newBuilder()
- .setDeviceIdentifierType(
- // TODO: b/270392813
- DeviceIdentifierType.forNumber(deviceId.getType() + 1))
+ .setDeviceIdentifierType(type)
.setDeviceIdentifier(deviceId.getId()));
}
builder.setCarrierMccmnc(carrierInfo);
diff --git a/DeviceLockController/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelper.java b/DeviceLockController/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelper.java
index 3bb510d..f3d7dea 100644
--- a/DeviceLockController/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelper.java
+++ b/DeviceLockController/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelper.java
@@ -16,8 +16,8 @@
package com.android.devicelockcontroller.provision.worker;
-import static com.android.devicelockcontroller.common.DeviceLockConstants.DEVICE_ID_TYPE_IMEI;
-import static com.android.devicelockcontroller.common.DeviceLockConstants.DEVICE_ID_TYPE_MEID;
+import static com.android.devicelockcontroller.common.DeviceLockConstants.DeviceIdType.DEVICE_ID_TYPE_IMEI;
+import static com.android.devicelockcontroller.common.DeviceLockConstants.DeviceIdType.DEVICE_ID_TYPE_MEID;
import static com.android.devicelockcontroller.common.DeviceLockConstants.EXTRA_MANDATORY_PROVISION;
import static com.android.devicelockcontroller.common.DeviceLockConstants.EXTRA_PROVISIONING_TYPE;
import static com.android.devicelockcontroller.common.DeviceLockConstants.READY_FOR_PROVISION;
diff --git a/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelperTest.java b/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelperTest.java
index 4f2bf00..fdba28a 100644
--- a/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelperTest.java
+++ b/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInHelperTest.java
@@ -16,8 +16,8 @@
package com.android.devicelockcontroller.provision.worker;
-import static com.android.devicelockcontroller.common.DeviceLockConstants.DEVICE_ID_TYPE_IMEI;
-import static com.android.devicelockcontroller.common.DeviceLockConstants.DEVICE_ID_TYPE_MEID;
+import static com.android.devicelockcontroller.common.DeviceLockConstants.DeviceIdType.DEVICE_ID_TYPE_IMEI;
+import static com.android.devicelockcontroller.common.DeviceLockConstants.DeviceIdType.DEVICE_ID_TYPE_MEID;
import static com.android.devicelockcontroller.common.DeviceLockConstants.READY_FOR_PROVISION;
import static com.android.devicelockcontroller.common.DeviceLockConstants.RETRY_CHECK_IN;
import static com.android.devicelockcontroller.common.DeviceLockConstants.STOP_CHECK_IN;
diff --git a/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInWorkerTest.java b/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInWorkerTest.java
index 94a68d8..449dadd 100644
--- a/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInWorkerTest.java
+++ b/DeviceLockController/tests/robolectric/src/com/android/devicelockcontroller/provision/worker/DeviceCheckInWorkerTest.java
@@ -16,7 +16,7 @@
package com.android.devicelockcontroller.provision.worker;
-import static com.android.devicelockcontroller.common.DeviceLockConstants.DEVICE_ID_TYPE_IMEI;
+import static com.android.devicelockcontroller.common.DeviceLockConstants.DeviceIdType.DEVICE_ID_TYPE_IMEI;
import static com.google.common.truth.Truth.assertThat;