xref: /aosp_15_r20/external/sdk-platform-java/BUILD.bazel (revision 882aa7c72c3cd3b66e72a261bdd69b93f7de7670)
1*882aa7c7SMatt Gilbrideload("@rules_java//java:defs.bzl", "java_binary", "java_proto_library")
2*882aa7c7SMatt Gilbride
3*882aa7c7SMatt Gilbridepackage(default_visibility = ["//visibility:public"])
4*882aa7c7SMatt Gilbride
5*882aa7c7SMatt Gilbridejava_binary(
6*882aa7c7SMatt Gilbride    name = "protoc-gen-java_gapic",
7*882aa7c7SMatt Gilbride    main_class = "com.google.api.generator.Main",
8*882aa7c7SMatt Gilbride    runtime_deps = ["@maven//:com_google_api_gapic_generator_java"],
9*882aa7c7SMatt Gilbride)
10*882aa7c7SMatt Gilbride
11*882aa7c7SMatt Gilbride# Request dumper binary, which dumps the CodeGeneratorRequest to a file on disk
12*882aa7c7SMatt Gilbride# which will be identical to the one passed to the protoc-gen-java_gapic during
13*882aa7c7SMatt Gilbride# normal execution. The dumped file then can be used to run this gapic-generator
14*882aa7c7SMatt Gilbride# directly (instead of relying on protoc to start the process), which would give
15*882aa7c7SMatt Gilbride# much greater flexibility in terms of debugging features, like attaching a
16*882aa7c7SMatt Gilbride# debugger, easier work with stdout and stderr etc.
17*882aa7c7SMatt Gilbride#
18*882aa7c7SMatt Gilbride# Usage example, via the rule in a corresponding BUILD.bazel file:
19*882aa7c7SMatt Gilbride#
20*882aa7c7SMatt Gilbride# load("@gapic_generator_java//rules_java_gapic:java_gapic.bzl", "java_generator_request_dump")
21*882aa7c7SMatt Gilbride# java_generator_request_dump(
22*882aa7c7SMatt Gilbride#     name = "compute_small_request_dump",
23*882aa7c7SMatt Gilbride#     srcs = [":compute_small_proto_with_info"],
24*882aa7c7SMatt Gilbride#     transport = "rest",
25*882aa7c7SMatt Gilbride# )
26*882aa7c7SMatt Gilbride#
27*882aa7c7SMatt Gilbridejava_binary(
28*882aa7c7SMatt Gilbride    name = "protoc-gen-code_generator_request_dumper",
29*882aa7c7SMatt Gilbride    main_class = "com.google.api.generator.debug.CodeGeneratorRequestDumper",
30*882aa7c7SMatt Gilbride    runtime_deps = ["@maven//:com_google_api_gapic_generator_java"],
31*882aa7c7SMatt Gilbride)
32*882aa7c7SMatt Gilbride
33*882aa7c7SMatt Gilbride# A binary similar to protoc-gen-java_gapic but reads the CodeGeneratorRequest
34*882aa7c7SMatt Gilbride# directly from a file instead of relying on protoc to pipe it in.
35*882aa7c7SMatt Gilbride#
36*882aa7c7SMatt Gilbride# Usage example:
37*882aa7c7SMatt Gilbride#
38*882aa7c7SMatt Gilbride# bazel run code_generator_request_file_to_gapic_main desc-dump.bin dump.jar
39*882aa7c7SMatt Gilbride#
40*882aa7c7SMatt Gilbridejava_binary(
41*882aa7c7SMatt Gilbride    name = "code_generator_request_file_to_gapic_main",
42*882aa7c7SMatt Gilbride    main_class = "com.google.api.generator.debug.CodeGeneratorRequestFileToGapicMain",
43*882aa7c7SMatt Gilbride    runtime_deps = ["@maven//:com_google_api_gapic_generator_java"],
44*882aa7c7SMatt Gilbride)
45*882aa7c7SMatt Gilbride
46*882aa7c7SMatt Gilbride# google-java-format
47*882aa7c7SMatt Gilbridejava_binary(
48*882aa7c7SMatt Gilbride    name = "google_java_format_binary",
49*882aa7c7SMatt Gilbride    jvm_flags = ["-Xmx512m"],
50*882aa7c7SMatt Gilbride    main_class = "com.google.googlejavaformat.java.Main",
51*882aa7c7SMatt Gilbride    runtime_deps = ["@google_java_format_all_deps//jar"],
52*882aa7c7SMatt Gilbride)
53