Add stubs for hiddenapi

Adds stubs for ojluni classes some of whose hidden members are used by
applications. Each such member is annotated with the UnsupportedAppUsage
annotation.

The stubs are built as part of the core-oj-hiddenapi target from which
the build will extract information about the hidden class members that
are used by applications.

This was tested by making and then manually checking that the generated
out/target/common/obj/PACKAGING/hiddenapi-light-greylist.txt was the
same (after sorting) before and after this change.

Test: see above
Bug: 117818301
Change-Id: Icfe773e00ba1f96a379b705f26ef631ec34fee5e
diff --git a/JavaLibrary.bp b/JavaLibrary.bp
index 45bfba7..3e5367a 100644
--- a/JavaLibrary.bp
+++ b/JavaLibrary.bp
@@ -255,6 +255,23 @@
     ],
 }
 
+// Provided solely to contribute information about which hidden parts of the
+// core-oj API are used by apps.
+java_library {
+    name: "core-oj-hiddenapi",
+    defaults: ["libcore_java_defaults"],
+    compile_dex: true,
+
+    srcs: [":openjdk_hiddenapi_javadoc_files"],
+
+    no_standard_libs: true,
+    libs: ["core-all"],
+    system_modules: "core-all-system-modules",
+    openjdk9: {
+        javacflags: ["--patch-module=java.base=."],
+    },
+}
+
 //
 // Guaranteed unstripped versions of core-oj and core-libart.
 //