aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJack Yu <jackyu@google.com>2023-07-20 20:44:29 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-07-20 20:44:29 +0000
commit3397628d4b855dfe47642c103d6b66abf6c1bd0c (patch)
tree2d5de0d3d868eb8ac3070c53dbc13ff37cae92b8
parent18213dd94d5f785b543572987a3a7e32683ea981 (diff)
parent02e30d66c68d2c0902d9f8d4f18a3684cf6e944c (diff)
downloadservice_entitlement-3397628d4b855dfe47642c103d6b66abf6c1bd0c.tar.gz
Removed OdsaOperation to reduce confusion am: 02e30d66c6
Original change: https://android-review.googlesource.com/c/platform/frameworks/libs/service_entitlement/+/2666122 Change-Id: I6bd4380de35d5dde6a02ae8922951a709108c7fa Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--java/com/android/libraries/entitlement/EsimOdsaOperation.java134
-rw-r--r--java/com/android/libraries/entitlement/Ts43Operation.java4
-rw-r--r--java/com/android/libraries/entitlement/eapaka/EapAkaApi.java5
-rw-r--r--java/com/android/libraries/entitlement/odsa/AcquireConfigurationOperation.java31
-rw-r--r--java/com/android/libraries/entitlement/odsa/AcquireTemporaryTokenOperation.java10
-rw-r--r--java/com/android/libraries/entitlement/odsa/CheckEligibilityOperation.java2
-rw-r--r--java/com/android/libraries/entitlement/odsa/ManageServiceOperation.java26
-rw-r--r--java/com/android/libraries/entitlement/odsa/ManageSubscriptionOperation.java25
-rw-r--r--java/com/android/libraries/entitlement/odsa/OdsaOperation.java188
-rw-r--r--java/com/android/libraries/entitlement/odsa/OdsaResponse.java6
10 files changed, 135 insertions, 296 deletions
diff --git a/java/com/android/libraries/entitlement/EsimOdsaOperation.java b/java/com/android/libraries/entitlement/EsimOdsaOperation.java
index 1cc1bd6..e7b28f6 100644
--- a/java/com/android/libraries/entitlement/EsimOdsaOperation.java
+++ b/java/com/android/libraries/entitlement/EsimOdsaOperation.java
@@ -16,13 +16,10 @@
package com.android.libraries.entitlement;
+import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.StringDef;
-import com.android.libraries.entitlement.odsa.OdsaOperation;
-import com.android.libraries.entitlement.odsa.OdsaOperation.CompanionService;
-import com.android.libraries.entitlement.odsa.OdsaOperation.OperationType;
-
import com.google.auto.value.AutoValue;
import com.google.common.collect.ImmutableList;
@@ -39,31 +36,25 @@ public abstract class EsimOdsaOperation {
public static final String OPERATION_UNKNOWN = "";
/** ODSA operation: CheckEligibility. */
- public static final String OPERATION_CHECK_ELIGIBILITY =
- OdsaOperation.OPERATION_CHECK_ELIGIBILITY;
+ public static final String OPERATION_CHECK_ELIGIBILITY = "CheckEligibility";
/** ODSA operation: ManageSubscription. */
- public static final String OPERATION_MANAGE_SUBSCRIPTION =
- OdsaOperation.OPERATION_MANAGE_SUBSCRIPTION;
+ public static final String OPERATION_MANAGE_SUBSCRIPTION = "ManageSubscription";
/** ODSA operation: ManageService. */
- public static final String OPERATION_MANAGE_SERVICE =
- OdsaOperation.OPERATION_MANAGE_SERVICE;
+ public static final String OPERATION_MANAGE_SERVICE = "ManageService";
/** ODSA operation: AcquireConfiguration. */
- public static final String OPERATION_ACQUIRE_CONFIGURATION =
- OdsaOperation.OPERATION_ACQUIRE_CONFIGURATION;
+ public static final String OPERATION_ACQUIRE_CONFIGURATION = "AcquireConfiguration";
/** ODSA operation: AcquireTemporaryToken. */
- public static final String OPERATION_ACQUIRE_TEMPORARY_TOKEN =
- OdsaOperation.OPERATION_ACQUIRE_TEMPORARY_TOKEN;
+ public static final String OPERATION_ACQUIRE_TEMPORARY_TOKEN = "AcquireTemporaryToken";
/** ODSA operation: GetPhoneNumber */
- public static final String OPERATION_GET_PHONE_NUMBER =
- OdsaOperation.OPERATION_GET_PHONE_NUMBER;
+ public static final String OPERATION_GET_PHONE_NUMBER = "GetPhoneNumber";
/** ODSA operation: AcquirePlan */
- public static final String OPERATION_ACQUIRE_PLAN = OdsaOperation.OPERATION_ACQUIRE_PLAN;
+ public static final String OPERATION_ACQUIRE_PLAN = "AcquirePlan";
@Retention(RetentionPolicy.SOURCE)
@StringDef({
@@ -76,96 +67,129 @@ public abstract class EsimOdsaOperation {
OPERATION_ACQUIRE_TEMPORARY_TOKEN,
OPERATION_GET_PHONE_NUMBER
})
- public @interface Operation {
+ public @interface OdsaOperation {
}
/** eSIM device’s service is unknown. */
- public static final int SERVICE_STATUS_UNKNOWN = OdsaOperation.SERVICE_STATUS_UNKNOWN;
+ public static final int SERVICE_STATUS_UNKNOWN = -1;
/** eSIM device’s service is activated. */
- public static final int SERVICE_STATUS_ACTIVATED = OdsaOperation.SERVICE_STATUS_ACTIVATED;
+ public static final int SERVICE_STATUS_ACTIVATED = 1;
/** eSIM device’s service is being activated. */
- public static final int SERVICE_STATUS_ACTIVATING = OdsaOperation.SERVICE_STATUS_ACTIVATING;
+ public static final int SERVICE_STATUS_ACTIVATING = 2;
/** eSIM device’s service is not activated. */
- public static final int SERVICE_STATUS_DEACTIVATED = OdsaOperation.SERVICE_STATUS_DEACTIVATED;
+ public static final int SERVICE_STATUS_DEACTIVATED = 3;
/** eSIM device’s service is not activated and the associated ICCID should not be reused. */
- public static final int SERVICE_STATUS_DEACTIVATED_NO_REUSE =
- OdsaOperation.SERVICE_STATUS_DEACTIVATED_NO_REUSE;
+ public static final int SERVICE_STATUS_DEACTIVATED_NO_REUSE = 4;
+
+ @Retention(RetentionPolicy.SOURCE)
+ @IntDef({
+ SERVICE_STATUS_UNKNOWN,
+ SERVICE_STATUS_ACTIVATED,
+ SERVICE_STATUS_ACTIVATING,
+ SERVICE_STATUS_DEACTIVATED,
+ SERVICE_STATUS_DEACTIVATED_NO_REUSE
+ })
+ public @interface OdsaServiceStatus {
+ }
/** Indicates that operation_type is not set. */
- public static final int OPERATION_TYPE_NOT_SET = OdsaOperation.OPERATION_TYPE_NOT_SET;
+ public static final int OPERATION_TYPE_NOT_SET = -1;
/** To activate a subscription, used by {@link #OPERATION_MANAGE_SUBSCRIPTION}. */
- public static final int OPERATION_TYPE_SUBSCRIBE = OdsaOperation.OPERATION_TYPE_SUBSCRIBE;
+ public static final int OPERATION_TYPE_SUBSCRIBE = 0;
/** To cancel a subscription, used by {@link #OPERATION_MANAGE_SUBSCRIPTION}. */
- public static final int OPERATION_TYPE_UNSUBSCRIBE = OdsaOperation.OPERATION_TYPE_UNSUBSCRIBE;
+ public static final int OPERATION_TYPE_UNSUBSCRIBE = 1;
/** To manage an existing subscription, for {@link #OPERATION_MANAGE_SUBSCRIPTION}. */
- public static final int OPERATION_TYPE_CHANGE_SUBSCRIPTION =
- OdsaOperation.OPERATION_TYPE_CHANGE_SUBSCRIPTION;
+ public static final int OPERATION_TYPE_CHANGE_SUBSCRIPTION = 2;
/**
* To transfer a subscription from an existing device, used by {@link
* #OPERATION_MANAGE_SUBSCRIPTION}.
*/
- public static final int OPERATION_TYPE_TRANSFER_SUBSCRIPTION =
- OdsaOperation.OPERATION_TYPE_TRANSFER_SUBSCRIPTION;
+ public static final int OPERATION_TYPE_TRANSFER_SUBSCRIPTION = 3;
/**
* To inform the network of a subscription update, used by
* {@link #OPERATION_MANAGE_SUBSCRIPTION}.
*/
- public static final int OPERATION_TYPE_UPDATE_SUBSCRIPTION =
- OdsaOperation.OPERATION_TYPE_UPDATE_SUBSCRIPTION;
+ public static final int OPERATION_TYPE_UPDATE_SUBSCRIPTION = 4;
/** To activate a service, used by {@link #OPERATION_MANAGE_SERVICE}. */
- public static final int OPERATION_TYPE_ACTIVATE_SERVICE =
- OdsaOperation.OPERATION_TYPE_ACTIVATE_SERVICE;
+ public static final int OPERATION_TYPE_ACTIVATE_SERVICE = 10;
/** To deactivate a service, used by {@link #OPERATION_MANAGE_SERVICE}. */
- public static final int OPERATION_TYPE_DEACTIVATE_SERVICE =
- OdsaOperation.OPERATION_TYPE_DEACTIVATE_SERVICE;
+ public static final int OPERATION_TYPE_DEACTIVATE_SERVICE = 11;
+
+ @Retention(RetentionPolicy.SOURCE)
+ @IntDef({
+ OPERATION_TYPE_NOT_SET,
+ OPERATION_TYPE_SUBSCRIBE,
+ OPERATION_TYPE_UNSUBSCRIBE,
+ OPERATION_TYPE_CHANGE_SUBSCRIPTION,
+ OPERATION_TYPE_TRANSFER_SUBSCRIPTION,
+ OPERATION_TYPE_UPDATE_SUBSCRIPTION,
+ OPERATION_TYPE_ACTIVATE_SERVICE,
+ OPERATION_TYPE_DEACTIVATE_SERVICE
+ })
+ public @interface OdsaOperationType {
+ }
/** Operation result unknown. */
- public static final int OPERATION_RESULT_UNKNOWN = OdsaOperation.OPERATION_RESULT_UNKNOWN;
+ public static final int OPERATION_RESULT_UNKNOWN = -1;
/** Operation was a success. */
- public static final int OPERATION_RESULT_SUCCESS = OdsaOperation.OPERATION_RESULT_SUCCESS;
+ public static final int OPERATION_RESULT_SUCCESS = 1;
/** There was a general error during processing. */
- public static final int OPERATION_RESULT_ERROR_GENERAL =
- OdsaOperation.OPERATION_RESULT_ERROR_GENERAL;
+ public static final int OPERATION_RESULT_ERROR_GENERAL = 100;
/** An invalid operation value was provided in request. */
- public static final int OPERATION_RESULT_ERROR_INVALID_OPERATION =
- OdsaOperation.OPERATION_RESULT_ERROR_INVALID_OPERATION;
+ public static final int OPERATION_RESULT_ERROR_INVALID_OPERATION = 101;
/** An invalid parameter name or value was provided in request. */
- public static final int OPERATION_RESULT_ERROR_INVALID_PARAMETER =
- OdsaOperation.OPERATION_RESULT_ERROR_INVALID_PARAMETER;
+ public static final int OPERATION_RESULT_ERROR_INVALID_PARAMETER = 102;
/**
* The optional operation is not supported by the carrier. Device should continue with the flow.
* This error only applies to optional operations (for example ManageService).
*/
- public static final int OPERATION_RESULT_WARNING_NOT_SUPPORTED_OPERATION =
- OdsaOperation.OPERATION_RESULT_WARNING_NOT_SUPPORTED_OPERATION;
+ public static final int OPERATION_RESULT_WARNING_NOT_SUPPORTED_OPERATION = 103;
+
+ @Retention(RetentionPolicy.SOURCE)
+ @IntDef({
+ OPERATION_RESULT_UNKNOWN,
+ OPERATION_RESULT_SUCCESS,
+ OPERATION_RESULT_ERROR_GENERAL,
+ OPERATION_RESULT_ERROR_INVALID_OPERATION,
+ OPERATION_RESULT_ERROR_INVALID_PARAMETER,
+ OPERATION_RESULT_WARNING_NOT_SUPPORTED_OPERATION
+ })
+ public @interface OdsaOperationResult {
+ }
/** Companion service unknown. For initialization only. */
- public static final String COMPANION_SERVICE_UNKNOWN = OdsaOperation.COMPANION_SERVICE_UNKNOWN;
+ public static final String COMPANION_SERVICE_UNKNOWN = "";
/** Indicates the companion device carries the same MSISDN as the primary device. */
- public static final String COMPANION_SERVICE_SHARED_NUMBER =
- OdsaOperation.COMPANION_SERVICE_SHARED_NUMBER;
+ public static final String COMPANION_SERVICE_SHARED_NUMBER = "SharedNumber";
/** Indicates the companion device carries a different MSISDN as the primary device. */
- public static final String COMPANION_SERVICE_DIFFERENT_NUMBER =
- OdsaOperation.COMPANION_SERVICE_DIFFERENT_NUMBER;
+ public static final String COMPANION_SERVICE_DIFFERENT_NUMBER = "DiffNumber";
+ @Retention(RetentionPolicy.SOURCE)
+ @StringDef({
+ COMPANION_SERVICE_UNKNOWN,
+ COMPANION_SERVICE_SHARED_NUMBER,
+ COMPANION_SERVICE_DIFFERENT_NUMBER
+ })
+ public @interface CompanionService {
+ }
/** Returns the ODSA operation. Used by HTTP parameter {@code operation}. */
public abstract String operation();
@@ -345,7 +369,7 @@ public abstract class EsimOdsaOperation {
* @see #OPERATION_ACQUIRE_PLAN
*/
@NonNull
- public abstract Builder setOperation(@NonNull @Operation String operation);
+ public abstract Builder setOperation(@NonNull @OdsaOperation String operation);
/**
* Sets the detailed type of the eSIM ODSA operation. Used by HTTP parameter
@@ -363,7 +387,7 @@ public abstract class EsimOdsaOperation {
* @see #OPERATION_TYPE_DEACTIVATE_SERVICE
*/
@NonNull
- public abstract Builder setOperationType(@OperationType int operationType);
+ public abstract Builder setOperationType(@OdsaOperationType int operationType);
/**
* Sets the operation targets to be used with temporary token from AcquireTemporaryToken
@@ -371,7 +395,7 @@ public abstract class EsimOdsaOperation {
*/
@NonNull
public abstract Builder setOperationTargets(
- @NonNull @Operation ImmutableList<String> operationTargets);
+ @NonNull @OdsaOperation ImmutableList<String> operationTargets);
/**
* Sets the unique identifier of the companion device, like IMEI. Used by HTTP parameter
diff --git a/java/com/android/libraries/entitlement/Ts43Operation.java b/java/com/android/libraries/entitlement/Ts43Operation.java
index 77bda9c..a95ff10 100644
--- a/java/com/android/libraries/entitlement/Ts43Operation.java
+++ b/java/com/android/libraries/entitlement/Ts43Operation.java
@@ -26,6 +26,7 @@ import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaServiceStatus;
import com.android.libraries.entitlement.http.HttpConstants;
import com.android.libraries.entitlement.odsa.AcquireConfigurationOperation.AcquireConfigurationRequest;
import com.android.libraries.entitlement.odsa.AcquireConfigurationOperation.AcquireConfigurationResponse;
@@ -39,7 +40,6 @@ import com.android.libraries.entitlement.odsa.ManageServiceOperation.ManageServi
import com.android.libraries.entitlement.odsa.ManageServiceOperation.ManageServiceResponse;
import com.android.libraries.entitlement.odsa.ManageSubscriptionOperation.ManageSubscriptionRequest;
import com.android.libraries.entitlement.odsa.ManageSubscriptionOperation.ManageSubscriptionResponse;
-import com.android.libraries.entitlement.odsa.OdsaOperation.ServiceStatus;
import com.android.libraries.entitlement.odsa.OdsaResponse;
import com.android.libraries.entitlement.odsa.PlanOffer;
import com.android.libraries.entitlement.utils.Ts43Constants;
@@ -995,7 +995,7 @@ public class Ts43Operation {
* @return The converted service status. {@link EsimOdsaOperation#SERVICE_STATUS_UNKNOWN} if not
* able to convert.
*/
- @ServiceStatus
+ @OdsaServiceStatus
private int getServiceStatusFromString(@NonNull String serviceStatusString) {
switch (serviceStatusString) {
case Ts43XmlDoc.ParmValues.SERVICE_STATUS_ACTIVATED:
diff --git a/java/com/android/libraries/entitlement/eapaka/EapAkaApi.java b/java/com/android/libraries/entitlement/eapaka/EapAkaApi.java
index 1d8d80f..adb4140 100644
--- a/java/com/android/libraries/entitlement/eapaka/EapAkaApi.java
+++ b/java/com/android/libraries/entitlement/eapaka/EapAkaApi.java
@@ -38,7 +38,6 @@ import com.android.libraries.entitlement.http.HttpConstants.ContentType;
import com.android.libraries.entitlement.http.HttpConstants.RequestMethod;
import com.android.libraries.entitlement.http.HttpRequest;
import com.android.libraries.entitlement.http.HttpResponse;
-import com.android.libraries.entitlement.odsa.OdsaOperation;
import com.google.common.collect.ImmutableList;
import com.google.common.net.HttpHeaders;
@@ -289,7 +288,7 @@ public class EapAkaApi {
/**
* Retrieves HTTP response from performing ODSA operations.
- * For operation type, see {@link OdsaOperation}.
+ * For operation type, see {@link EsimOdsaOperation}.
*
* <p>Implementation based on GSMA TS.43-v5.0 6.1.
*/
@@ -424,7 +423,7 @@ public class EapAkaApi {
private void appendParametersForEsimOdsaOperation(
Uri.Builder urlBuilder, EsimOdsaOperation odsaOperation) {
urlBuilder.appendQueryParameter(OPERATION, odsaOperation.operation());
- if (odsaOperation.operationType() != OdsaOperation.OPERATION_TYPE_NOT_SET) {
+ if (odsaOperation.operationType() != EsimOdsaOperation.OPERATION_TYPE_NOT_SET) {
urlBuilder.appendQueryParameter(OPERATION_TYPE,
Integer.toString(odsaOperation.operationType()));
}
diff --git a/java/com/android/libraries/entitlement/odsa/AcquireConfigurationOperation.java b/java/com/android/libraries/entitlement/odsa/AcquireConfigurationOperation.java
index c222d85..08a86b8 100644
--- a/java/com/android/libraries/entitlement/odsa/AcquireConfigurationOperation.java
+++ b/java/com/android/libraries/entitlement/odsa/AcquireConfigurationOperation.java
@@ -20,8 +20,9 @@ import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.libraries.entitlement.odsa.OdsaOperation.CompanionService;
-import com.android.libraries.entitlement.odsa.OdsaOperation.ServiceStatus;
+import com.android.libraries.entitlement.EsimOdsaOperation;
+import com.android.libraries.entitlement.EsimOdsaOperation.CompanionService;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaServiceStatus;
import com.android.libraries.entitlement.utils.Ts43Constants;
import com.android.libraries.entitlement.utils.Ts43Constants.AppId;
import com.android.libraries.entitlement.utils.Ts43Constants.NotificationAction;
@@ -342,26 +343,26 @@ public final class AcquireConfigurationOperation {
/**
* Service status.
*
- * @see OdsaOperation#SERVICE_STATUS_UNKNOWN
- * @see OdsaOperation#SERVICE_STATUS_ACTIVATED
- * @see OdsaOperation#SERVICE_STATUS_ACTIVATING
- * @see OdsaOperation#SERVICE_STATUS_DEACTIVATED
- * @see OdsaOperation#SERVICE_STATUS_DEACTIVATED_NO_REUSE
+ * @see EsimOdsaOperation#SERVICE_STATUS_UNKNOWN
+ * @see EsimOdsaOperation#SERVICE_STATUS_ACTIVATED
+ * @see EsimOdsaOperation#SERVICE_STATUS_ACTIVATING
+ * @see EsimOdsaOperation#SERVICE_STATUS_DEACTIVATED
+ * @see EsimOdsaOperation#SERVICE_STATUS_DEACTIVATED_NO_REUSE
*/
- @ServiceStatus
+ @OdsaServiceStatus
public abstract int serviceStatus();
/**
* Specifies the minimum interval (in minutes) with which the device application may
* poll the ECS to refresh the current {@link #serviceStatus()} using {@link
* AcquireConfigurationRequest}. This parameter will be present only when {@link
- * #serviceStatus()} is {@link OdsaOperation#SERVICE_STATUS_ACTIVATING}. If parameter is
- * not present or value is 0, this polling procedure is not triggered and ODSA app will
- * keep waiting for any external action to continue the flow.
+ * #serviceStatus()} is {@link EsimOdsaOperation#SERVICE_STATUS_ACTIVATING}. If
+ * parameter is not present or value is 0, this polling procedure is not triggered and
+ * ODSA app will keep waiting for any external action to continue the flow.
*
* <p>The maximum number of {@link AcquireConfigurationRequest} before sending a {@link
- * #serviceStatus()} with {@link OdsaOperation#SERVICE_STATUS_DEACTIVATED_NO_REUSE} will
- * be defined as an ECS configuration variable (MaxRefreshRequest).
+ * #serviceStatus()} with {@link EsimOdsaOperation#SERVICE_STATUS_DEACTIVATED_NO_REUSE}
+ * will be defined as an ECS configuration variable (MaxRefreshRequest).
*
* <p>{@link #POLLING_INTERVAL_NOT_AVAILABLE} when polling interval is not available.
*/
@@ -385,7 +386,7 @@ public final class AcquireConfigurationOperation {
.Builder()
.setType(CONFIGURATION_TYPE_UNKNOWN)
.setIccid("")
- .setServiceStatus(OdsaOperation.SERVICE_STATUS_UNKNOWN)
+ .setServiceStatus(EsimOdsaOperation.SERVICE_STATUS_UNKNOWN)
.setPollingInterval(POLLING_INTERVAL_NOT_AVAILABLE);
}
@@ -428,7 +429,7 @@ public final class AcquireConfigurationOperation {
* @return The builder.
*/
@NonNull
- public abstract Builder setServiceStatus(@ServiceStatus int serviceStatus);
+ public abstract Builder setServiceStatus(@OdsaServiceStatus int serviceStatus);
/**
* Set the polling interval.
diff --git a/java/com/android/libraries/entitlement/odsa/AcquireTemporaryTokenOperation.java b/java/com/android/libraries/entitlement/odsa/AcquireTemporaryTokenOperation.java
index 13b037d..4f814b9 100644
--- a/java/com/android/libraries/entitlement/odsa/AcquireTemporaryTokenOperation.java
+++ b/java/com/android/libraries/entitlement/odsa/AcquireTemporaryTokenOperation.java
@@ -19,7 +19,7 @@ package com.android.libraries.entitlement.odsa;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.libraries.entitlement.odsa.OdsaOperation.Operation;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaOperation;
import com.android.libraries.entitlement.utils.Ts43Constants;
import com.android.libraries.entitlement.utils.Ts43Constants.AppId;
@@ -53,7 +53,7 @@ public final class AcquireTemporaryTokenOperation {
* {@code operation_targets}.
*/
@NonNull
- @Operation
+ @OdsaOperation
public abstract ImmutableList<String> operationTargets();
/**
@@ -99,7 +99,7 @@ public final class AcquireTemporaryTokenOperation {
*/
@NonNull
public abstract Builder setOperationTargets(
- @NonNull @Operation ImmutableList<String> operationTargets);
+ @NonNull @OdsaOperation ImmutableList<String> operationTargets);
/**
* Sets the unique identifier of the companion device, like IMEI. Used by HTTP parameter
@@ -140,7 +140,7 @@ public final class AcquireTemporaryTokenOperation {
/** The allowed ODSA operations requested using {@link #temporaryToken()}. */
@NonNull
- @Operation
+ @OdsaOperation
public abstract ImmutableList<String> operationTargets();
/** Returns a new {@link AcquireTemporaryTokenRequest.Builder} object. */
@@ -187,7 +187,7 @@ public final class AcquireTemporaryTokenOperation {
*/
@NonNull
public abstract Builder setOperationTargets(
- @NonNull @Operation ImmutableList<String> operationTargets);
+ @NonNull @OdsaOperation ImmutableList<String> operationTargets);
/** Returns the {@link AcquireTemporaryTokenResponse} object. */
@NonNull
diff --git a/java/com/android/libraries/entitlement/odsa/CheckEligibilityOperation.java b/java/com/android/libraries/entitlement/odsa/CheckEligibilityOperation.java
index bd609bf..8dc8d97 100644
--- a/java/com/android/libraries/entitlement/odsa/CheckEligibilityOperation.java
+++ b/java/com/android/libraries/entitlement/odsa/CheckEligibilityOperation.java
@@ -20,7 +20,7 @@ import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.libraries.entitlement.odsa.OdsaOperation.CompanionService;
+import com.android.libraries.entitlement.EsimOdsaOperation.CompanionService;
import com.android.libraries.entitlement.utils.HttpConstants;
import com.android.libraries.entitlement.utils.HttpConstants.ContentType;
import com.android.libraries.entitlement.utils.Ts43Constants;
diff --git a/java/com/android/libraries/entitlement/odsa/ManageServiceOperation.java b/java/com/android/libraries/entitlement/odsa/ManageServiceOperation.java
index 2609b00..34868a4 100644
--- a/java/com/android/libraries/entitlement/odsa/ManageServiceOperation.java
+++ b/java/com/android/libraries/entitlement/odsa/ManageServiceOperation.java
@@ -18,9 +18,10 @@ package com.android.libraries.entitlement.odsa;
import androidx.annotation.NonNull;
-import com.android.libraries.entitlement.odsa.OdsaOperation.CompanionService;
-import com.android.libraries.entitlement.odsa.OdsaOperation.OperationType;
-import com.android.libraries.entitlement.odsa.OdsaOperation.ServiceStatus;
+import com.android.libraries.entitlement.EsimOdsaOperation;
+import com.android.libraries.entitlement.EsimOdsaOperation.CompanionService;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaOperationType;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaServiceStatus;
import com.android.libraries.entitlement.utils.Ts43Constants;
import com.android.libraries.entitlement.utils.Ts43Constants.AppId;
@@ -46,7 +47,7 @@ public final class ManageServiceOperation {
* Returns the detailed type of the eSIM ODSA operation. Used by HTTP parameter {@code
* operation_type}.
*/
- @OperationType
+ @OdsaOperationType
public abstract int operationType();
/**
@@ -104,13 +105,13 @@ public final class ManageServiceOperation {
public static Builder builder() {
return new AutoValue_ManageServiceOperation_ManageServiceRequest.Builder()
.setAppId(Ts43Constants.APP_UNKNOWN)
- .setOperationType(OdsaOperation.OPERATION_TYPE_NOT_SET)
+ .setOperationType(EsimOdsaOperation.OPERATION_TYPE_NOT_SET)
.setCompanionTerminalId("")
.setCompanionTerminalVendor("")
.setCompanionTerminalModel("")
.setCompanionTerminalSoftwareVersion("")
.setCompanionTerminalFriendlyName("")
- .setCompanionTerminalService(OdsaOperation.COMPANION_SERVICE_UNKNOWN)
+ .setCompanionTerminalService(EsimOdsaOperation.COMPANION_SERVICE_UNKNOWN)
.setCompanionTerminalIccid("");
}
@@ -133,12 +134,13 @@ public final class ManageServiceOperation {
* Sets the detailed type of the eSIM ODSA operation.
*
* @param operationType Operation type. Only {@link
- * OdsaOperation#OPERATION_TYPE_ACTIVATE_SERVICE} and {@link
- * OdsaOperation#OPERATION_TYPE_DEACTIVATE_SERVICE} are allowed.
+ * EsimOdsaOperation#OPERATION_TYPE_ACTIVATE_SERVICE} and {@link
+ * EsimOdsaOperation#OPERATION_TYPE_DEACTIVATE_SERVICE} are
+ * allowed.
* @return The builder.
*/
@NonNull
- public abstract Builder setOperationType(@OperationType int operationType);
+ public abstract Builder setOperationType(@OdsaOperationType int operationType);
/**
* Sets the unique identifier of the companion device, like IMEI. Used by HTTP parameter
@@ -235,14 +237,14 @@ public final class ManageServiceOperation {
@AutoValue
public abstract static class ManageServiceResponse extends OdsaResponse {
/** Service status. */
- @ServiceStatus
+ @OdsaServiceStatus
public abstract int serviceStatus();
/** Returns a new {@link ManageServiceResponse.Builder} object. */
@NonNull
public static Builder builder() {
return new AutoValue_ManageServiceOperation_ManageServiceResponse.Builder()
- .setServiceStatus(OdsaOperation.SERVICE_STATUS_UNKNOWN);
+ .setServiceStatus(EsimOdsaOperation.SERVICE_STATUS_UNKNOWN);
}
/** Builder */
@@ -255,7 +257,7 @@ public final class ManageServiceOperation {
* @return The builder.
*/
@NonNull
- public abstract Builder setServiceStatus(@ServiceStatus int serviceStatus);
+ public abstract Builder setServiceStatus(@OdsaServiceStatus int serviceStatus);
/** Build the {@link ManageServiceResponse} object. */
@NonNull
diff --git a/java/com/android/libraries/entitlement/odsa/ManageSubscriptionOperation.java b/java/com/android/libraries/entitlement/odsa/ManageSubscriptionOperation.java
index 256f851..8c06b5f 100644
--- a/java/com/android/libraries/entitlement/odsa/ManageSubscriptionOperation.java
+++ b/java/com/android/libraries/entitlement/odsa/ManageSubscriptionOperation.java
@@ -20,8 +20,9 @@ import androidx.annotation.IntDef;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.libraries.entitlement.odsa.OdsaOperation.CompanionService;
-import com.android.libraries.entitlement.odsa.OdsaOperation.OperationType;
+import com.android.libraries.entitlement.EsimOdsaOperation;
+import com.android.libraries.entitlement.EsimOdsaOperation.CompanionService;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaOperationType;
import com.android.libraries.entitlement.utils.HttpConstants;
import com.android.libraries.entitlement.utils.HttpConstants.ContentType;
import com.android.libraries.entitlement.utils.Ts43Constants;
@@ -58,7 +59,7 @@ public final class ManageSubscriptionOperation {
* Returns the detailed type of the eSIM ODSA operation. Used by HTTP parameter
* {@code operation_type}.
*/
- @OperationType
+ @OdsaOperationType
public abstract int operationType();
/**
@@ -219,13 +220,13 @@ public final class ManageSubscriptionOperation {
public static Builder builder() {
return new AutoValue_ManageSubscriptionOperation_ManageSubscriptionRequest.Builder()
.setAppId(Ts43Constants.APP_UNKNOWN)
- .setOperationType(OdsaOperation.OPERATION_TYPE_NOT_SET)
+ .setOperationType(EsimOdsaOperation.OPERATION_TYPE_NOT_SET)
.setCompanionTerminalId("")
.setCompanionTerminalVendor("")
.setCompanionTerminalModel("")
.setCompanionTerminalSoftwareVersion("")
.setCompanionTerminalFriendlyName("")
- .setCompanionTerminalService(OdsaOperation.COMPANION_SERVICE_UNKNOWN)
+ .setCompanionTerminalService(EsimOdsaOperation.COMPANION_SERVICE_UNKNOWN)
.setCompanionTerminalIccid("")
.setCompanionTerminalEid("")
.setTerminalIccid("")
@@ -266,7 +267,7 @@ public final class ManageSubscriptionOperation {
* @return The builder.
*/
@NonNull
- public abstract Builder setOperationType(@OperationType int operationType);
+ public abstract Builder setOperationType(@OdsaOperationType int operationType);
/**
* Sets the unique identifier of the companion device, like IMEI. Used by HTTP parameter
@@ -613,9 +614,9 @@ public final class ManageSubscriptionOperation {
* URL refers to web views responsible for a certain action on the eSIM device subscription.
* The
* Service Provider can provide different URL based on the operation_type input parameter
- * ({@link OdsaOperation#OPERATION_TYPE_SUBSCRIBE}, {@link
- * OdsaOperation#OPERATION_TYPE_UNSUBSCRIBE}, {@link
- * OdsaOperation#OPERATION_TYPE_CHANGE_SUBSCRIPTION}).
+ * ({@link EsimOdsaOperation#OPERATION_TYPE_SUBSCRIBE}, {@link
+ * EsimOdsaOperation#OPERATION_TYPE_UNSUBSCRIBE}, {@link
+ * EsimOdsaOperation#OPERATION_TYPE_CHANGE_SUBSCRIPTION}).
*
* <p>{@code null} if {@link #subscriptionResult()} is not {@link
* #SUBSCRIPTION_RESULT_CONTINUE_TO_WEBSHEET}.
@@ -679,9 +680,9 @@ public final class ManageSubscriptionOperation {
* @param url URL refers to web views responsible for a certain action on the eSIM
* device subscription. The Service Provider can provide different URL based
* on the operation_type input parameter (
- * {@link OdsaOperation#OPERATION_TYPE_SUBSCRIBE}, {@link
- * OdsaOperation#OPERATION_TYPE_UNSUBSCRIBE}, {@link
- * OdsaOperation#OPERATION_TYPE_CHANGE_SUBSCRIPTION}).
+ * {@link EsimOdsaOperation#OPERATION_TYPE_SUBSCRIBE}, {@link
+ * EsimOdsaOperation#OPERATION_TYPE_UNSUBSCRIBE}, {@link
+ * EsimOdsaOperation#OPERATION_TYPE_CHANGE_SUBSCRIPTION}).
* @return The builder.
*/
@NonNull
diff --git a/java/com/android/libraries/entitlement/odsa/OdsaOperation.java b/java/com/android/libraries/entitlement/odsa/OdsaOperation.java
deleted file mode 100644
index 287b14b..0000000
--- a/java/com/android/libraries/entitlement/odsa/OdsaOperation.java
+++ /dev/null
@@ -1,188 +0,0 @@
-/*
- * Copyright (C) 2021 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.libraries.entitlement.odsa;
-
-import androidx.annotation.IntDef;
-import androidx.annotation.StringDef;
-
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-
-/**
- * HTTP request parameters specific to on device service activation (ODSA). See GSMA spec TS.43
- * section 6.2.
- */
-public interface OdsaOperation {
- /** ODSA operation unknown. For initialization only. */
- String OPERATION_UNKNOWN = "";
-
- /** ODSA operation: CheckEligibility. */
- String OPERATION_CHECK_ELIGIBILITY = "CheckEligibility";
-
- /** ODSA operation: ManageSubscription. */
- String OPERATION_MANAGE_SUBSCRIPTION = "ManageSubscription";
-
- /** ODSA operation: ManageService. */
- String OPERATION_MANAGE_SERVICE = "ManageService";
-
- /** ODSA operation: AcquireConfiguration. */
- String OPERATION_ACQUIRE_CONFIGURATION = "AcquireConfiguration";
-
- /** ODSA operation: AcquireTemporaryToken. */
- String OPERATION_ACQUIRE_TEMPORARY_TOKEN = "AcquireTemporaryToken";
-
- /** ODSA operation: GetPhoneNumber */
- String OPERATION_GET_PHONE_NUMBER = "GetPhoneNumber";
-
- /** ODSA operation: AcquirePlan */
- String OPERATION_ACQUIRE_PLAN = "AcquirePlan";
-
- @Retention(RetentionPolicy.SOURCE)
- @StringDef({
- OPERATION_UNKNOWN,
- OPERATION_CHECK_ELIGIBILITY,
- OPERATION_MANAGE_SUBSCRIPTION,
- OPERATION_MANAGE_SERVICE,
- OPERATION_ACQUIRE_CONFIGURATION,
- OPERATION_ACQUIRE_PLAN,
- OPERATION_ACQUIRE_TEMPORARY_TOKEN,
- OPERATION_GET_PHONE_NUMBER
- })
- public @interface Operation {
- }
-
- /** eSIM device’s service is unknown. */
- int SERVICE_STATUS_UNKNOWN = -1;
-
- /** eSIM device’s service is activated. */
- int SERVICE_STATUS_ACTIVATED = 1;
-
- /** eSIM device’s service is being activated. */
- int SERVICE_STATUS_ACTIVATING = 2;
-
- /** eSIM device’s service is not activated. */
- int SERVICE_STATUS_DEACTIVATED = 3;
-
- /** eSIM device’s service is not activated and the associated ICCID should not be reused. */
- int SERVICE_STATUS_DEACTIVATED_NO_REUSE = 4;
-
- @Retention(RetentionPolicy.SOURCE)
- @IntDef({
- SERVICE_STATUS_UNKNOWN,
- SERVICE_STATUS_ACTIVATED,
- SERVICE_STATUS_ACTIVATING,
- SERVICE_STATUS_DEACTIVATED,
- SERVICE_STATUS_DEACTIVATED_NO_REUSE
- })
- @interface ServiceStatus {
- }
-
- /** Indicates that operation_type is not set. */
- int OPERATION_TYPE_NOT_SET = -1;
-
- /** To activate a subscription, used by {@link #OPERATION_MANAGE_SUBSCRIPTION}. */
- int OPERATION_TYPE_SUBSCRIBE = 0;
-
- /** To cancel a subscription, used by {@link #OPERATION_MANAGE_SUBSCRIPTION}. */
- int OPERATION_TYPE_UNSUBSCRIBE = 1;
-
- /** To manage an existing subscription, for {@link #OPERATION_MANAGE_SUBSCRIPTION}. */
- int OPERATION_TYPE_CHANGE_SUBSCRIPTION = 2;
-
- /**
- * To transfer a subscription from an existing device, used by {@link
- * #OPERATION_MANAGE_SUBSCRIPTION}.
- */
- int OPERATION_TYPE_TRANSFER_SUBSCRIPTION = 3;
-
- /**
- * To inform the network of a subscription update, used by
- * {@link #OPERATION_MANAGE_SUBSCRIPTION}.
- */
- int OPERATION_TYPE_UPDATE_SUBSCRIPTION = 4;
-
- /** To activate a service, used by {@link #OPERATION_MANAGE_SERVICE}. */
- int OPERATION_TYPE_ACTIVATE_SERVICE = 10;
-
- /** To deactivate a service, used by {@link #OPERATION_MANAGE_SERVICE}. */
- int OPERATION_TYPE_DEACTIVATE_SERVICE = 11;
-
- @Retention(RetentionPolicy.SOURCE)
- @IntDef({
- OPERATION_TYPE_NOT_SET,
- OPERATION_TYPE_SUBSCRIBE,
- OPERATION_TYPE_UNSUBSCRIBE,
- OPERATION_TYPE_CHANGE_SUBSCRIPTION,
- OPERATION_TYPE_TRANSFER_SUBSCRIPTION,
- OPERATION_TYPE_UPDATE_SUBSCRIPTION,
- OPERATION_TYPE_ACTIVATE_SERVICE,
- OPERATION_TYPE_DEACTIVATE_SERVICE
- })
- @interface OperationType {
- }
-
- /** Operation result unknown. */
- int OPERATION_RESULT_UNKNOWN = -1;
-
- /** Operation was a success. */
- int OPERATION_RESULT_SUCCESS = 1;
-
- /** There was a general error during processing. */
- int OPERATION_RESULT_ERROR_GENERAL = 100;
-
- /** An invalid operation value was provided in request. */
- int OPERATION_RESULT_ERROR_INVALID_OPERATION = 101;
-
- /** An invalid parameter name or value was provided in request. */
- int OPERATION_RESULT_ERROR_INVALID_PARAMETER = 102;
-
- /**
- * The optional operation is not supported by the carrier. Device should continue with the flow.
- * This error only applies to optional operations (for example ManageService).
- */
- int OPERATION_RESULT_WARNING_NOT_SUPPORTED_OPERATION = 103;
-
- @Retention(RetentionPolicy.SOURCE)
- @IntDef({
- OPERATION_RESULT_UNKNOWN,
- OPERATION_RESULT_SUCCESS,
- OPERATION_RESULT_ERROR_GENERAL,
- OPERATION_RESULT_ERROR_INVALID_OPERATION,
- OPERATION_RESULT_ERROR_INVALID_PARAMETER,
- OPERATION_RESULT_WARNING_NOT_SUPPORTED_OPERATION
- })
- @interface OperationResult {
- }
-
- /** Companion service unknown. For initialization only. */
- String COMPANION_SERVICE_UNKNOWN = "";
-
- /** Indicates the companion device carries the same MSISDN as the primary device. */
- String COMPANION_SERVICE_SHARED_NUMBER = "SharedNumber";
-
- /** Indicates the companion device carries a different MSISDN as the primary device. */
- String COMPANION_SERVICE_DIFFERENT_NUMBER = "DiffNumber";
-
- @Retention(RetentionPolicy.SOURCE)
- @StringDef({
- COMPANION_SERVICE_UNKNOWN,
- COMPANION_SERVICE_SHARED_NUMBER,
- COMPANION_SERVICE_DIFFERENT_NUMBER
- })
- @interface CompanionService {
- }
-}
diff --git a/java/com/android/libraries/entitlement/odsa/OdsaResponse.java b/java/com/android/libraries/entitlement/odsa/OdsaResponse.java
index 7f59abe..18142c6 100644
--- a/java/com/android/libraries/entitlement/odsa/OdsaResponse.java
+++ b/java/com/android/libraries/entitlement/odsa/OdsaResponse.java
@@ -19,14 +19,14 @@ package com.android.libraries.entitlement.odsa;
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
-import com.android.libraries.entitlement.odsa.OdsaOperation.OperationResult;
+import com.android.libraries.entitlement.EsimOdsaOperation.OdsaOperationResult;
import java.net.URL;
/** ODSA general response described in GSMA Service Entitlement Configuration section 6.5.1. */
public abstract class OdsaResponse {
/** Operation result. */
- @OperationResult
+ @OdsaOperationResult
public abstract int operationResult();
/**
@@ -52,7 +52,7 @@ public abstract class OdsaResponse {
* @return The builder.
*/
@NonNull
- public abstract Builder setOperationResult(@OperationResult int operationResult);
+ public abstract Builder setOperationResult(@OdsaOperationResult int operationResult);
/**
* Set the URL to the web view to user on the reason(s) why the authentication failed.