Chromium Code Reviews| Index: chrome/browser/predictors/resource_prefetch_predictor.h |
| diff --git a/chrome/browser/predictors/resource_prefetch_predictor.h b/chrome/browser/predictors/resource_prefetch_predictor.h |
| index c6eb7157c458f932467670b46cdffb12150189f1..80918db83b0141ea9362dcb232029ae4bed14f88 100644 |
| --- a/chrome/browser/predictors/resource_prefetch_predictor.h |
| +++ b/chrome/browser/predictors/resource_prefetch_predictor.h |
| @@ -13,11 +13,13 @@ |
| #include "base/memory/linked_ptr.h" |
| #include "base/memory/scoped_ptr.h" |
| #include "base/memory/weak_ptr.h" |
| +#include "base/scoped_observer.h" |
| #include "base/task/cancelable_task_tracker.h" |
| #include "base/time/time.h" |
| #include "chrome/browser/predictors/resource_prefetch_common.h" |
| #include "chrome/browser/predictors/resource_prefetch_predictor_tables.h" |
| #include "chrome/browser/predictors/resource_prefetcher.h" |
| +#include "components/history/core/browser/history_service_observer.h" |
| #include "components/history/core/browser/history_types.h" |
| #include "components/keyed_service/core/keyed_service.h" |
| #include "content/public/browser/notification_observer.h" |
| @@ -75,6 +77,7 @@ class ResourcePrefetcherManager; |
| class ResourcePrefetchPredictor |
| : public KeyedService, |
| public content::NotificationObserver, |
| + public history::HistoryServiceObserver, |
| public base::SupportsWeakPtr<ResourcePrefetchPredictor> { |
| public: |
| // Stores the data that we need to get from the URLRequest. |
| @@ -126,6 +129,9 @@ class ResourcePrefetchPredictor |
| PrefetchKeyType key_type, |
| ResourcePrefetcher::RequestVector* requests); |
| + // history::HistoryServiceObserver: |
| + void OnHistoryServiceLoaded(HistoryService* history_service) override; |
|
brettw
2014/11/14 21:13:06
I would make this private as I mentioned above.
nshaik
2014/11/15 07:04:15
Done.
|
| + |
| private: |
| friend class ::PredictorsHandler; |
| friend class ResourcePrefetchPredictorTest; |
| @@ -288,6 +294,11 @@ class ResourcePrefetchPredictor |
| tables_ = tables; |
| } |
| + // If HistoryService exists and its Backend is loaded, |
|
brettw
2014/11/14 21:13:06
This comment reads like code. I can read the code.
nshaik
2014/11/15 07:04:15
Done.
|
| + // calls the OnHistoryAndCacheLoaded. |
| + // Else wait for the OnHistoryServiceLoaded event. |
| + void CheckForHistoryService(); |
| + |
| Profile* const profile_; |
| ResourcePrefetchPredictorConfig const config_; |
| InitializationState initialization_state_; |
| @@ -306,6 +317,9 @@ class ResourcePrefetchPredictor |
| ResultsMap results_map_; |
| STLValueDeleter<ResultsMap> results_map_deleter_; |
| + ScopedObserver<HistoryService, history::HistoryServiceObserver> |
| + history_service_observer_; |
| + |
| DISALLOW_COPY_AND_ASSIGN(ResourcePrefetchPredictor); |
| }; |