module(
    name = "grpc-java",
    compatibility_level = 0,
    repo_name = "io_grpc_grpc_java",
    version = "1.68.1",  # CURRENT_GRPC_VERSION
)

# GRPC_DEPS_START
IO_GRPC_GRPC_JAVA_ARTIFACTS = [
    "com.google.android:annotations:4.1.1.4",
    "com.google.api.grpc:proto-google-common-protos:2.29.0",
    "com.google.auth:google-auth-library-credentials:1.23.0",
    "com.google.auth:google-auth-library-oauth2-http:1.23.0",
    "com.google.auto.value:auto-value-annotations:1.11.0",
    "com.google.auto.value:auto-value:1.11.0",
    "com.google.code.findbugs:jsr305:3.0.2",
    "com.google.code.gson:gson:2.11.0",
    "com.google.errorprone:error_prone_annotations:2.28.0",
    "com.google.guava:failureaccess:1.0.1",
    "com.google.guava:guava:33.2.1-android",
    "com.google.j2objc:j2objc-annotations:3.0.0",
    "com.google.re2j:re2j:1.7",
    "com.google.truth:truth:1.4.2",
    "com.squareup.okhttp:okhttp:2.7.5",
    "com.squareup.okio:okio:2.10.0",  # 3.0+ needs swapping to -jvm; need work to avoid flag-day
    "io.netty:netty-buffer:4.1.110.Final",
    "io.netty:netty-codec-http2:4.1.110.Final",
    "io.netty:netty-codec-http:4.1.110.Final",
    "io.netty:netty-codec-socks:4.1.110.Final",
    "io.netty:netty-codec:4.1.110.Final",
    "io.netty:netty-common:4.1.110.Final",
    "io.netty:netty-handler-proxy:4.1.110.Final",
    "io.netty:netty-handler:4.1.110.Final",
    "io.netty:netty-resolver:4.1.110.Final",
    "io.netty:netty-tcnative-boringssl-static:2.0.65.Final",
    "io.netty:netty-tcnative-classes:2.0.65.Final",
    "io.netty:netty-transport-native-epoll:jar:linux-x86_64:4.1.110.Final",
    "io.netty:netty-transport-native-unix-common:4.1.110.Final",
    "io.netty:netty-transport:4.1.110.Final",
    "io.opencensus:opencensus-api:0.31.0",
    "io.opencensus:opencensus-contrib-grpc-metrics:0.31.0",
    "io.perfmark:perfmark-api:0.27.0",
    "junit:junit:4.13.2",
    "org.apache.tomcat:annotations-api:6.0.53",
    "org.checkerframework:checker-qual:3.12.0",
    "org.codehaus.mojo:animal-sniffer-annotations:1.24",
]
# GRPC_DEPS_END

bazel_dep(name = "bazel_skylib", version = "1.7.1")
bazel_dep(name = "googleapis", repo_name = "com_google_googleapis", version = "0.0.0-20240819-fe8ba054a")
# CEL Spec may be removed when cncf/xds MODULE is no longer using protobuf 27.x
bazel_dep(name = "cel-spec", repo_name = "dev_cel", version = "0.15.0")
bazel_dep(name = "grpc", repo_name = "com_github_grpc_grpc", version = "1.66.0.bcr.2")
bazel_dep(name = "grpc-proto", repo_name = "io_grpc_grpc_proto", version = "0.0.0-20240627-ec30f58")
bazel_dep(name = "protobuf", repo_name = "com_google_protobuf", version = "23.1")
bazel_dep(name = "rules_cc", version = "0.0.9")
bazel_dep(name = "rules_java", version = "5.3.5")
bazel_dep(name = "rules_go", repo_name = "io_bazel_rules_go", version = "0.46.0")
bazel_dep(name = "rules_jvm_external", version = "6.0")
bazel_dep(name = "rules_proto", version = "5.3.0-21.7")

non_module_deps = use_extension("//:repositories.bzl", "grpc_java_repositories_extension")

use_repo(
    non_module_deps,
    "com_github_cncf_xds",
    "envoy_api",
)

grpc_repo_deps_ext = use_extension("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_repo_deps_ext")

use_repo(
    grpc_repo_deps_ext,
    "com_envoyproxy_protoc_gen_validate",
    "opencensus_proto",
)

maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")

maven.install(
    artifacts = IO_GRPC_GRPC_JAVA_ARTIFACTS,
    repositories = [
        "https://repo.maven.apache.org/maven2/",
    ],
    strict_visibility = True,
)

use_repo(maven, "maven")

maven.override(
    coordinates = "com.google.protobuf:protobuf-java",
    target = "@com_google_protobuf//:protobuf_java",
)

maven.override(
    coordinates = "com.google.protobuf:protobuf-java-util",
    target = "@com_google_protobuf//:protobuf_java_util",
)

maven.override(
    coordinates = "com.google.protobuf:protobuf-javalite",
    target = "@com_google_protobuf//:protobuf_javalite",
)

maven.override(
    coordinates = "io.grpc:grpc-alts",
    target = "@io_grpc_grpc_java//alts",
)

maven.override(
    coordinates = "io.grpc:grpc-api",
    target = "@io_grpc_grpc_java//api",
)

maven.override(
    coordinates = "io.grpc:grpc-auth",
    target = "@io_grpc_grpc_java//auth",
)

maven.override(
    coordinates = "io.grpc:grpc-census",
    target = "@io_grpc_grpc_java//census",
)

maven.override(
    coordinates = "io.grpc:grpc-context",
    target = "@io_grpc_grpc_java//context",
)

maven.override(
    coordinates = "io.grpc:grpc-core",
    target = "@io_grpc_grpc_java//core:core_maven",
)

maven.override(
    coordinates = "io.grpc:grpc-googleapis",
    target = "@io_grpc_grpc_java//googleapis",
)

maven.override(
    coordinates = "io.grpc:grpc-grpclb",
    target = "@io_grpc_grpc_java//grpclb",
)

maven.override(
    coordinates = "io.grpc:grpc-inprocess",
    target = "@io_grpc_grpc_java//inprocess",
)

maven.override(
    coordinates = "io.grpc:grpc-netty",
    target = "@io_grpc_grpc_java//netty",
)

maven.override(
    coordinates = "io.grpc:grpc-netty-shaded",
    target = "@io_grpc_grpc_java//netty:shaded_maven",
)

maven.override(
    coordinates = "io.grpc:grpc-okhttp",
    target = "@io_grpc_grpc_java//okhttp",
)

maven.override(
    coordinates = "io.grpc:grpc-protobuf",
    target = "@io_grpc_grpc_java//protobuf",
)

maven.override(
    coordinates = "io.grpc:grpc-protobuf-lite",
    target = "@io_grpc_grpc_java//protobuf-lite",
)

maven.override(
    coordinates = "io.grpc:grpc-rls",
    target = "@io_grpc_grpc_java//rls",
)

maven.override(
    coordinates = "io.grpc:grpc-services",
    target = "@io_grpc_grpc_java//services:services_maven",
)

maven.override(
    coordinates = "io.grpc:grpc-stub",
    target = "@io_grpc_grpc_java//stub",
)

maven.override(
    coordinates = "io.grpc:grpc-testing",
    target = "@io_grpc_grpc_java//testing",
)

maven.override(
    coordinates = "io.grpc:grpc-xds",
    target = "@io_grpc_grpc_java//xds:xds_maven",
)

maven.override(
    coordinates = "io.grpc:grpc-util",
    target = "@io_grpc_grpc_java//util",
)

switched_rules = use_extension("@com_google_googleapis//:extensions.bzl", "switched_rules")

switched_rules.use_languages(java = True)
