blob: e650086a52a918c3fb4e91533709cc62c8db0cfa [file] [log] [blame]
# Copyright 2017 The Chromium Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
if (is_android) {
import("//build/config/android/config.gni")
import("//build/config/android/rules.gni")
}
static_library("internal") {
visibility = [
":*",
"//components/download/content/factory",
"//components/download/content/internal",
"//components/download/internal/test:test_support",
]
sources = [
"client_set.cc",
"client_set.h",
"config.cc",
"config.h",
"controller.h",
"controller_impl.cc",
"controller_impl.h",
"debugging_client.cc",
"debugging_client.h",
"download_driver.h",
"download_service_impl.cc",
"download_service_impl.h",
"download_store.cc",
"download_store.h",
"driver_entry.cc",
"driver_entry.h",
"entry.cc",
"entry.h",
"entry_utils.cc",
"entry_utils.h",
"file_monitor.h",
"file_monitor_impl.cc",
"file_monitor_impl.h",
"log_sink.h",
"log_source.h",
"logger_impl.cc",
"logger_impl.h",
"model.h",
"model_impl.cc",
"model_impl.h",
"navigation_monitor_impl.cc",
"navigation_monitor_impl.h",
"proto_conversions.cc",
"proto_conversions.h",
"scheduler/device_status.cc",
"scheduler/device_status.h",
"scheduler/device_status_listener.cc",
"scheduler/device_status_listener.h",
"scheduler/network_status_listener.cc",
"scheduler/network_status_listener.h",
"scheduler/scheduler.h",
"scheduler/scheduler_impl.cc",
"scheduler/scheduler_impl.h",
"service_config_impl.cc",
"service_config_impl.h",
"startup_status.cc",
"startup_status.h",
"stats.cc",
"stats.h",
"store.h",
]
deps = [
"//base",
"//components/download/internal/proto",
"//components/download/public",
"//components/leveldb_proto",
"//net",
]
if (is_android) {
sources += [
"android/battery_status_listener_android.cc",
"android/battery_status_listener_android.h",
"android/network_status_listener_android.cc",
"android/network_status_listener_android.h",
]
deps += [ ":jni_headers" ]
}
}
if (is_android) {
android_library("internal_java") {
java_files = [
"android/java/src/org/chromium/components/download/internal/BatteryStatusListenerAndroid.java",
"android/java/src/org/chromium/components/download/internal/NetworkStatusListenerAndroid.java",
]
deps = [
"//base:base_java",
"//net/android:net_java",
]
}
generate_jni("jni_headers") {
visibility = [ ":*" ]
sources = [
"android/java/src/org/chromium/components/download/internal/BatteryStatusListenerAndroid.java",
"android/java/src/org/chromium/components/download/internal/NetworkStatusListenerAndroid.java",
]
jni_package = "components/download/internal"
}
}
source_set("unit_tests") {
testonly = true
sources = [
"client_set_unittest.cc",
"controller_impl_unittest.cc",
"download_service_impl_unittest.cc",
"download_store_unittest.cc",
"entry_utils_unittest.cc",
"file_monitor_unittest.cc",
"model_impl_unittest.cc",
"navigation_monitor_impl_unittests.cc",
"proto_conversions_unittest.cc",
"scheduler/device_status_listener_unittest.cc",
"scheduler/scheduler_impl_unittest.cc",
"service_config_impl_unittest.cc",
]
deps = [
":internal",
"//base/test:test_support",
"//components/download/internal/proto",
"//components/download/internal/test:test_support",
"//components/download/public/test:test_support",
"//components/leveldb_proto:test_support",
"//net:test_support",
"//testing/gmock",
"//testing/gtest",
]
}