load("@build_bazel_rules_android//android:rules.bzl", "android_library")

licenses(["notice"])

package(default_visibility = ["//visibility:public"])

java_library(
    name = "deterministic_aead_key_templates",
    srcs = ["DeterministicAeadKeyTemplates.java"],
    deps = [
        ":aes_siv_key_manager",
        "//proto:aes_siv_java_proto",
        "//proto:tink_java_proto",
    ],
)

android_library(
    name = "deterministic_aead_key_templates-android",
    srcs = ["DeterministicAeadKeyTemplates.java"],
    deps = [
        ":aes_siv_key_manager-android",
        "//proto:aes_siv_java_proto_lite",
        "//proto:tink_java_proto_lite",
    ],
)

java_library(
    name = "deterministic_aead_factory",
    srcs = ["DeterministicAeadFactory.java"],
    deps = [
        ":deterministic_aead_wrapper",
        "//src/main/java/com/google/crypto/tink:deterministic_aead",
        "//src/main/java/com/google/crypto/tink:key_manager",
        "//src/main/java/com/google/crypto/tink:primitive_set",
        "//src/main/java/com/google/crypto/tink:registry_cluster",
    ],
)

android_library(
    name = "deterministic_aead_factory-android",
    srcs = ["DeterministicAeadFactory.java"],
    deps = [
        ":deterministic_aead_wrapper-android",
        "//src/main/java/com/google/crypto/tink:deterministic_aead",
        "//src/main/java/com/google/crypto/tink:key_manager-android",
        "//src/main/java/com/google/crypto/tink:primitive_set-android",
        "//src/main/java/com/google/crypto/tink:registry_cluster-android",
    ],
)

java_library(
    name = "deterministic_aead_config",
    srcs = ["DeterministicAeadConfig.java"],
    deps = [
        ":aes_siv_key_manager",
        ":deterministic_aead_wrapper",
        "//proto:config_java_proto",
    ],
)

android_library(
    name = "deterministic_aead_config-android",
    srcs = ["DeterministicAeadConfig.java"],
    deps = [
        ":aes_siv_key_manager-android",
        ":deterministic_aead_wrapper-android",
        "//proto:config_java_proto_lite",
    ],
)

java_library(
    name = "deterministic_aead_wrapper",
    srcs = ["DeterministicAeadWrapper.java"],
    deps = [
        "//src/main/java/com/google/crypto/tink:crypto_format",
        "//src/main/java/com/google/crypto/tink:deterministic_aead",
        "//src/main/java/com/google/crypto/tink:primitive_set",
        "//src/main/java/com/google/crypto/tink:primitive_wrapper",
        "//src/main/java/com/google/crypto/tink:registry_cluster",
        "//src/main/java/com/google/crypto/tink/subtle:bytes",
    ],
)

android_library(
    name = "deterministic_aead_wrapper-android",
    srcs = ["DeterministicAeadWrapper.java"],
    deps = [
        "//src/main/java/com/google/crypto/tink:crypto_format-android",
        "//src/main/java/com/google/crypto/tink:deterministic_aead",
        "//src/main/java/com/google/crypto/tink:primitive_set-android",
        "//src/main/java/com/google/crypto/tink:primitive_wrapper-android",
        "//src/main/java/com/google/crypto/tink:registry_cluster-android",
        "//src/main/java/com/google/crypto/tink/subtle:bytes",
    ],
)

java_library(
    name = "aes_siv_key_manager",
    srcs = ["AesSivKeyManager.java"],
    deps = [
        "//proto:aes_siv_java_proto",
        "//proto:tink_java_proto",
        "//src/main/java/com/google/crypto/tink:deterministic_aead",
        "//src/main/java/com/google/crypto/tink:key_template",
        "//src/main/java/com/google/crypto/tink:key_type_manager",
        "//src/main/java/com/google/crypto/tink:registry_cluster",
        "//src/main/java/com/google/crypto/tink/subtle:aes_siv",
        "//src/main/java/com/google/crypto/tink/subtle:random",
        "//src/main/java/com/google/crypto/tink/subtle:validators",
        "@com_google_protobuf//:protobuf_javalite",
    ],
)

android_library(
    name = "aes_siv_key_manager-android",
    srcs = ["AesSivKeyManager.java"],
    deps = [
        "//proto:aes_siv_java_proto_lite",
        "//proto:tink_java_proto_lite",
        "//src/main/java/com/google/crypto/tink:deterministic_aead",
        "//src/main/java/com/google/crypto/tink:key_template-android",
        "//src/main/java/com/google/crypto/tink:key_type_manager-android",
        "//src/main/java/com/google/crypto/tink:registry_cluster-android",
        "//src/main/java/com/google/crypto/tink/subtle:aes_siv",
        "//src/main/java/com/google/crypto/tink/subtle:random",
        "//src/main/java/com/google/crypto/tink/subtle:validators",
        "@com_google_protobuf//:protobuf_javalite",
    ],
)

# Deprecated rules, will be removed soon.

filegroup(
    name = "srcs",
    srcs = glob(
        [
            "*.java",
        ],
    ),
)

full_protos = [
    "//proto:aes_siv_java_proto",
    "//proto:common_java_proto",
    "//proto:config_java_proto",
    "//proto:tink_java_proto",
]

lite_protos = [
    "//proto:aes_siv_java_proto_lite",
    "//proto:common_java_proto_lite",
    "//proto:config_java_proto_lite",
    "//proto:tink_java_proto_lite",
]

java_library(
    name = "daead",
    srcs = [":srcs"],
    visibility = ["//visibility:public"],
    deps = full_protos + [
        "//src/main/java/com/google/crypto/tink",
        "//src/main/java/com/google/crypto/tink/subtle",
        "//src/main/java/com/google/crypto/tink/subtle:daead",
        "@com_google_protobuf//:protobuf_javalite",
    ],
)

java_library(
    name = "android",
    srcs = [":srcs"],
    visibility = ["//visibility:public"],
    deps = lite_protos + [
        "//src/main/java/com/google/crypto/tink:android",
        "//src/main/java/com/google/crypto/tink/subtle",
        "//src/main/java/com/google/crypto/tink/subtle:daead",
        "@com_google_protobuf//:protobuf_javalite",
    ],
)
