Chromium Code Reviews| OLD | NEW |
|---|---|
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #ifndef COMPONENTS_PRECACHE_CONTENT_PRECACHE_MANAGER_H_ | 5 #ifndef COMPONENTS_PRECACHE_CONTENT_PRECACHE_MANAGER_H_ |
| 6 #define COMPONENTS_PRECACHE_CONTENT_PRECACHE_MANAGER_H_ | 6 #define COMPONENTS_PRECACHE_CONTENT_PRECACHE_MANAGER_H_ |
| 7 | 7 |
| 8 #include <stddef.h> | 8 #include <stddef.h> |
| 9 #include <stdint.h> | 9 #include <stdint.h> |
| 10 | 10 |
| (...skipping 63 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 74 public base::SupportsWeakPtr<PrecacheManager> { | 74 public base::SupportsWeakPtr<PrecacheManager> { |
| 75 public: | 75 public: |
| 76 typedef base::Callback<void(bool)> PrecacheCompletionCallback; | 76 typedef base::Callback<void(bool)> PrecacheCompletionCallback; |
| 77 | 77 |
| 78 PrecacheManager(content::BrowserContext* browser_context, | 78 PrecacheManager(content::BrowserContext* browser_context, |
| 79 const syncer::SyncService* sync_service, | 79 const syncer::SyncService* sync_service, |
| 80 const history::HistoryService* history_service, | 80 const history::HistoryService* history_service, |
| 81 const data_reduction_proxy::DataReductionProxySettings* | 81 const data_reduction_proxy::DataReductionProxySettings* |
| 82 data_reduction_proxy_settings, | 82 data_reduction_proxy_settings, |
| 83 const base::FilePath& db_path, | 83 const base::FilePath& db_path, |
| 84 std::unique_ptr<PrecacheDatabase> precache_database); | 84 std::unique_ptr<PrecacheDatabase> precache_database, |
| 85 const base::Callback<void(const base::Time&)>& | |
|
jamartin
2016/12/21 23:54:33
Idem.
twifkak
2017/01/05 23:53:14
Done.
| |
| 86 register_synthetic_field_trial_callback); | |
| 85 ~PrecacheManager() override; | 87 ~PrecacheManager() override; |
| 86 | 88 |
| 87 // Returns true if the client is in the experiment group -- that is, | 89 // Returns true if the client is in the experiment group -- that is, |
| 88 // precaching is allowed based on user settings, and enabled as part of a | 90 // precaching is allowed based on user settings, and enabled as part of a |
| 89 // field trial or by commandline flag. Virtual for testing. | 91 // field trial or by commandline flag. Virtual for testing. |
| 90 virtual bool IsInExperimentGroup() const; | 92 virtual bool IsInExperimentGroup() const; |
| 91 | 93 |
| 92 // Returns true if the client is in the control group -- that is, precaching | 94 // Returns true if the client is in the control group -- that is, precaching |
| 93 // is allowed based on user settings, and the browser is in the control group | 95 // is allowed based on user settings, and the browser is in the control group |
| 94 // of the field trial. Virtual for testing. | 96 // of the field trial. Virtual for testing. |
| (...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 146 DISALLOWED, | 148 DISALLOWED, |
| 147 PENDING | 149 PENDING |
| 148 }; | 150 }; |
| 149 | 151 |
| 150 // From KeyedService. | 152 // From KeyedService. |
| 151 void Shutdown() override; | 153 void Shutdown() override; |
| 152 | 154 |
| 153 // From PrecacheFetcher::PrecacheDelegate. | 155 // From PrecacheFetcher::PrecacheDelegate. |
| 154 void OnDone() override; | 156 void OnDone() override; |
| 155 | 157 |
| 158 // Registers the precache synthetic field trial for users whom the precache | |
| 159 // task was run recently. |last_precache_time| is the last time precache task | |
| 160 // was run. | |
| 161 void RegisterSyntheticFieldTrial(const base::Time& last_precache_time); | |
|
jamartin
2016/12/21 23:54:33
Idem.
twifkak
2017/01/05 23:53:14
Done.
| |
| 162 | |
| 156 // Callback when fetching unfinished work from storage is done. | 163 // Callback when fetching unfinished work from storage is done. |
| 157 void OnGetUnfinishedWorkDone( | 164 void OnGetUnfinishedWorkDone( |
| 158 std::unique_ptr<PrecacheUnfinishedWork> unfinished_work); | 165 std::unique_ptr<PrecacheUnfinishedWork> unfinished_work); |
| 159 | 166 |
| 160 // From history::HistoryService::TopHosts. | 167 // From history::HistoryService::TopHosts. |
| 161 void OnHostsReceived(const history::TopHostsList& host_counts); | 168 void OnHostsReceived(const history::TopHostsList& host_counts); |
| 162 | 169 |
| 163 // Initializes and Starts a PrecacheFetcher with unfinished work. | 170 // Initializes and Starts a PrecacheFetcher with unfinished work. |
| 164 void InitializeAndStartFetcher(); | 171 void InitializeAndStartFetcher(); |
| 165 | 172 |
| (...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... | |
| 232 // It should only be accessed from the IO thread. | 239 // It should only be accessed from the IO thread. |
| 233 disk_cache::Backend* cache_backend_; | 240 disk_cache::Backend* cache_backend_; |
| 234 | 241 |
| 235 // The minimum cache size allowed for precaching. Initialized by | 242 // The minimum cache size allowed for precaching. Initialized by |
| 236 // StartPrecaching and read by OnCacheSizeReceivedInUIThread. | 243 // StartPrecaching and read by OnCacheSizeReceivedInUIThread. |
| 237 int min_cache_size_bytes_; | 244 int min_cache_size_bytes_; |
| 238 | 245 |
| 239 // Work that hasn't yet finished. | 246 // Work that hasn't yet finished. |
| 240 std::unique_ptr<PrecacheUnfinishedWork> unfinished_work_; | 247 std::unique_ptr<PrecacheUnfinishedWork> unfinished_work_; |
| 241 | 248 |
| 249 // Callback to register the synthetic field trial. | |
| 250 const base::Callback<void(const base::Time&)> | |
|
jamartin
2016/12/21 23:54:33
Idem.
twifkak
2017/01/05 23:53:14
Done.
| |
| 251 register_synthetic_field_trial_callback_; | |
| 252 | |
| 242 DISALLOW_COPY_AND_ASSIGN(PrecacheManager); | 253 DISALLOW_COPY_AND_ASSIGN(PrecacheManager); |
| 243 }; | 254 }; |
| 244 | 255 |
| 245 } // namespace precache | 256 } // namespace precache |
| 246 | 257 |
| 247 #endif // COMPONENTS_PRECACHE_CONTENT_PRECACHE_MANAGER_H_ | 258 #endif // COMPONENTS_PRECACHE_CONTENT_PRECACHE_MANAGER_H_ |
| OLD | NEW |