| Index: net/base/capturing_net_log.h
|
| diff --git a/net/base/capturing_net_log.h b/net/base/capturing_net_log.h
|
| index d3586d1d44f51642f92af0a424c564193607303e..154e5f4baab173ee90c7dca02cbe3ec212279d48 100644
|
| --- a/net/base/capturing_net_log.h
|
| +++ b/net/base/capturing_net_log.h
|
| @@ -23,16 +23,16 @@ class DictionaryValue;
|
|
|
| namespace net {
|
|
|
| -// CapturingNetLog is an implementation of NetLog that saves messages to a
|
| -// bounded buffer. It is intended for testing only, and is part of the
|
| -// net_test_support project.
|
| -class CapturingNetLog : public NetLog {
|
| +// CapturingNetLogObserver is an implementation of NetLog::ThreadSafeObserver
|
| +// that saves messages to a bounded buffer. It is intended for testing only,
|
| +// and is part of the net_test_support project.
|
| +class CapturingNetLogObserver : public NetLog::ThreadSafeObserver {
|
| public:
|
| struct CapturedEntry {
|
| - CapturedEntry(EventType type,
|
| + CapturedEntry(NetLog::EventType type,
|
| const base::TimeTicks& time,
|
| - Source source,
|
| - EventPhase phase,
|
| + NetLog::Source source,
|
| + NetLog::EventPhase phase,
|
| scoped_ptr<base::DictionaryValue> params);
|
| // Copy constructor needed to store in a std::vector because of the
|
| // scoped_ptr.
|
| @@ -58,18 +58,18 @@ class CapturingNetLog : public NetLog {
|
| // parameters.
|
| std::string GetParamsJson() const;
|
|
|
| - EventType type;
|
| + NetLog::EventType type;
|
| base::TimeTicks time;
|
| - Source source;
|
| - EventPhase phase;
|
| + NetLog::Source source;
|
| + NetLog::EventPhase phase;
|
| scoped_ptr<base::DictionaryValue> params;
|
| };
|
|
|
| // Ordered set of entries that were logged.
|
| typedef std::vector<CapturedEntry> CapturedEntryList;
|
|
|
| - CapturingNetLog();
|
| - virtual ~CapturingNetLog();
|
| + CapturingNetLogObserver();
|
| + virtual ~CapturingNetLogObserver();
|
|
|
| // Returns the list of all entries in the log.
|
| void GetEntries(CapturedEntryList* entry_list) const;
|
| @@ -83,34 +83,45 @@ class CapturingNetLog : public NetLog {
|
|
|
| void Clear();
|
|
|
| - void SetLogLevel(NetLog::LogLevel log_level);
|
| -
|
| - // NetLog implementation:
|
| - virtual void OnAddEntry(const net::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:
|
| + // NetLog::ThreadSafeObserver implementation:
|
| + virtual void OnAddEntry(const NetLog::Entry& entry) OVERRIDE;
|
| +
|
| // Needs to be "mutable" so can use it in GetEntries().
|
| mutable base::Lock lock_;
|
|
|
| - // Last assigned source ID. Incremented to get the next one.
|
| - base::subtle::Atomic32 last_id_;
|
| -
|
| CapturedEntryList captured_entries_;
|
|
|
| - NetLog::LogLevel log_level_;
|
| + DISALLOW_COPY_AND_ASSIGN(CapturingNetLogObserver);
|
| +};
|
|
|
| - DISALLOW_COPY_AND_ASSIGN(CapturingNetLog);
|
| +// CapturingNetLog is a NetLog which instantiates CapturingNetLogObserver.
|
| +// This is provided for compatilbility with old unittests.
|
| +class CapturingNetLog : public NetLog {
|
| + public:
|
| + typedef CapturingNetLogObserver::CapturedEntry CapturedEntry;
|
| + typedef CapturingNetLogObserver::CapturedEntryList CapturedEntryList;
|
| +
|
| + CapturingNetLog();
|
| + virtual ~CapturingNetLog();
|
| +
|
| + void SetLogLevel(NetLog::LogLevel log_level);
|
| +
|
| + CapturingNetLogObserver& observer() { return capturing_net_log_observer_; }
|
| + const CapturingNetLogObserver& observer() const {
|
| + return capturing_net_log_observer_;
|
| + }
|
| +
|
| + // below methods are forwarded to capturing_net_log_observer_
|
| + void GetEntries(CapturingNetLogObserver::CapturedEntryList* entry_list) const;
|
| + size_t GetSize() const;
|
| +
|
| + private:
|
| + CapturingNetLogObserver capturing_net_log_observer_;
|
| };
|
|
|
| // Helper class that exposes a similar API as BoundNetLog, but uses a
|
| -// CapturingNetLog rather than the more generic NetLog.
|
| +// CapturingNetLogObserver rather than the more generic NetLog.
|
| //
|
| // CapturingBoundNetLog can easily be converted to a BoundNetLog using the
|
| // bound() method.
|
| @@ -120,27 +131,27 @@ class CapturingBoundNetLog {
|
| ~CapturingBoundNetLog();
|
|
|
| // The returned BoundNetLog is only valid while |this| is alive.
|
| - BoundNetLog bound() const { return net_log_; }
|
| + BoundNetLog bound() const { return bound_net_log_; }
|
|
|
| // Fills |entry_list| with all entries in the log.
|
| - void GetEntries(CapturingNetLog::CapturedEntryList* entry_list) const;
|
| + void GetEntries(CapturingNetLogObserver::CapturedEntryList* entry_list) const;
|
|
|
| // Fills |entry_list| with all entries in the log from the specified Source.
|
| void GetEntriesForSource(
|
| NetLog::Source source,
|
| - CapturingNetLog::CapturedEntryList* entry_list) const;
|
| + CapturingNetLogObserver::CapturedEntryList* entry_list) const;
|
|
|
| // Returns number of entries in the log.
|
| size_t GetSize() const;
|
|
|
| void Clear();
|
|
|
| - // Sets the log level of the underlying CapturingNetLog.
|
| + // Sets the log level of the underlying CapturingNetLogObserver.
|
| void SetLogLevel(NetLog::LogLevel log_level);
|
|
|
| private:
|
| - CapturingNetLog capturing_net_log_;
|
| - const BoundNetLog net_log_;
|
| + CapturingNetLog net_log_;
|
| + const BoundNetLog bound_net_log_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(CapturingBoundNetLog);
|
| };
|
|
|