blob: 3ce6480d4f639bbf6e195c631bb440380af947fc [file]
load("//java:java_grpc_compile.bzl", "java_grpc_compile")
def java_grpc_library(**kwargs):
# Compile protos
name_pb = kwargs.get("name") + "_pb"
java_grpc_compile(
name = name_pb,
**{k: v for (k, v) in kwargs.items() if k in ("deps", "verbose")} # Forward args
)
# Create java library
native.java_library(
name = kwargs.get("name"),
srcs = [name_pb],
deps = GRPC_DEPS,
runtime_deps = ["@io_grpc_grpc_java//netty"],
exports = GRPC_DEPS,
visibility = kwargs.get("visibility"),
)
GRPC_DEPS = [
"@com_google_guava_guava//jar",
"@com_google_protobuf//:protobuf_java",
"@com_google_protobuf//:protobuf_java_util",
"@javax_annotation_javax_annotation_api//jar",
"@io_grpc_grpc_java//core",
"@io_grpc_grpc_java//protobuf",
"@io_grpc_grpc_java//stub",
]