Merge "Create a public setUp() method for metric collectors." am: d8df094938

Original change: https://android-review.googlesource.com/c/platform/platform_testing/+/1915119

Change-Id: I8d7de76a7ba288a041ccfec10e768bf2469622c7
diff --git a/libraries/device-collectors/src/main/java/android/device/collectors/BaseMetricListener.java b/libraries/device-collectors/src/main/java/android/device/collectors/BaseMetricListener.java
index ae878ae..48a61e0 100644
--- a/libraries/device-collectors/src/main/java/android/device/collectors/BaseMetricListener.java
+++ b/libraries/device-collectors/src/main/java/android/device/collectors/BaseMetricListener.java
@@ -118,8 +118,7 @@
 
     @Override
     public final void testRunStarted(Description description) throws Exception {
-        parseArguments();
-        setupAdditionalArgs();
+        setUp();
         if (!mLogOnly) {
             try {
                 mRunData = createDataRecord();
@@ -207,6 +206,17 @@
     }
 
     /**
+     * Set up the metric collector.
+     *
+     * <p>If another class is invoking the metric collector's callbacks directly, it should call
+     * this method to make sure that the metric collector is set up properly.
+     */
+    public final void setUp() {
+        parseArguments();
+        setupAdditionalArgs();
+    }
+
+    /**
      * Create a {@link DataRecord}. Exposed for testing.
      */
     @VisibleForTesting