Enable use of enumerated namespaces with aliases

Change-Id: I9b2fb67e53c388e36bee7f8b16109d295a8e9626
diff --git a/src/com/android/tradefed/config/OptionSetter.java b/src/com/android/tradefed/config/OptionSetter.java
index bcfdd23..2258f14 100644
--- a/src/com/android/tradefed/config/OptionSetter.java
+++ b/src/com/android/tradefed/config/OptionSetter.java
@@ -699,6 +699,13 @@
                     OptionClass.class);
             addNameToMap(optionMap, optionSource, String.format("%s%c%s", classAnnotation.alias(),
                     NAMESPACE_SEPARATOR, name), field);
+
+            // Allows use of an enumerated namespace, to enable options to map to specific instances
+            // of a class alias, rather than just to all instances of that particular alias.
+            // Example option name: alias:2:option-name
+            addNameToMap(optionMap, optionSource, String.format("%s%c%d%c%s",
+                    classAnnotation.alias(), NAMESPACE_SEPARATOR, index, NAMESPACE_SEPARATOR, name),
+                    field);
         }
 
         // Allows use of a className-delimited namespace.