grpc-java/services/BUILD.bazel

164 lines
4.7 KiB
Python
Raw Normal View History

load("@rules_jvm_external//:defs.bzl", "artifact")
load("//:java_grpc_library.bzl", "java_grpc_library")
package(default_visibility = ["//visibility:public"])
# Mirrors the dependencies included in the artifact on Maven Central for usage
# with maven_install's override_targets. Should only be used as a dep for
# pre-compiled binaries on Maven Central.
java_library(
name = "services_maven",
exports = [
":admin",
":channelz",
":health",
":healthlb",
":metrics",
":metrics_internal",
":reflection",
],
)
java_library(
name = "admin",
srcs = [
"src/main/java/io/grpc/services/AdminInterface.java",
],
deps = [
":channelz",
"//api",
artifact("com.google.code.findbugs:jsr305"),
],
)
java_library(
name = "metrics",
srcs = [
"src/main/java/io/grpc/services/CallMetricRecorder.java",
"src/main/java/io/grpc/services/MetricRecorder.java",
"src/main/java/io/grpc/services/MetricRecorderHelper.java",
"src/main/java/io/grpc/services/MetricReport.java",
],
deps = [
"//api",
"//context",
artifact("com.google.code.findbugs:jsr305"),
artifact("com.google.errorprone:error_prone_annotations"),
artifact("com.google.guava:guava"),
],
)
java_library(
name = "metrics_internal",
srcs = [
"src/main/java/io/grpc/services/InternalCallMetricRecorder.java",
"src/main/java/io/grpc/services/InternalMetricRecorder.java",
],
visibility = ["//:__subpackages__"],
deps = [
":metrics",
"//api",
"//context",
],
)
java_library(
name = "channelz",
srcs = [
"src/main/java/io/grpc/protobuf/services/ChannelzProtoUtil.java",
"src/main/java/io/grpc/protobuf/services/ChannelzService.java",
"src/main/java/io/grpc/services/ChannelzService.java",
],
deps = [
":_channelz_java_grpc",
"//api",
"//stub",
"@com_google_protobuf//:protobuf_java",
"@com_google_protobuf//:protobuf_java_util",
"@io_grpc_grpc_proto//:channelz_java_proto",
artifact("com.google.code.findbugs:jsr305"),
artifact("com.google.guava:guava"),
],
)
java_library(
name = "reflection",
srcs = [
"src/main/java/io/grpc/protobuf/services/ProtoReflectionService.java",
],
deps = [
":_reflection_java_grpc",
"//api",
"//protobuf",
"//stub",
"@com_google_protobuf//:protobuf_java",
"@com_google_protobuf//:protobuf_java_util",
"@io_grpc_grpc_proto//:reflection_java_proto_deprecated",
artifact("com.google.code.findbugs:jsr305"),
artifact("com.google.guava:guava"),
],
)
java_library(
name = "health",
srcs = [
"src/main/java/io/grpc/protobuf/services/HealthServiceImpl.java",
"src/main/java/io/grpc/protobuf/services/HealthStatusManager.java",
"src/main/java/io/grpc/services/HealthStatusManager.java",
],
deps = [
":_health_java_grpc",
"//api",
"//context",
"//stub",
"@io_grpc_grpc_proto//:health_java_proto",
artifact("com.google.code.findbugs:jsr305"),
artifact("com.google.guava:guava"),
],
)
java_library(
name = "healthlb",
srcs = [
"src/main/java/io/grpc/protobuf/services/HealthCheckingLoadBalancerFactory.java",
"src/main/java/io/grpc/protobuf/services/HealthCheckingLoadBalancerUtil.java",
"src/main/java/io/grpc/protobuf/services/internal/HealthCheckingRoundRobinLoadBalancerProvider.java",
],
resources = [
"src/main/resources/META-INF/services/io.grpc.LoadBalancerProvider",
],
deps = [
":_health_java_grpc",
"//api",
"//core:internal",
"//util",
"@io_grpc_grpc_proto//:health_java_proto",
artifact("com.google.code.findbugs:jsr305"),
artifact("com.google.guava:guava"),
],
)
# These shouldn't be here, but this is better than having
# a circular dependency on grpc-proto and grpc-java.
java_grpc_library(
name = "_reflection_java_grpc",
srcs = ["@io_grpc_grpc_proto//:reflection_proto_deprecated"],
visibility = ["//visibility:private"],
deps = ["@io_grpc_grpc_proto//:reflection_java_proto_deprecated"],
)
java_grpc_library(
name = "_channelz_java_grpc",
srcs = ["@io_grpc_grpc_proto//:channelz_proto"],
visibility = ["//visibility:private"],
deps = ["@io_grpc_grpc_proto//:channelz_java_proto"],
)
java_grpc_library(
name = "_health_java_grpc",
srcs = ["@io_grpc_grpc_proto//:health_proto"],
visibility = ["//visibility:private"],
deps = ["@io_grpc_grpc_proto//:health_java_proto"],
)