| Index: chrome/browser/profiles/profile_impl_io_data.h
|
| diff --git a/chrome/browser/profiles/profile_impl_io_data.h b/chrome/browser/profiles/profile_impl_io_data.h
|
| index 68b8260e43e88f9beb701d3d3bed1b1b0d7105d7..e8e8361a2d73d1038007f75b7867d57da8cf2400 100644
|
| --- a/chrome/browser/profiles/profile_impl_io_data.h
|
| +++ b/chrome/browser/profiles/profile_impl_io_data.h
|
| @@ -9,11 +9,15 @@
|
| #include "base/callback.h"
|
| #include "base/containers/hash_tables.h"
|
| #include "base/memory/ref_counted.h"
|
| +#include "base/prefs/pref_store.h"
|
| +#include "base/timer/timer.h"
|
| #include "chrome/browser/custom_handlers/protocol_handler_registry.h"
|
| #include "chrome/browser/net/chrome_url_request_context_getter.h"
|
| #include "chrome/browser/profiles/profile_io_data.h"
|
| #include "content/public/browser/cookie_store_factory.h"
|
|
|
| +class JsonPrefStore;
|
| +
|
| namespace chrome_browser_net {
|
| class Predictor;
|
| } // namespace chrome_browser_net
|
| @@ -44,7 +48,7 @@ namespace storage {
|
| class SpecialStoragePolicy;
|
| } // namespace storage
|
|
|
| -class ProfileImplIOData : public ProfileIOData {
|
| +class ProfileImplIOData : public ProfileIOData, public PrefStore::Observer {
|
| public:
|
| class Handle {
|
| public:
|
| @@ -209,12 +213,21 @@ class ProfileImplIOData : public ProfileIOData {
|
| void ClearNetworkingHistorySinceOnIOThread(base::Time time,
|
| const base::Closure& completion);
|
|
|
| + void FlushPrefsToDisk();
|
| +
|
| + // PrefStore::Observer
|
| + void OnPrefValueChanged(const std::string& key) override;
|
| + void OnInitializationCompleted(bool succeeded) override;
|
| +
|
| mutable scoped_ptr<data_reduction_proxy::DataReductionProxyNetworkDelegate>
|
| network_delegate_;
|
|
|
| // Lazy initialization params.
|
| mutable scoped_ptr<LazyParams> lazy_params_;
|
|
|
| + mutable scoped_refptr<JsonPrefStore> network_json_store_;
|
| + base::Timer network_store_commit_timer_;
|
| +
|
| mutable scoped_ptr<net::HttpTransactionFactory> main_http_factory_;
|
| mutable scoped_ptr<net::FtpTransactionFactory> ftp_factory_;
|
|
|
| @@ -240,6 +253,8 @@ class ProfileImplIOData : public ProfileIOData {
|
| int app_cache_max_size_;
|
| int app_media_cache_max_size_;
|
|
|
| + base::WeakPtrFactory<ProfileImplIOData> factory_;
|
| +
|
| DISALLOW_COPY_AND_ASSIGN(ProfileImplIOData);
|
| };
|
|
|
|
|