diff options
Diffstat (limited to 'remoting')
-rw-r--r-- | remoting/host/vlog_net_log.cc | 42 | ||||
-rw-r--r-- | remoting/host/vlog_net_log.h | 14 |
2 files changed, 23 insertions, 33 deletions
diff --git a/remoting/host/vlog_net_log.cc b/remoting/host/vlog_net_log.cc index 05e9a35..2e2e436 100644 --- a/remoting/host/vlog_net_log.cc +++ b/remoting/host/vlog_net_log.cc @@ -13,13 +13,25 @@ namespace remoting { -VlogNetLog::VlogNetLog() : id_(0) { +class VlogNetLog::Observer : public net::NetLog::ThreadSafeObserver { + public: + Observer(); + virtual ~Observer(); + + // NetLog::ThreadSafeObserver overrides: + virtual void OnAddEntry(const net::NetLog::Entry& entry) OVERRIDE; + + private: + DISALLOW_COPY_AND_ASSIGN(Observer); +}; + +VlogNetLog::Observer::Observer() { } -VlogNetLog::~VlogNetLog() { +VlogNetLog::Observer::~Observer() { } -void VlogNetLog::OnAddEntry(const NetLog::Entry& entry) { +void VlogNetLog::Observer::OnAddEntry(const net::NetLog::Entry& entry) { if (VLOG_IS_ON(4)) { scoped_ptr<Value> value(entry.ToValue()); std::string json; @@ -28,27 +40,13 @@ void VlogNetLog::OnAddEntry(const NetLog::Entry& entry) { } } -uint32 VlogNetLog::NextID() { - // TODO(mmenke): Make this threadsafe and start with 1 instead of 0. - return id_++; -} - -net::NetLog::LogLevel VlogNetLog::GetLogLevel() const { - return LOG_ALL_BUT_BYTES; +VlogNetLog::VlogNetLog() + : observer_(new Observer()) { + AddThreadSafeObserver(observer_.get(), LOG_ALL_BUT_BYTES); } -void VlogNetLog::AddThreadSafeObserver(ThreadSafeObserver* observer, - net::NetLog::LogLevel log_level) { - NOTIMPLEMENTED(); -} - -void VlogNetLog::SetObserverLogLevel(ThreadSafeObserver* observer, - net::NetLog::LogLevel log_level) { - NOTIMPLEMENTED(); -} - -void VlogNetLog::RemoveThreadSafeObserver(ThreadSafeObserver* observer) { - NOTIMPLEMENTED(); +VlogNetLog::~VlogNetLog() { + RemoveThreadSafeObserver(observer_.get()); } } // namespace remoting diff --git a/remoting/host/vlog_net_log.h b/remoting/host/vlog_net_log.h index d056a3a..393ab1c 100644 --- a/remoting/host/vlog_net_log.h +++ b/remoting/host/vlog_net_log.h @@ -6,6 +6,7 @@ #define REMOTING_HOST_VLOG_NET_LOG_H_ #include "base/memory/scoped_handle.h" +#include "base/memory/scoped_ptr.h" #include "net/base/net_log.h" namespace remoting { @@ -19,18 +20,9 @@ class VlogNetLog : public net::NetLog { VlogNetLog(); virtual ~VlogNetLog(); - // NetLog overrides: - virtual void OnAddEntry(const NetLog::Entry& entry) OVERRIDE; - virtual uint32 NextID() OVERRIDE; - virtual LogLevel GetLogLevel() const OVERRIDE; - virtual void AddThreadSafeObserver(ThreadSafeObserver* observer, - LogLevel log_level) OVERRIDE; - virtual void SetObserverLogLevel(ThreadSafeObserver* observer, - LogLevel log_level) OVERRIDE; - virtual void RemoveThreadSafeObserver(ThreadSafeObserver* observer) OVERRIDE; - private: - uint32 id_; + class Observer; + scoped_ptr<Observer> observer_; DISALLOW_COPY_AND_ASSIGN(VlogNetLog); }; |