diff options
author | pinkerton@google.com <pinkerton@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-16 17:47:57 +0000 |
---|---|---|
committer | pinkerton@google.com <pinkerton@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2009-01-16 17:47:57 +0000 |
commit | 1bcdb53dbddb785f5538cb7081b073db90c822d1 (patch) | |
tree | 9b67e0a51f98ff2d0f0bb3462f530a08a8b7e6c4 /chrome/common/temp_scaffolding_stubs.cpp | |
parent | 091db5d0615084d28dfbb78d8dd6c0e169b510a4 (diff) | |
download | chromium_src-1bcdb53dbddb785f5538cb7081b073db90c822d1.zip chromium_src-1bcdb53dbddb785f5538cb7081b073db90c822d1.tar.gz chromium_src-1bcdb53dbddb785f5538cb7081b073db90c822d1.tar.bz2 |
mac bootstrapping of browser main and app startup bits
Review URL: http://codereview.chromium.org/18112
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@8185 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/common/temp_scaffolding_stubs.cpp')
-rw-r--r-- | chrome/common/temp_scaffolding_stubs.cpp | 204 |
1 files changed, 204 insertions, 0 deletions
diff --git a/chrome/common/temp_scaffolding_stubs.cpp b/chrome/common/temp_scaffolding_stubs.cpp new file mode 100644 index 0000000..756c8c2 --- /dev/null +++ b/chrome/common/temp_scaffolding_stubs.cpp @@ -0,0 +1,204 @@ +// Copyright (c) 2009 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 "temp_scaffolding_stubs.h" + +#include "base/file_util.h" +#include "base/thread.h" +#include "base/path_service.h" +#include "base/singleton.h" +#include "chrome/browser/plugin_service.h" +#include "chrome/browser/shell_integration.h" +#include "chrome/common/chrome_constants.h" +#include "chrome/common/chrome_paths.h" +#include "chrome/common/pref_service.h" + +BrowserProcessImpl::BrowserProcessImpl(CommandLine& command_line) + : created_local_state_(), created_metrics_service_(), + created_profile_manager_() { + g_browser_process = this; +} + +BrowserProcessImpl::~BrowserProcessImpl() { + g_browser_process = NULL; +} + +void BrowserProcessImpl::CreateLocalState() { + DCHECK(!created_local_state_ && local_state_.get() == NULL); + created_local_state_ = true; + + std::wstring local_state_path; + PathService::Get(chrome::FILE_LOCAL_STATE, &local_state_path); + local_state_.reset(new PrefService(local_state_path)); +} + +void BrowserProcessImpl::CreateMetricsService() { + DCHECK(!created_metrics_service_ && metrics_service_.get() == NULL); + created_metrics_service_ = true; + + metrics_service_.reset(new MetricsService); +} + +void BrowserProcessImpl::CreateProfileManager() { + DCHECK(!created_profile_manager_ && profile_manager_.get() == NULL); + created_profile_manager_ = true; + + profile_manager_.reset(new ProfileManager()); +} + +MetricsService* BrowserProcessImpl::metrics_service() { + if (!created_metrics_service_) + CreateMetricsService(); + return metrics_service_.get(); +} + +ProfileManager* BrowserProcessImpl::profile_manager() { + if (!created_profile_manager_) + CreateProfileManager(); + return profile_manager_.get(); +} + +PrefService* BrowserProcessImpl::local_state() { + if (!created_local_state_) + CreateLocalState(); + return local_state_.get(); +} + +//-------------------------------------------------------------------------- + +static bool s_in_startup = false; + +bool BrowserInit::ProcessCommandLine(const CommandLine& parsed_command_line, + const std::wstring& cur_dir, + PrefService* prefs, bool process_startup, + Profile* profile, int* return_code) { + return LaunchBrowser(parsed_command_line, profile, cur_dir, + process_startup, return_code); +} + +bool BrowserInit::LaunchBrowser(const CommandLine& parsed_command_line, + Profile* profile, const std::wstring& cur_dir, + bool process_startup, int* return_code) { + s_in_startup = process_startup; + bool result = LaunchBrowserImpl(parsed_command_line, profile, cur_dir, + process_startup, return_code); + s_in_startup = false; + return result; +} + +bool BrowserInit::LaunchBrowserImpl(const CommandLine& parsed_command_line, + Profile* profile, + const std::wstring& cur_dir, + bool process_startup, + int* return_code) { + DCHECK(profile); + + // LAUNCH BROWSER WITH PROFILE HERE! + + return true; +} + +//-------------------------------------------------------------------------- + +UserDataManager* UserDataManager::instance_ = NULL; + +void UserDataManager::Create() { + DCHECK(!instance_); + std::wstring user_data; + PathService::Get(chrome::DIR_USER_DATA, &user_data); + instance_ = new UserDataManager(user_data); +} + +UserDataManager* UserDataManager::Get() { + DCHECK(instance_); + return instance_; +} + +//-------------------------------------------------------------------------- + +std::wstring ProfileManager::GetDefaultProfileDir( + const std::wstring& user_data_dir) { + std::wstring default_profile_dir(user_data_dir); + file_util::AppendToPath(&default_profile_dir, chrome::kNotSignedInProfile); + return default_profile_dir; +} + +std::wstring ProfileManager::GetDefaultProfilePath( + const std::wstring &profile_dir) { + std::wstring default_prefs_path(profile_dir); + file_util::AppendToPath(&default_prefs_path, chrome::kPreferencesFilename); + return default_prefs_path; +} + +Profile* ProfileManager::GetDefaultProfile(const std::wstring& user_data_dir) { + std::wstring default_profile_dir = GetDefaultProfileDir(user_data_dir); + return new Profile(default_profile_dir); +} + +//-------------------------------------------------------------------------- + +Profile::Profile(const std::wstring& path) + : path_(path) { +} + +std::wstring Profile::GetPrefFilePath() { + std::wstring pref_file_path = path_; + file_util::AppendToPath(&pref_file_path, chrome::kPreferencesFilename); + return pref_file_path; +} + +PrefService* Profile::GetPrefs() { + if (!prefs_.get()) + prefs_.reset(new PrefService(GetPrefFilePath())); + return prefs_.get(); +} + +//-------------------------------------------------------------------------- + +bool ShellIntegration::SetAsDefaultBrowser() { + return true; +} + +bool ShellIntegration::IsDefaultBrowser() { + return true; +} + +//-------------------------------------------------------------------------- + +namespace browser { +void RegisterAllPrefs(PrefService*, PrefService*) { } +} // namespace browser + +namespace browser_shutdown { +void ReadLastShutdownInfo() { } +void Shutdown() { } +} + +void OpenFirstRunDialog(Profile* profile) { } + +//-------------------------------------------------------------------------- + +PluginService* PluginService::GetInstance() { + return Singleton<PluginService>::get(); +} + +PluginService::PluginService() + : main_message_loop_(MessageLoop::current()), + resource_dispatcher_host_(NULL), + ui_locale_(g_browser_process->GetApplicationLocale()), + plugin_shutdown_handler_(NULL) { +} + +PluginService::~PluginService() { +} + +void PluginService::SetChromePluginDataDir(const std::wstring& data_dir) { + AutoLock lock(lock_); + chrome_plugin_data_dir_ = data_dir; +} + +//-------------------------------------------------------------------------- + +void InstallJankometer(const CommandLine&) { +} |