Don't reference class constant used only reflectively

This is causing us to have a reference to the Providers through the
annotation, which means we have incomplete dependencies in the exclude
deps version.

Change-Id: If197d4abf579159a32a09f2a4a14f63b65a1c9bf
diff --git a/src/main/java/com/android/tools/r8/threading/ThreadingModule.java b/src/main/java/com/android/tools/r8/threading/ThreadingModule.java
index 1525e70..7e374c4 100644
--- a/src/main/java/com/android/tools/r8/threading/ThreadingModule.java
+++ b/src/main/java/com/android/tools/r8/threading/ThreadingModule.java
@@ -10,8 +10,6 @@
 import com.android.tools.r8.keepanno.annotations.MemberAccessFlags;
 import com.android.tools.r8.keepanno.annotations.UsedByReflection;
 import com.android.tools.r8.keepanno.annotations.UsesReflection;
-import com.android.tools.r8.threading.providers.blocking.ThreadingModuleBlockingProvider;
-import com.android.tools.r8.threading.providers.singlethreaded.ThreadingModuleSingleThreadedProvider;
 import java.util.List;
 import java.util.concurrent.Callable;
 import java.util.concurrent.ExecutionException;
@@ -43,20 +41,20 @@
     // Splitting up the names to make reflective identification unlikely.
     // We explicitly don't want R8 to optimize out the reflective lookup.
     private static final String PACKAGE = "com.android.tools.r8.threading.providers";
-    private static final String[] IMPLEMENTATIONS = {
-      "blocking.ThreadingModuleBlockingProvider",
-      "singlethreaded.ThreadingModuleSingleThreadedProvider"
-    };
+    private static final String BLOCKING_PROVIDER = "blocking.ThreadingModuleBlockingProvider";
+    private static final String SINGLE_THREADED_PROVIDER =
+        "singlethreaded.ThreadingModuleSingleThreadedProvider";
+    private static final String[] IMPLEMENTATIONS = {BLOCKING_PROVIDER, SINGLE_THREADED_PROVIDER};
 
     @UsesReflection({
       @KeepTarget(
           kind = KeepItemKind.CLASS_AND_MEMBERS,
-          classConstant = ThreadingModuleBlockingProvider.class,
+          className = PACKAGE + "." + "blocking.ThreadingModuleBlockingProvider",
           methodName = "<init>",
           methodParameters = {}),
       @KeepTarget(
           kind = KeepItemKind.CLASS_AND_MEMBERS,
-          classConstant = ThreadingModuleSingleThreadedProvider.class,
+          className = PACKAGE + "." + "singlethreaded.ThreadingModuleSingleThreadedProvider",
           methodName = "<init>",
           methodParameters = {})
     })