1# Copyright 2017 The Chromium Authors.All rights reserved. 2# Use of this source code is governed by a BSD - style license that can be 3# found in the LICENSE file. 4 5if (is_android) { 6 import("//build/config/android/rules.gni") 7} 8import("//third_party/protobuf/proto_library.gni") 9 10static_library("prefetch") { 11 sources = [ 12 "generate_page_bundle_request.cc", 13 "generate_page_bundle_request.h", 14 "get_operation_request.cc", 15 "get_operation_request.h", 16 "offline_metrics_collector.h", 17 "prefetch_background_task.cc", 18 "prefetch_background_task.h", 19 "prefetch_background_task_handler.h", 20 "prefetch_dispatcher.h", 21 "prefetch_dispatcher_impl.cc", 22 "prefetch_dispatcher_impl.h", 23 "prefetch_downloader.h", 24 "prefetch_downloader_impl.cc", 25 "prefetch_downloader_impl.h", 26 "prefetch_gcm_app_handler.cc", 27 "prefetch_gcm_app_handler.h", 28 "prefetch_gcm_handler.h", 29 "prefetch_importer.cc", 30 "prefetch_importer.h", 31 "prefetch_importer_impl.cc", 32 "prefetch_importer_impl.h", 33 "prefetch_network_request_factory.h", 34 "prefetch_network_request_factory_impl.cc", 35 "prefetch_network_request_factory_impl.h", 36 "prefetch_prefs.cc", 37 "prefetch_prefs.h", 38 "prefetch_proto_utils.cc", 39 "prefetch_proto_utils.h", 40 "prefetch_request_fetcher.cc", 41 "prefetch_request_fetcher.h", 42 "prefetch_server_urls.cc", 43 "prefetch_server_urls.h", 44 "prefetch_service.h", 45 "prefetch_service_impl.cc", 46 "prefetch_service_impl.h", 47 "prefetch_types.cc", 48 "prefetch_types.h", 49 "server_forbidden_check_request.cc", 50 "server_forbidden_check_request.h", 51 "store/prefetch_downloader_quota.cc", 52 "store/prefetch_downloader_quota.h", 53 "store/prefetch_store.cc", 54 "store/prefetch_store.h", 55 "store/prefetch_store_schema.cc", 56 "store/prefetch_store_schema.h", 57 "store/prefetch_store_utils.cc", 58 "store/prefetch_store_utils.h", 59 "suggested_articles_observer.cc", 60 "suggested_articles_observer.h", 61 "suggestions_provider.cc", 62 "suggestions_provider.h", 63 "tasks/add_unique_urls_task.cc", 64 "tasks/add_unique_urls_task.h", 65 "tasks/download_archives_task.cc", 66 "tasks/download_archives_task.h", 67 "tasks/download_cleanup_task.cc", 68 "tasks/download_cleanup_task.h", 69 "tasks/download_completed_task.cc", 70 "tasks/download_completed_task.h", 71 "tasks/finalize_dismissed_url_suggestion_task.cc", 72 "tasks/finalize_dismissed_url_suggestion_task.h", 73 "tasks/generate_page_bundle_reconcile_task.cc", 74 "tasks/generate_page_bundle_reconcile_task.h", 75 "tasks/generate_page_bundle_task.cc", 76 "tasks/generate_page_bundle_task.h", 77 "tasks/get_operation_task.cc", 78 "tasks/get_operation_task.h", 79 "tasks/get_visuals_info_task.cc", 80 "tasks/get_visuals_info_task.h", 81 "tasks/import_archives_task.cc", 82 "tasks/import_archives_task.h", 83 "tasks/import_cleanup_task.cc", 84 "tasks/import_cleanup_task.h", 85 "tasks/import_completed_task.cc", 86 "tasks/import_completed_task.h", 87 "tasks/mark_operation_done_task.cc", 88 "tasks/mark_operation_done_task.h", 89 "tasks/metrics_finalization_task.cc", 90 "tasks/metrics_finalization_task.h", 91 "tasks/page_bundle_update_task.cc", 92 "tasks/page_bundle_update_task.h", 93 "tasks/remove_url_task.cc", 94 "tasks/remove_url_task.h", 95 "tasks/sent_get_operation_cleanup_task.cc", 96 "tasks/sent_get_operation_cleanup_task.h", 97 "tasks/stale_entry_finalizer_task.cc", 98 "tasks/stale_entry_finalizer_task.h", 99 "thumbnail_fetcher.h", 100 "visuals_fetch_by_url.cc", 101 "visuals_fetch_by_url.h", 102 ] 103 104 public_deps = [ ":proto" ] 105 106 deps = [ 107 "//base", 108 "//components/download/public/background_service:public", 109 "//components/gcm_driver", 110 "//components/gcm_driver/common", 111 "//components/image_fetcher/core", 112 "//components/keyed_service/core", 113 "//components/ntp_snippets", 114 "//components/offline_pages/core", 115 "//components/offline_pages/core:switches", 116 "//components/offline_pages/task", 117 "//components/prefs", 118 "//components/variations:variations", 119 "//components/version_info", 120 "//google_apis", 121 "//net:net", 122 "//services/network/public/cpp:cpp", 123 "//sql:sql", 124 "//url", 125 ] 126} 127 128static_library("test_support") { 129 testonly = true 130 sources = [ 131 "fake_suggestions_provider.cc", 132 "fake_suggestions_provider.h", 133 "mock_prefetch_item_generator.cc", 134 "mock_prefetch_item_generator.h", 135 "mock_thumbnail_fetcher.cc", 136 "mock_thumbnail_fetcher.h", 137 "prefetch_item.cc", 138 "prefetch_item.h", 139 "prefetch_request_test_base.cc", 140 "prefetch_request_test_base.h", 141 "prefetch_service_test_taco.cc", 142 "prefetch_service_test_taco.h", 143 "store/prefetch_store_test_util.cc", 144 "store/prefetch_store_test_util.h", 145 "stub_prefetch_service.cc", 146 "stub_prefetch_service.h", 147 "tasks/prefetch_task_test_base.cc", 148 "tasks/prefetch_task_test_base.h", 149 "test_download_client.cc", 150 "test_download_client.h", 151 "test_download_service.cc", 152 "test_download_service.h", 153 "test_offline_metrics_collector.h", 154 "test_prefetch_dispatcher.cc", 155 "test_prefetch_dispatcher.h", 156 "test_prefetch_downloader.cc", 157 "test_prefetch_downloader.h", 158 "test_prefetch_gcm_handler.cc", 159 "test_prefetch_gcm_handler.h", 160 "test_prefetch_importer.cc", 161 "test_prefetch_importer.h", 162 "test_prefetch_network_request_factory.cc", 163 "test_prefetch_network_request_factory.h", 164 "test_util.cc", 165 ] 166 167 deps = [ 168 ":prefetch", 169 "//base", 170 "//components/download/public/background_service:public", 171 "//components/download/public/background_service/test:test_support", 172 "//components/gcm_driver/instance_id", 173 "//components/image_fetcher/core:test_support", 174 "//components/keyed_service/core", 175 "//components/offline_pages/core", 176 "//components/offline_pages/core:switches", 177 "//components/offline_pages/core:test_support", 178 "//components/offline_pages/task", 179 "//components/offline_pages/task:test_support", 180 "//components/prefs:test_support", 181 "//components/version_info:channel", 182 "//net:test_support", 183 "//services/network:test_support", 184 "//sql:sql", 185 "//testing/gmock", 186 "//url", 187 ] 188} 189 190proto_library("proto") { 191 sources = [ 192 "proto/any.proto", 193 "proto/offline_pages.proto", 194 "proto/operation.proto", 195 "proto/status.proto", 196 ] 197} 198 199if (is_android) { 200 proto_java_library("offline_prefetch_proto_java") { 201 proto_path = "proto" 202 sources = [ 203 "proto/any.proto", 204 "proto/offline_pages.proto", 205 "proto/operation.proto", 206 "proto/status.proto", 207 ] 208 } 209} 210 211source_set("unit_tests") { 212 testonly = true 213 sources = [ 214 "generate_page_bundle_request_unittest.cc", 215 "get_operation_request_unittest.cc", 216 "prefetch_downloader_impl_unittest.cc", 217 "prefetch_gcm_app_handler_unittest.cc", 218 "prefetch_importer_impl_unittest.cc", 219 "prefetch_item_unittest.cc", 220 "prefetch_network_request_factory_impl_unittest.cc", 221 "prefetch_prefs_unittest.cc", 222 "prefetch_request_fetcher_unittest.cc", 223 "prefetch_request_operation_response_unittest.cc", 224 "prefetch_server_urls_unittest.cc", 225 "server_forbidden_check_request_unittest.cc", 226 "store/prefetch_downloader_quota_unittest.cc", 227 "store/prefetch_store_schema_unittest.cc", 228 "store/prefetch_store_unittest.cc", 229 "suggested_articles_observer_unittest.cc", 230 "tasks/add_unique_urls_task_unittest.cc", 231 "tasks/download_archives_task_unittest.cc", 232 "tasks/download_cleanup_task_unittest.cc", 233 "tasks/download_completed_task_unittest.cc", 234 "tasks/finalize_dismissed_url_suggestion_task_unittest.cc", 235 "tasks/generate_page_bundle_reconcile_task_unittest.cc", 236 "tasks/generate_page_bundle_task_unittest.cc", 237 "tasks/get_operation_task_unittest.cc", 238 "tasks/get_visuals_info_task_unittest.cc", 239 "tasks/import_archives_task_unittest.cc", 240 "tasks/import_cleanup_task_unittest.cc", 241 "tasks/import_completed_task_unittest.cc", 242 "tasks/mark_operation_done_task_unittest.cc", 243 "tasks/metrics_finalization_task_unittest.cc", 244 "tasks/page_bundle_update_task_unittest.cc", 245 "tasks/prefetch_task_test_base_unittest.cc", 246 "tasks/sent_get_operation_cleanup_task_unittest.cc", 247 "tasks/stale_entry_finalizer_task_unittest.cc", 248 ] 249 250 deps = [ 251 ":prefetch", 252 ":test_support", 253 "//base", 254 "//components/download/public/background_service:public", 255 "//components/download/public/background_service/test:test_support", 256 "//components/gcm_driver/instance_id", 257 "//components/image_fetcher/core:test_support", 258 "//components/offline_pages/buildflags", 259 "//components/offline_pages/core", 260 "//components/offline_pages/core:switches", 261 "//components/offline_pages/core:test_support", 262 "//components/offline_pages/task", 263 "//components/offline_pages/task:test_support", 264 "//components/prefs:test_support", 265 "//components/variations:test_support", 266 "//components/version_info:channel", 267 "//components/version_info:version_info", 268 "//net:test_support", 269 "//services/network:test_support", 270 "//sql:sql", 271 "//testing/gmock", 272 "//testing/gtest", 273 "//url", 274 ] 275 276 sources += [ 277 "prefetch_dispatcher_impl_unittest.cc", 278 "prefetch_download_flow_unittest.cc", 279 ] 280} 281