2013-10-23 21:30:47 +02:00
|
|
|
// Copyright (c) 2013 The Chromium Embedded Framework Authors.
|
|
|
|
// Portions (c) 2011 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 "libcef/browser/chrome_browser_process_stub.h"
|
|
|
|
|
2019-03-22 23:11:51 +01:00
|
|
|
#include "libcef/browser/browser_context.h"
|
2016-07-18 23:22:22 +02:00
|
|
|
#include "libcef/browser/chrome_profile_manager_stub.h"
|
2019-03-24 19:41:42 +01:00
|
|
|
#include "libcef/browser/context.h"
|
2019-03-21 01:23:23 +01:00
|
|
|
#include "libcef/browser/prefs/browser_prefs.h"
|
2016-07-18 23:22:22 +02:00
|
|
|
#include "libcef/browser/thread_util.h"
|
|
|
|
#include "libcef/common/cef_switches.h"
|
|
|
|
|
|
|
|
#include "base/command_line.h"
|
2019-03-21 01:23:23 +01:00
|
|
|
#include "chrome/browser/net/system_network_context_manager.h"
|
|
|
|
#include "chrome/browser/policy/chrome_browser_policy_connector.h"
|
2019-07-17 20:47:27 +02:00
|
|
|
#include "chrome/browser/printing/background_printing_manager.h"
|
2016-07-18 23:22:22 +02:00
|
|
|
#include "chrome/browser/printing/print_job_manager.h"
|
2019-07-17 20:47:27 +02:00
|
|
|
#include "chrome/browser/printing/print_preview_dialog_controller.h"
|
2019-07-16 19:59:21 +02:00
|
|
|
#include "chrome/browser/ui/prefs/pref_watcher.h"
|
2016-11-07 20:14:09 +01:00
|
|
|
#include "components/net_log/chrome_net_log.h"
|
2019-03-21 01:23:23 +01:00
|
|
|
#include "components/prefs/pref_service.h"
|
2019-04-26 22:22:07 +02:00
|
|
|
#include "content/browser/startup_helper.h"
|
2016-11-07 20:14:09 +01:00
|
|
|
#include "content/public/common/content_switches.h"
|
2019-07-16 19:59:21 +02:00
|
|
|
#include "net/log/net_log_capture_mode.h"
|
2018-03-20 21:15:08 +01:00
|
|
|
#include "services/network/public/cpp/network_switches.h"
|
2018-07-13 21:29:20 +02:00
|
|
|
#include "services/network/public/cpp/shared_url_loader_factory.h"
|
2013-10-23 21:30:47 +02:00
|
|
|
|
|
|
|
ChromeBrowserProcessStub::ChromeBrowserProcessStub()
|
2017-05-17 11:29:28 +02:00
|
|
|
: initialized_(false),
|
|
|
|
context_initialized_(false),
|
|
|
|
shutdown_(false),
|
2019-03-24 01:39:54 +01:00
|
|
|
locale_("en-US") {}
|
2013-10-23 21:30:47 +02:00
|
|
|
|
|
|
|
ChromeBrowserProcessStub::~ChromeBrowserProcessStub() {
|
2016-11-07 20:14:09 +01:00
|
|
|
DCHECK((!initialized_ && !context_initialized_) || shutdown_);
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2017-10-20 19:45:20 +02:00
|
|
|
void ChromeBrowserProcessStub::Initialize() {
|
2016-07-18 23:22:22 +02:00
|
|
|
DCHECK(!initialized_);
|
2016-11-07 20:14:09 +01:00
|
|
|
DCHECK(!context_initialized_);
|
|
|
|
DCHECK(!shutdown_);
|
2019-09-04 17:13:32 +02:00
|
|
|
DCHECK(!field_trial_list_);
|
2016-11-07 20:14:09 +01:00
|
|
|
|
2019-04-26 22:22:07 +02:00
|
|
|
// Initialize this early before any code tries to check feature flags.
|
2019-09-04 17:13:32 +02:00
|
|
|
field_trial_list_ = content::SetUpFieldTrialsAndFeatureList();
|
2019-04-26 22:22:07 +02:00
|
|
|
|
2016-11-07 20:14:09 +01:00
|
|
|
initialized_ = true;
|
|
|
|
}
|
|
|
|
|
|
|
|
void ChromeBrowserProcessStub::OnContextInitialized() {
|
|
|
|
CEF_REQUIRE_UIT();
|
|
|
|
DCHECK(initialized_);
|
|
|
|
DCHECK(!context_initialized_);
|
2016-07-18 23:22:22 +02:00
|
|
|
DCHECK(!shutdown_);
|
|
|
|
|
|
|
|
// Must be created after the NotificationService.
|
|
|
|
print_job_manager_.reset(new printing::PrintJobManager());
|
|
|
|
profile_manager_.reset(new ChromeProfileManagerStub());
|
|
|
|
event_router_forwarder_ = new extensions::EventRouterForwarder();
|
2016-11-07 20:14:09 +01:00
|
|
|
context_initialized_ = true;
|
2016-07-18 23:22:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
void ChromeBrowserProcessStub::Shutdown() {
|
|
|
|
CEF_REQUIRE_UIT();
|
|
|
|
DCHECK(initialized_);
|
2016-11-07 20:14:09 +01:00
|
|
|
DCHECK(context_initialized_);
|
2016-07-18 23:22:22 +02:00
|
|
|
DCHECK(!shutdown_);
|
|
|
|
|
|
|
|
// Wait for the pending print jobs to finish. Don't do this later, since
|
|
|
|
// this might cause a nested message loop to run, and we don't want pending
|
|
|
|
// tasks to run once teardown has started.
|
|
|
|
print_job_manager_->Shutdown();
|
2020-01-15 14:36:24 +01:00
|
|
|
print_job_manager_.reset(nullptr);
|
|
|
|
print_preview_dialog_controller_ = nullptr;
|
2016-07-18 23:22:22 +02:00
|
|
|
|
|
|
|
profile_manager_.reset();
|
|
|
|
event_router_forwarder_ = nullptr;
|
|
|
|
|
2019-07-29 23:27:12 +02:00
|
|
|
if (SystemNetworkContextManager::GetInstance()) {
|
2019-03-25 19:14:23 +01:00
|
|
|
SystemNetworkContextManager::DeleteInstance();
|
|
|
|
}
|
|
|
|
|
2019-07-17 20:47:27 +02:00
|
|
|
// Release any references held by objects associated with a Profile. The
|
|
|
|
// Profile will be deleted later.
|
2019-07-16 19:59:21 +02:00
|
|
|
for (const auto& profile : CefBrowserContext::GetAll()) {
|
2019-07-17 20:47:27 +02:00
|
|
|
// Release any references to |local_state_|.
|
2019-07-16 19:59:21 +02:00
|
|
|
PrefWatcher* pref_watcher = PrefWatcher::Get(profile);
|
|
|
|
if (pref_watcher)
|
|
|
|
pref_watcher->Shutdown();
|
2019-07-17 20:47:27 +02:00
|
|
|
|
|
|
|
// Unregister observers for |background_printing_manager_|.
|
|
|
|
if (background_printing_manager_) {
|
|
|
|
background_printing_manager_->DeletePreviewContentsForBrowserContext(
|
|
|
|
profile);
|
|
|
|
}
|
2019-07-16 19:59:21 +02:00
|
|
|
}
|
|
|
|
|
2019-03-21 01:23:23 +01:00
|
|
|
local_state_.reset();
|
|
|
|
browser_policy_connector_.reset();
|
|
|
|
|
2019-07-17 20:47:27 +02:00
|
|
|
background_printing_manager_.reset();
|
|
|
|
|
2019-09-04 17:13:32 +02:00
|
|
|
field_trial_list_.reset();
|
2016-07-18 23:22:22 +02:00
|
|
|
|
2019-09-04 17:13:32 +02:00
|
|
|
shutdown_ = true;
|
2019-03-13 22:27:37 +01:00
|
|
|
}
|
2013-10-23 21:30:47 +02:00
|
|
|
|
|
|
|
void ChromeBrowserProcessStub::EndSession() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2019-03-13 22:27:37 +01:00
|
|
|
}
|
2013-10-23 21:30:47 +02:00
|
|
|
|
2017-09-06 23:40:58 +02:00
|
|
|
void ChromeBrowserProcessStub::FlushLocalStateAndReply(
|
|
|
|
base::OnceClosure reply) {
|
|
|
|
NOTREACHED();
|
|
|
|
}
|
|
|
|
|
2015-11-10 21:18:16 +01:00
|
|
|
metrics_services_manager::MetricsServicesManager*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::GetMetricsServicesManager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2014-06-12 22:28:58 +02:00
|
|
|
}
|
|
|
|
|
2014-09-04 19:53:40 +02:00
|
|
|
metrics::MetricsService* ChromeBrowserProcessStub::metrics_service() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2017-01-23 18:36:54 +01:00
|
|
|
rappor::RapporServiceImpl* ChromeBrowserProcessStub::rappor_service() {
|
2017-12-07 22:44:24 +01:00
|
|
|
// Called from PluginInfoHostImpl::ReportMetrics.
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2017-09-06 23:40:58 +02:00
|
|
|
SystemNetworkContextManager*
|
|
|
|
ChromeBrowserProcessStub::system_network_context_manager() {
|
2019-03-21 01:23:23 +01:00
|
|
|
DCHECK(SystemNetworkContextManager::GetInstance());
|
|
|
|
return SystemNetworkContextManager::GetInstance();
|
2017-12-07 22:44:24 +01:00
|
|
|
}
|
|
|
|
|
2018-07-02 19:11:49 +02:00
|
|
|
network::NetworkQualityTracker*
|
|
|
|
ChromeBrowserProcessStub::network_quality_tracker() {
|
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2018-07-02 19:11:49 +02:00
|
|
|
}
|
|
|
|
|
2017-05-31 17:33:30 +02:00
|
|
|
WatchDogThread* ChromeBrowserProcessStub::watchdog_thread() {
|
2017-03-03 23:37:23 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2017-03-03 23:37:23 +01:00
|
|
|
}
|
|
|
|
|
2013-10-23 21:30:47 +02:00
|
|
|
ProfileManager* ChromeBrowserProcessStub::profile_manager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
DCHECK(context_initialized_);
|
2016-07-18 23:22:22 +02:00
|
|
|
return profile_manager_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
PrefService* ChromeBrowserProcessStub::local_state() {
|
2019-03-21 01:23:23 +01:00
|
|
|
DCHECK(initialized_);
|
2019-04-26 23:17:24 +02:00
|
|
|
if (!local_state_) {
|
|
|
|
const CefSettings& settings = CefContext::Get()->settings();
|
|
|
|
const base::FilePath& cache_path =
|
|
|
|
base::FilePath(CefString(&settings.cache_path));
|
|
|
|
|
|
|
|
// Used for very early NetworkService initialization.
|
2020-04-01 22:55:36 +02:00
|
|
|
// Always persist preferences for this PrefService if possible because it
|
|
|
|
// contains the cookie encryption key on Windows.
|
2019-04-26 23:17:24 +02:00
|
|
|
local_state_ = browser_prefs::CreatePrefService(
|
2020-04-01 22:55:36 +02:00
|
|
|
nullptr /* profile */, cache_path, true /* persist_user_preferences */);
|
2019-04-26 23:17:24 +02:00
|
|
|
}
|
2019-03-21 01:23:23 +01:00
|
|
|
return local_state_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2018-07-13 21:29:20 +02:00
|
|
|
scoped_refptr<network::SharedURLLoaderFactory>
|
|
|
|
ChromeBrowserProcessStub::shared_url_loader_factory() {
|
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2018-07-13 21:29:20 +02:00
|
|
|
}
|
|
|
|
|
2017-05-17 11:29:28 +02:00
|
|
|
variations::VariationsService* ChromeBrowserProcessStub::variations_service() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
BrowserProcessPlatformPart* ChromeBrowserProcessStub::platform_part() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
extensions::EventRouterForwarder*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::extension_event_router_forwarder() {
|
2016-11-07 20:14:09 +01:00
|
|
|
DCHECK(context_initialized_);
|
2016-07-18 23:22:22 +02:00
|
|
|
return event_router_forwarder_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
NotificationUIManager* ChromeBrowserProcessStub::notification_ui_manager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2016-05-25 01:35:43 +02:00
|
|
|
NotificationPlatformBridge*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::notification_platform_bridge() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2016-05-25 01:35:43 +02:00
|
|
|
}
|
|
|
|
|
2018-02-15 01:12:09 +01:00
|
|
|
policy::ChromeBrowserPolicyConnector*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::browser_policy_connector() {
|
2019-03-21 01:23:23 +01:00
|
|
|
if (!browser_policy_connector_) {
|
|
|
|
browser_policy_connector_ =
|
|
|
|
std::make_unique<policy::ChromeBrowserPolicyConnector>();
|
|
|
|
}
|
|
|
|
return browser_policy_connector_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
policy::PolicyService* ChromeBrowserProcessStub::policy_service() {
|
2019-03-21 01:23:23 +01:00
|
|
|
return browser_policy_connector()->GetPolicyService();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
IconManager* ChromeBrowserProcessStub::icon_manager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2016-08-31 13:25:56 +02:00
|
|
|
GpuModeManager* ChromeBrowserProcessStub::gpu_mode_manager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2018-03-20 21:15:08 +01:00
|
|
|
void ChromeBrowserProcessStub::CreateDevToolsProtocolHandler() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2016-03-16 03:55:59 +01:00
|
|
|
}
|
|
|
|
|
|
|
|
void ChromeBrowserProcessStub::CreateDevToolsAutoOpener() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
bool ChromeBrowserProcessStub::IsShuttingDown() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2013-10-23 21:30:47 +02:00
|
|
|
return false;
|
|
|
|
}
|
|
|
|
|
|
|
|
printing::PrintJobManager* ChromeBrowserProcessStub::print_job_manager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
DCHECK(context_initialized_);
|
2016-07-18 23:22:22 +02:00
|
|
|
return print_job_manager_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
printing::PrintPreviewDialogController*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::print_preview_dialog_controller() {
|
2019-07-17 20:47:27 +02:00
|
|
|
if (!print_preview_dialog_controller_.get()) {
|
|
|
|
print_preview_dialog_controller_ =
|
|
|
|
new printing::PrintPreviewDialogController();
|
|
|
|
}
|
|
|
|
return print_preview_dialog_controller_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
printing::BackgroundPrintingManager*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::background_printing_manager() {
|
2019-07-17 20:47:27 +02:00
|
|
|
if (!background_printing_manager_.get()) {
|
|
|
|
background_printing_manager_.reset(
|
|
|
|
new printing::BackgroundPrintingManager());
|
|
|
|
}
|
|
|
|
return background_printing_manager_.get();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
IntranetRedirectDetector*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::intranet_redirect_detector() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2017-05-17 11:29:28 +02:00
|
|
|
const std::string& ChromeBrowserProcessStub::GetApplicationLocale() {
|
2013-10-23 21:30:47 +02:00
|
|
|
DCHECK(!locale_.empty());
|
|
|
|
return locale_;
|
|
|
|
}
|
|
|
|
|
|
|
|
void ChromeBrowserProcessStub::SetApplicationLocale(const std::string& locale) {
|
|
|
|
locale_ = locale;
|
|
|
|
}
|
|
|
|
|
|
|
|
DownloadStatusUpdater* ChromeBrowserProcessStub::download_status_updater() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
DownloadRequestLimiter* ChromeBrowserProcessStub::download_request_limiter() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
BackgroundModeManager* ChromeBrowserProcessStub::background_mode_manager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
void ChromeBrowserProcessStub::set_background_mode_manager_for_test(
|
2017-05-17 11:29:28 +02:00
|
|
|
std::unique_ptr<BackgroundModeManager> manager) {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
StatusTray* ChromeBrowserProcessStub::status_tray() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2015-12-09 17:10:16 +01:00
|
|
|
safe_browsing::SafeBrowsingService*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::safe_browsing_service() {
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
safe_browsing::ClientSideDetectionService*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::safe_browsing_detection_service() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
2018-11-30 23:21:07 +01:00
|
|
|
subresource_filter::RulesetService*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::subresource_filter_ruleset_service() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2016-07-06 21:34:09 +02:00
|
|
|
}
|
|
|
|
|
2017-12-07 22:44:24 +01:00
|
|
|
optimization_guide::OptimizationGuideService*
|
|
|
|
ChromeBrowserProcessStub::optimization_guide_service() {
|
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2017-12-07 22:44:24 +01:00
|
|
|
}
|
|
|
|
|
2019-07-16 19:59:21 +02:00
|
|
|
StartupData* ChromeBrowserProcessStub::startup_data() {
|
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2019-07-16 19:59:21 +02:00
|
|
|
}
|
|
|
|
|
2013-10-23 21:30:47 +02:00
|
|
|
#if (defined(OS_WIN) || defined(OS_LINUX)) && !defined(OS_CHROMEOS)
|
2017-05-17 11:29:28 +02:00
|
|
|
void ChromeBrowserProcessStub::StartAutoupdateTimer() {}
|
2013-10-23 21:30:47 +02:00
|
|
|
#endif
|
|
|
|
|
2014-02-05 21:35:45 +01:00
|
|
|
component_updater::ComponentUpdateService*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::component_updater() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
MediaFileSystemRegistry*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::media_file_system_registry() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
WebRtcLogUploader* ChromeBrowserProcessStub::webrtc_log_uploader() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2013-10-23 21:30:47 +02:00
|
|
|
}
|
2014-05-29 19:15:34 +02:00
|
|
|
|
2014-06-12 22:28:58 +02:00
|
|
|
network_time::NetworkTimeTracker*
|
2017-05-17 11:29:28 +02:00
|
|
|
ChromeBrowserProcessStub::network_time_tracker() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2014-06-12 22:28:58 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
gcm::GCMDriver* ChromeBrowserProcessStub::gcm_driver() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2014-05-29 19:15:34 +02:00
|
|
|
}
|
2015-07-24 02:06:56 +02:00
|
|
|
|
2017-07-27 01:19:27 +02:00
|
|
|
resource_coordinator::TabManager* ChromeBrowserProcessStub::GetTabManager() {
|
2016-11-07 20:14:09 +01:00
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2015-10-09 17:23:12 +02:00
|
|
|
}
|
2016-08-04 14:37:53 +02:00
|
|
|
|
2018-11-30 23:21:07 +01:00
|
|
|
resource_coordinator::ResourceCoordinatorParts*
|
|
|
|
ChromeBrowserProcessStub::resource_coordinator_parts() {
|
|
|
|
NOTREACHED();
|
2020-01-15 14:36:24 +01:00
|
|
|
return nullptr;
|
2018-11-30 23:21:07 +01:00
|
|
|
}
|