diff options
author | satish@chromium.org <satish@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-04 23:00:10 +0000 |
---|---|---|
committer | satish@chromium.org <satish@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-12-04 23:00:10 +0000 |
commit | 864b558217c75dbdebea9db3568056292d4cd274 (patch) | |
tree | 06bd9f240065ed47fab9ff415ae4cd49f21facf1 /base/logging_win.cc | |
parent | 8c9e61a02aad4d8baa0f75ae7ac2f2f1963fffd6 (diff) | |
download | chromium_src-864b558217c75dbdebea9db3568056292d4cd274.zip chromium_src-864b558217c75dbdebea9db3568056292d4cd274.tar.gz chromium_src-864b558217c75dbdebea9db3568056292d4cd274.tar.bz2 |
This CL add a GetInstance() method to singleton classes instead of relying on the callers to use Singleton<T>.
In some cases I have used the LazyInstance<T> pattern as that was simpler.
This is a small step towards making all singleton classes use the Singleton<T> pattern within their code and not expect the callers to know about it.
I have selected all files under src/app and src/base which use Singleton<T> in this CL. Once this CL goes in I'll work on the rest of the files.
BUG=65298
TEST=all existing tests should continue to pass.
Review URL: http://codereview.chromium.org/5527004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68300 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/logging_win.cc')
-rw-r--r-- | base/logging_win.cc | 19 |
1 files changed, 8 insertions, 11 deletions
diff --git a/base/logging_win.cc b/base/logging_win.cc index 42610b5..f780b5e 100644 --- a/base/logging_win.cc +++ b/base/logging_win.cc @@ -6,14 +6,6 @@ #include "base/singleton.h" #include <initguid.h> // NOLINT -namespace { - -typedef StaticMemorySingletonTraits<logging::LogEventProvider> - LogEventSingletonTraits; -Singleton<logging::LogEventProvider, LogEventSingletonTraits> log_provider; - -} // namespace - namespace logging { using base::win::EtwEventLevel; @@ -25,6 +17,11 @@ DEFINE_GUID(kLogEventId, LogEventProvider::LogEventProvider() : old_log_level_(LOG_NONE) { } +LogEventProvider* LogEventProvider::GetInstance() { + return Singleton<LogEventProvider, + StaticMemorySingletonTraits<LogEventProvider> >::get(); +} + bool LogEventProvider::LogMessage(logging::LogSeverity severity, const char* file, int line, size_t message_start, const std::string& message) { @@ -53,7 +50,7 @@ bool LogEventProvider::LogMessage(logging::LogSeverity severity, // Bail if we're not logging, not at that level, // or if we're post-atexit handling. - LogEventProvider* provider = log_provider.get(); + LogEventProvider* provider = LogEventProvider::GetInstance(); if (provider == NULL || level > provider->enable_level()) return false; @@ -100,7 +97,7 @@ bool LogEventProvider::LogMessage(logging::LogSeverity severity, } void LogEventProvider::Initialize(const GUID& provider_name) { - LogEventProvider* provider = log_provider.get(); + LogEventProvider* provider = LogEventProvider::GetInstance(); provider->set_provider_name(provider_name); provider->Register(); @@ -110,7 +107,7 @@ void LogEventProvider::Initialize(const GUID& provider_name) { } void LogEventProvider::Uninitialize() { - log_provider.get()->Unregister(); + LogEventProvider::GetInstance()->Unregister(); } void LogEventProvider::OnEventsEnabled() { |