load("@tink_java//tools/build_defs:javac.bzl", "JAVACOPTS_OSS")
load("@tink_java//tools:gen_java_test_rules.bzl", "gen_java_test_rules")

package(default_visibility = ["//:__subpackages__"])

licenses(["notice"])

java_library(
    name = "libtinkey",
    srcs = glob(
        [
            "src/main/**/*.java",
        ],
        exclude = [
            "src/main/java/com/google/crypto/tink/tinkey/Tinkey.java",
        ],
    ),
    javacopts = JAVACOPTS_OSS,
    runtime_deps = [
        # Tinkey automatically loads these KMS clients at runtime.
        "@tink_java//src/main/java/com/google/crypto/tink/integration/awskms:aws_kms_client",
        "@tink_java//src/main/java/com/google/crypto/tink/integration/gcpkms:gcp_kms_client",
    ],
    deps = [
        "@com_google_protobuf//:protobuf_javalite",
        "@maven//:args4j_args4j",
        "@tink_java//:awskms",
        "@tink_java//:cleartext_keyset_handle",
        "@tink_java//:gcpkms",
        "@tink_java//:subtle",
        "@tink_java//proto:tink_java_proto",
        "@tink_java//src/main/java/com/google/crypto/tink:aead",
        "@tink_java//src/main/java/com/google/crypto/tink:binary_keyset_reader",
        "@tink_java//src/main/java/com/google/crypto/tink:binary_keyset_writer",
        "@tink_java//src/main/java/com/google/crypto/tink:cleartext_keyset_handle",
        "@tink_java//src/main/java/com/google/crypto/tink:json_keyset_reader",
        "@tink_java//src/main/java/com/google/crypto/tink:json_keyset_writer",
        "@tink_java//src/main/java/com/google/crypto/tink:keyset_reader",
        "@tink_java//src/main/java/com/google/crypto/tink:keyset_writer",
        "@tink_java//src/main/java/com/google/crypto/tink:kms_clients",
        "@tink_java//src/main/java/com/google/crypto/tink:registry_cluster",
        "@tink_java//src/main/java/com/google/crypto/tink/aead:aead_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/daead:deterministic_aead_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/hybrid:hybrid_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/mac:mac_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/prf:prf_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/signature:signature_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/streamingaead:streaming_aead_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/subtle:validators",
    ],
)

java_binary(
    name = "tinkey",
    srcs = [
        "src/main/java/com/google/crypto/tink/tinkey/Tinkey.java",
    ],
    javacopts = JAVACOPTS_OSS,
    main_class = "com.google.crypto.tink.tinkey.Tinkey",
    visibility = ["//testing:__subpackages__"],
    deps = [
        ":libtinkey",
        "@maven//:args4j_args4j",
        "@tink_java//src/main/java/com/google/crypto/tink/config:tink_config",
    ],
)

# tests

java_library(
    name = "generator_test",
    testonly = 1,
    srcs = glob([
        "src/test/**/*.java",
    ]),
    deps = [
        ":libtinkey",
        "@com_google_protobuf//:protobuf_javalite",
        "@maven//:com_google_truth_truth",
        "@maven//:junit_junit",
        "@tink_java//proto:tink_java_proto",
        "@tink_java//src/main/java/com/google/crypto/tink:cleartext_keyset_handle",
        "@tink_java//src/main/java/com/google/crypto/tink:config",
        "@tink_java//src/main/java/com/google/crypto/tink:hybrid_decrypt",
        "@tink_java//src/main/java/com/google/crypto/tink:hybrid_encrypt",
        "@tink_java//src/main/java/com/google/crypto/tink:keyset_reader",
        "@tink_java//src/main/java/com/google/crypto/tink:public_key_sign",
        "@tink_java//src/main/java/com/google/crypto/tink:public_key_verify",
        "@tink_java//src/main/java/com/google/crypto/tink:registry_cluster",
        "@tink_java//src/main/java/com/google/crypto/tink/config:tink_config",
        "@tink_java//src/main/java/com/google/crypto/tink/hybrid:hybrid_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/mac:mac_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/signature:signature_key_templates",
        "@tink_java//src/main/java/com/google/crypto/tink/subtle:random",
        "@tink_java//src/main/java/com/google/crypto/tink/testing:test_util",
    ],
)

gen_java_test_rules(
    data = [
        "@tink_base//testdata:credentials",
    ],
    test_files = glob([
        "src/test/**/*Test.java",
    ]),
    deps = [
        ":generator_test",
    ],
)
