load("@rules_jvm_external//:defs.bzl", "artifact")
load("//java:defs.bzl", "java_library")

java_library(
    name = "distributor",
    srcs = glob(["*.java"]),
    visibility = [
        "//java/src/org/openqa/selenium/grid:__subpackages__",
        "//java/test/org/openqa/selenium/grid:__subpackages__",
    ],
    exports = [
        "//java/src/org/openqa/selenium/status",
    ],
    deps = [
        "//java/src/org/openqa/selenium:core",
        "//java/src/org/openqa/selenium/json",
        "//java/src/org/openqa/selenium/remote",
        "//java/src/org/openqa/selenium/events",
        "//java/src/org/openqa/selenium/grid/config",
        "//java/src/org/openqa/selenium/grid/data",
        "//java/src/org/openqa/selenium/grid/distributor/selector",
        "//java/src/org/openqa/selenium/grid/node",
        "//java/src/org/openqa/selenium/grid/node/remote",
        "//java/src/org/openqa/selenium/grid/security",
        "//java/src/org/openqa/selenium/grid/server",
        "//java/src/org/openqa/selenium/grid/sessionmap",
        "//java/src/org/openqa/selenium/grid/sessionqueue",
        # Default implementation of the session map. Loaded reflectively
        "//java/src/org/openqa/selenium/grid/sessionmap/remote",
        "//java/src/org/openqa/selenium/status",
        artifact("com.google.guava:guava"),
    ],
)
