# 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/background_service/test:test_support", ] sources = [ "blob_task_proxy.cc", "blob_task_proxy.h", "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_blockage_status.cc", "download_blockage_status.h", "download_driver.h", "download_service_impl.cc", "download_service_impl.h", "download_store.cc", "download_store.h", "driver_entry.cc", "driver_entry.h", "empty_file_monitor.cc", "empty_file_monitor.h", "empty_task_scheduler.cc", "empty_task_scheduler.h", "entry.cc", "entry.h", "entry_utils.cc", "entry_utils.h", "file_monitor.h", "file_monitor_impl.cc", "file_monitor_impl.h", "in_memory_download.cc", "in_memory_download.h", "in_memory_download_driver.cc", "in_memory_download_driver.h", "log_sink.h", "log_source.h", "logger_impl.cc", "logger_impl.h", "memory_tracker.h", "model.h", "model_impl.cc", "model_impl.h", "navigation_monitor_impl.cc", "navigation_monitor_impl.h", "noop_store.cc", "noop_store.h", "proto_conversions.cc", "proto_conversions.h", "scheduler/battery_status_listener.h", "scheduler/battery_status_listener_impl.cc", "scheduler/battery_status_listener_impl.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/network_status_listener_impl.cc", "scheduler/network_status_listener_impl.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/background_service/proto", "//components/download/public/background_service:public", "//components/leveldb_proto", "//net", "//services/network/public/cpp", "//storage/browser", ] 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_mac) { sources += [ "scheduler/battery_status_listener_mac.cc", "scheduler/battery_status_listener_mac.h", "scheduler/network_status_listener_mac.cc", "scheduler/network_status_listener_mac.h", ] } } 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/background_service" } } 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", "in_memory_download_driver_unittest.cc", "in_memory_download_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/background_service/proto", "//components/download/internal/background_service/test:test_support", "//components/download/public/background_service/test:test_support", "//components/leveldb_proto:test_support", "//services/network:test_support", "//storage/browser", "//testing/gmock", "//testing/gtest", ] }