Add host labels for metrics.

Bug: 140314815
Test: manually.
Merged-In: Idd97fa7105f6dca52c654c1539deea90308fc499
Change-Id: Idd97fa7105f6dca52c654c1539deea90308fc499
diff --git a/global_configuration/com/android/tradefed/host/HostOptions.java b/global_configuration/com/android/tradefed/host/HostOptions.java
index 8820eff..9e3c54c 100644
--- a/global_configuration/com/android/tradefed/host/HostOptions.java
+++ b/global_configuration/com/android/tradefed/host/HostOptions.java
@@ -21,7 +21,9 @@
 import com.android.tradefed.config.OptionClass;
 
 import java.io.File;
+import java.util.ArrayList;
 import java.util.HashMap;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -65,9 +67,10 @@
     )
     private Map<String, File> mJsonServiceAccountMap = new HashMap<>();
 
-    /**
-     * {@inheritDoc}
-     */
+    @Option(name = "label", description = "Labels to describe the host.")
+    private List<String> mLabels = new ArrayList<>();
+
+    /** {@inheritDoc} */
     @Override
     public Integer getConcurrentFlasherLimit() {
         return mConcurrentFlasherLimit;
@@ -108,4 +111,10 @@
     public void validateOptions() throws ConfigurationException {
         // Validation of host options
     }
+
+    /** {@inheritDoc} */
+    @Override
+    public List<String> getLabels() {
+        return new ArrayList<>(mLabels);
+    }
 }
diff --git a/global_configuration/com/android/tradefed/host/IHostOptions.java b/global_configuration/com/android/tradefed/host/IHostOptions.java
index eb36dda..fe8391f 100644
--- a/global_configuration/com/android/tradefed/host/IHostOptions.java
+++ b/global_configuration/com/android/tradefed/host/IHostOptions.java
@@ -21,6 +21,7 @@
 import com.android.tradefed.targetprep.DeviceFlashPreparer;
 
 import java.io.File;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -56,4 +57,7 @@
 
     /** Validate that the options set on {@link IHostOptions} are valid. */
     void validateOptions() throws ConfigurationException;
+
+    /** Get labels for the host. */
+    public List<String> getLabels();
 }