# Copyright 2020 The Pigweed Authors
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may not
# use this file except in compliance with the License. You may obtain a copy of
# the License at
#
#     https://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations under
# the License.

load("//pw_build:pigweed.bzl", "pw_cc_library", "pw_cc_test")
load("//pw_protobuf_compiler:proto.bzl", "pw_proto_library")
load("@com_google_protobuf//:protobuf.bzl", "py_proto_library")
load("@rules_proto//proto:defs.bzl", "proto_library")
load("@rules_proto_grpc//:defs.bzl", "proto_plugin")

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

licenses(["notice"])

proto_library(
    name = "benchmark_proto",
    srcs = [
        "benchmark.proto",
    ],
)

pw_proto_library(
    name = "benchmark_cc",
    deps = [":benchmark_proto"],
)

pw_cc_library(
    name = "benchmark",
    srcs = ["benchmark.cc"],
    hdrs = ["public/pw_rpc/benchmark.h"],
    includes = ["public"],
    deps = [
        ":benchmark_cc.pwpb",
        ":benchmark_cc.raw_rpc",
    ],
)

# TODO(pwbug/507): Build this as a cc_binary and use it in integration tests.
filegroup(
    name = "test_rpc_server",
    srcs = ["test_rpc_server.cc"],
    # deps = [
    #     "system_server",
    #     ":benchmark",
    #     "//pw_log",
    # ],
)

pw_cc_library(
    name = "client_server",
    srcs = ["client_server.cc"],
    hdrs = ["public/pw_rpc/client_server.h"],
    deps = [":pw_rpc"],
)

pw_cc_library(
    name = "pw_rpc",
    srcs = [
        "call.cc",
        "channel.cc",
        "channel_list.cc",
        "client.cc",
        "client_call.cc",
        "endpoint.cc",
        "packet.cc",
        "packet_meta.cc",
        "public/pw_rpc/internal/call.h",
        "public/pw_rpc/internal/call_context.h",
        "public/pw_rpc/internal/channel.h",
        "public/pw_rpc/internal/channel_list.h",
        "public/pw_rpc/internal/client_call.h",
        "public/pw_rpc/internal/config.h",
        "public/pw_rpc/internal/endpoint.h",
        "public/pw_rpc/internal/hash.h",
        "public/pw_rpc/internal/lock.h",
        "public/pw_rpc/internal/log_config.h",
        "public/pw_rpc/internal/method.h",
        "public/pw_rpc/internal/method_info.h",
        "public/pw_rpc/internal/method_lookup.h",
        "public/pw_rpc/internal/method_union.h",
        "public/pw_rpc/internal/packet.h",
        "public/pw_rpc/internal/server_call.h",
        "public/pw_rpc/method_info.h",
        "public/pw_rpc/method_type.h",
        "public/pw_rpc/writer.h",
        "server.cc",
        "server_call.cc",
        "service.cc",
    ],
    hdrs = [
        "public/pw_rpc/channel.h",
        "public/pw_rpc/client.h",
        "public/pw_rpc/internal/service_client.h",
        "public/pw_rpc/method_info.h",
        "public/pw_rpc/packet_meta.h",
        "public/pw_rpc/server.h",
        "public/pw_rpc/service.h",
        "public/pw_rpc/service_id.h",
    ],
    includes = ["public"],
    deps = [
        ":internal_packet_cc.pwpb",
        "//pw_assert",
        "//pw_bytes",
        "//pw_containers",
        "//pw_containers:intrusive_list",
        "//pw_function",
        "//pw_log",
        "//pw_result",
        "//pw_span",
        "//pw_status",
        "//pw_sync:lock_annotations",
        "//pw_sync:mutex",
    ],
)

pw_cc_library(
    name = "synchronous_client_api",
    hdrs = [
        "public/pw_rpc/synchronous_call.h",
        "public/pw_rpc/synchronous_call_result.h",
    ],
    includes = ["public"],
    deps = [
        ":pw_rpc",
        "//pw_chrono:system_clock",
        "//pw_sync:timed_thread_notification",
    ],
)

pw_cc_library(
    name = "client_server_testing",
    hdrs = ["public/pw_rpc/internal/client_server_testing.h"],
    includes = ["public"],
    deps = [
        ":client_server",
        ":internal_test_utils",
        "//pw_bytes",
        "//pw_result",
    ],
)

pw_cc_library(
    name = "client_server_testing_threaded",
    hdrs = ["public/pw_rpc/internal/client_server_testing_threaded.h"],
    includes = ["public"],
    deps = [
        ":client_server_testing",
        "//pw_bytes",
        "//pw_result",
        "//pw_sync:binary_semaphore",
        "//pw_sync:lock_annotations",
        "//pw_sync:mutex",
        "//pw_thread:thread",
    ],
)

pw_cc_library(
    name = "test_helpers",
    hdrs = ["public/pw_rpc/test_helpers.h"],
    includes = ["public"],
    deps = [
        ":internal_test_utils",
        ":pw_rpc",
        "//pw_assert",
        "//pw_chrono:system_clock",
        "//pw_status",
        "//pw_sync:counting_semaphore",
        "//pw_thread:yield",
    ],
)

# thread_testing target is kept for backward compatibility.
# New code should use test_helpers instead.
pw_cc_library(
    name = "thread_testing",
    hdrs = ["public/pw_rpc/thread_testing.h"],
    includes = ["public"],
    deps = [":test_helpers"],
)

pw_cc_library(
    name = "internal_test_utils",
    srcs = ["fake_channel_output.cc"],
    hdrs = [
        "public/pw_rpc/internal/fake_channel_output.h",
        "public/pw_rpc/internal/method_impl_tester.h",
        "public/pw_rpc/internal/method_info_tester.h",
        "public/pw_rpc/internal/test_method.h",
        "public/pw_rpc/internal/test_method_context.h",
        "public/pw_rpc/internal/test_utils.h",
        "public/pw_rpc/payloads_view.h",
        "pw_rpc_private/fake_server_reader_writer.h",
    ],
    includes = [
        ".",
        "public",
    ],
    visibility = [":__subpackages__"],
    deps = [
        ":pw_rpc",
        "//pw_assert",
        "//pw_bytes",
        "//pw_containers:filtered_view",
        "//pw_containers:vector",
        "//pw_containers:wrapped_iterator",
        "//pw_rpc/raw:fake_channel_output",
        "//pw_span",
        "//pw_sync:mutex",
    ],
)

pw_cc_library(
    name = "integration_testing",
    srcs = [
        "integration_testing.cc",
    ],
    hdrs = [
        "public/pw_rpc/integration_test_socket_client.h",
        "public/pw_rpc/integration_testing.h",
    ],
    deps = [
        ":pw_rpc",
        "//pw_assert",
        "//pw_hdlc:pw_rpc",
        "//pw_hdlc:rpc_channel_output",
        "//pw_log",
        "//pw_stream:socket_stream",
        "//pw_unit_test",
        "//pw_unit_test:logging_event_handler",
    ],
)

# TODO(pwbug/507): Add the client integration test to the build.
filegroup(
    name = "client_integration_test",
    srcs = ["client_integration_test.cc"],
)

pw_cc_test(
    name = "call_test",
    srcs = [
        "call_test.cc",
    ],
    deps = [
        ":internal_test_utils",
        ":pw_rpc",
    ],
)

pw_cc_test(
    name = "channel_test",
    srcs = ["channel_test.cc"],
    deps = [
        ":internal_test_utils",
        ":pw_rpc",
    ],
)

pw_cc_test(
    name = "method_test",
    srcs = ["method_test.cc"],
    deps = [
        ":internal_test_utils",
        ":pw_rpc",
    ],
)

pw_cc_test(
    name = "packet_test",
    srcs = [
        "packet_test.cc",
    ],
    deps = [
        ":pw_rpc",
    ],
)

pw_cc_test(
    name = "packet_meta_test",
    srcs = [
        "packet_meta_test.cc",
    ],
    deps = [
        ":pw_rpc",
    ],
)

pw_cc_test(
    name = "client_server_test",
    srcs = ["client_server_test.cc"],
    deps = [
        ":client_server",
        ":internal_test_utils",
        "//pw_rpc/raw:server_api",
    ],
)

pw_cc_test(
    name = "server_test",
    srcs = [
        "server_test.cc",
    ],
    deps = [
        ":internal_test_utils",
        ":pw_rpc",
        "//pw_assert",
    ],
)

pw_cc_test(
    name = "service_test",
    srcs = [
        "service_test.cc",
    ],
    deps = [
        ":internal_test_utils",
        ":pw_rpc",
        "//pw_assert",
    ],
)

pw_cc_test(
    name = "fake_channel_output_test",
    srcs = ["fake_channel_output_test.cc"],
    deps = [":internal_test_utils"],
)

# TODO(b/234874064): Add test_helpers_test when it is possible to use .options
# in bazel build.
filegroup(
    name = "test_helpers_test",
    srcs = ["test_helpers_test.cc"],
)

proto_library(
    name = "internal_packet_proto",
    srcs = ["internal/packet.proto"],
    visibility = [":__subpackages__"],
)

java_lite_proto_library(
    name = "packet_proto_java_lite",
    deps = [":internal_packet_proto"],
)

py_proto_library(
    name = "internal_packet_proto_pb2",
    srcs = ["internal/packet.proto"],
)

pw_proto_library(
    name = "internal_packet_cc",
    deps = [":internal_packet_proto"],
)

proto_library(
    name = "pw_rpc_test_proto",
    srcs = [
        "pw_rpc_test_protos/no_package.proto",
        "pw_rpc_test_protos/test.proto",
    ],
    strip_import_prefix = "//pw_rpc",
)

pw_proto_library(
    name = "pw_rpc_test_cc",
    deps = [":pw_rpc_test_proto"],
)

proto_plugin(
    name = "pw_cc_plugin_raw",
    outputs = [
        "{protopath}.raw_rpc.pb.h",
    ],
    protoc_plugin_name = "raw_rpc",
    tool = "@pigweed//pw_rpc/py:plugin_raw",
    use_built_in_shell_environment = True,
    visibility = ["//visibility:public"],
)

proto_plugin(
    name = "pw_cc_plugin_nanopb_rpc",
    outputs = [
        "{protopath}.rpc.pb.h",
    ],
    protoc_plugin_name = "nanopb_rpc",
    tool = "@pigweed//pw_rpc/py:plugin_nanopb",
    use_built_in_shell_environment = True,
    visibility = ["//visibility:public"],
)

proto_plugin(
    name = "nanopb_plugin",
    options = [
        "--library-include-format='#include\"%s\"'",
    ],
    outputs = [
        "{protopath}.pb.h",
        "{protopath}.pb.c",
    ],
    separate_options_flag = True,
    tool = "@com_github_nanopb_nanopb//:bazel_generator",
    use_built_in_shell_environment = True,
    visibility = ["//visibility:public"],
)

proto_plugin(
    name = "pw_cc_plugin_pwpb_rpc",
    outputs = [
        "{protopath}.rpc.pwpb.h",
    ],
    protoc_plugin_name = "pwpb_rpc",
    tool = "@pigweed//pw_rpc/py:plugin_pwpb",
    use_built_in_shell_environment = True,
    visibility = ["//visibility:public"],
)

proto_library(
    name = "echo_proto",
    srcs = [
        "echo.proto",
    ],
)

pw_proto_library(
    name = "echo_cc",
    deps = [":echo_proto"],
    # TODO(tpudlik): We should provide echo.options to nanopb here, but the
    # current proto codegen implementation provides no mechanism for doing so.
)
