Index: chrome/browser/browser_process_impl.cc |
diff --git a/chrome/browser/browser_process_impl.cc b/chrome/browser/browser_process_impl.cc |
index 3d002dad6f012a3bcbe1518e242a79e8630b9a7b..ba3e4ec0585f5601b2f1e3ad0489025b3258222c 100644 |
--- a/chrome/browser/browser_process_impl.cc |
+++ b/chrome/browser/browser_process_impl.cc |
@@ -91,6 +91,7 @@ |
#include "components/metrics_services_manager/metrics_services_manager.h" |
#include "components/net_log/chrome_net_log.h" |
#include "components/network_time/network_time_tracker.h" |
+#include "components/physical_web/data_source/physical_web_data_source.h" |
#include "components/policy/core/browser/browser_policy_connector.h" |
#include "components/policy/core/common/policy_service.h" |
#include "components/prefs/json_pref_store.h" |
@@ -169,6 +170,10 @@ |
#include "chrome/browser/first_run/upgrade_util.h" |
#endif |
+#if defined(OS_ANDROID) |
+#include "chrome/browser/android/physical_web/physical_web_data_source_android.h" |
+#endif |
+ |
#if (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS) |
// How often to check if the persistent instance of Chrome needs to restart |
// to install an update. |
@@ -780,6 +785,19 @@ BrowserProcessImpl::CachedDefaultWebClientState() { |
return cached_default_web_client_state_; |
} |
+PhysicalWebDataSource* BrowserProcessImpl::GetPhysicalWebDataSource() { |
+ DCHECK(CalledOnValidThread()); |
+#if defined(OS_ANDROID) |
+ if (!physical_web_data_source_) { |
+ CreatePhysicalWebDataSource(); |
+ DCHECK(physical_web_data_source_); |
+ } |
+ return physical_web_data_source_.get(); |
+#else |
+ return nullptr; |
+#endif |
+} |
+ |
// static |
void BrowserProcessImpl::RegisterPrefs(PrefRegistrySimple* registry) { |
registry->RegisterBooleanPref(prefs::kDefaultBrowserSettingEnabled, |
@@ -1203,6 +1221,16 @@ void BrowserProcessImpl::CreateGCMDriver() { |
#endif // defined(OS_ANDROID) |
} |
+void BrowserProcessImpl::CreatePhysicalWebDataSource() { |
+ DCHECK(!physical_web_data_source_); |
+ |
+#if defined(OS_ANDROID) |
+ physical_web_data_source_ = base::MakeUnique<PhysicalWebDataSourceAndroid>(); |
+#else |
+ NOTIMPLEMENTED(); |
+#endif |
+} |
+ |
void BrowserProcessImpl::ApplyDefaultBrowserPolicy() { |
if (local_state()->GetBoolean(prefs::kDefaultBrowserSettingEnabled)) { |
// The worker pointer is reference counted. While it is running, the |