Index: chrome/browser/predictors/loading_predictor.cc |
diff --git a/chrome/browser/predictors/loading_predictor.cc b/chrome/browser/predictors/loading_predictor.cc |
new file mode 100644 |
index 0000000000000000000000000000000000000000..22f54d3f3d3ccdb31515d16d0c4c0f3a325444ee |
--- /dev/null |
+++ b/chrome/browser/predictors/loading_predictor.cc |
@@ -0,0 +1,37 @@ |
+// 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. |
+ |
+#include "chrome/browser/predictors/loading_predictor.h" |
+ |
+#include "base/memory/ptr_util.h" |
+#include "chrome/browser/predictors/resource_prefetch_predictor.h" |
+ |
+namespace predictors { |
+ |
+LoadingPredictor::LoadingPredictor(const LoadingPredictorConfig& config, |
+ Profile* profile) { |
+ resource_prefetch_predictor_ = |
+ base::MakeUnique<ResourcePrefetchPredictor>(config, profile); |
+} |
+ |
+LoadingPredictor::~LoadingPredictor() = default; |
+ |
+void LoadingPredictor::PrepareForPageLoad(const GURL& url, HintOrigin origin) { |
+ resource_prefetch_predictor_->StartPrefetching(url, origin); |
+} |
+ |
+void LoadingPredictor::CancelPageLoadHint(const GURL& url) { |
+ resource_prefetch_predictor_->StopPrefetching(url); |
+} |
+ |
+ResourcePrefetchPredictor* LoadingPredictor::resource_prefetch_predictor() |
+ const { |
+ return resource_prefetch_predictor_.get(); |
+} |
+ |
+void LoadingPredictor::Shutdown() { |
+ resource_prefetch_predictor_->Shutdown(); |
+} |
+ |
+} // namespace predictors |