diff options
author | ahendrickson@chromium.org <ahendrickson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-02 18:49:43 +0000 |
---|---|---|
committer | ahendrickson@chromium.org <ahendrickson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-02 18:49:43 +0000 |
commit | 1034299e794d0ba846309c43046eb8bb8a740e27 (patch) | |
tree | 9844e4cfd15857aa0d772432f8cd01983bc1df56 /chrome/browser/net | |
parent | e5eed6d9790191c9ce4705167d1bb1166d521699 (diff) | |
download | chromium_src-1034299e794d0ba846309c43046eb8bb8a740e27.zip chromium_src-1034299e794d0ba846309c43046eb8bb8a740e27.tar.gz chromium_src-1034299e794d0ba846309c43046eb8bb8a740e27.tar.bz2 |
Added Net logging to FileStream.
The net logging doesn't currently do anything, but is ready if some system wants to pass it in.
This is the first of 4 CLs that will enable net logging for downloads.
BUG=None
TEST=None
Review URL: https://chromiumcodereview.appspot.com/9288084
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120226 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/net')
-rw-r--r-- | chrome/browser/net/passive_log_collector.cc | 29 | ||||
-rw-r--r-- | chrome/browser/net/passive_log_collector.h | 16 |
2 files changed, 45 insertions, 0 deletions
diff --git a/chrome/browser/net/passive_log_collector.cc b/chrome/browser/net/passive_log_collector.cc index 9ca4b63..5006bdb 100644 --- a/chrome/browser/net/passive_log_collector.cc +++ b/chrome/browser/net/passive_log_collector.cc @@ -87,6 +87,8 @@ PassiveLogCollector::PassiveLogCollector() &cert_verifier_job_tracker_; trackers_[net::NetLog::SOURCE_HTTP_PIPELINED_CONNECTION] = &http_pipelined_connection_tracker_; + trackers_[net::NetLog::SOURCE_FILESTREAM] = + &file_stream_tracker_; // Make sure our mapping is up-to-date. for (size_t i = 0; i < arraysize(trackers_); ++i) DCHECK(trackers_[i]) << "Unhandled SourceType: " << i; @@ -844,3 +846,30 @@ PassiveLogCollector::HttpPipelinedConnectionTracker::DoAddEntry( } return ACTION_NONE; } + +//---------------------------------------------------------------------------- +// FileStreamTracker +//---------------------------------------------------------------------------- + +const size_t +PassiveLogCollector::FileStreamTracker::kMaxNumSources = 100; + +const size_t +PassiveLogCollector::FileStreamTracker::kMaxGraveyardSize = 25; + +PassiveLogCollector:: + FileStreamTracker::FileStreamTracker() + : SourceTracker(kMaxNumSources, kMaxGraveyardSize, NULL) { +} + +PassiveLogCollector::SourceTracker::Action +PassiveLogCollector::FileStreamTracker::DoAddEntry( + const ChromeNetLog::Entry& entry, + SourceInfo* out_info) { + AddEntryToSourceInfo(entry, out_info); + if (entry.type == net::NetLog::TYPE_FILE_STREAM_ALIVE && + entry.phase == net::NetLog::PHASE_END) { + return ACTION_MOVE_TO_GRAVEYARD; + } + return ACTION_NONE; +} diff --git a/chrome/browser/net/passive_log_collector.h b/chrome/browser/net/passive_log_collector.h index 2cb9ab4..c3b8da5 100644 --- a/chrome/browser/net/passive_log_collector.h +++ b/chrome/browser/net/passive_log_collector.h @@ -446,6 +446,21 @@ class PassiveLogCollector : public ChromeNetLog::ThreadSafeObserverImpl { DISALLOW_COPY_AND_ASSIGN(HttpPipelinedConnectionTracker); }; + // Tracks the log entries for the last seen SOURCE_FILESTREAM. + class FileStreamTracker : public SourceTracker { + public: + static const size_t kMaxNumSources; + static const size_t kMaxGraveyardSize; + + FileStreamTracker(); + + private: + virtual Action DoAddEntry(const ChromeNetLog::Entry& entry, + SourceInfo* out_info) OVERRIDE; + + DISALLOW_COPY_AND_ASSIGN(FileStreamTracker); + }; + PassiveLogCollector(); virtual ~PassiveLogCollector(); @@ -492,6 +507,7 @@ class PassiveLogCollector : public ChromeNetLog::ThreadSafeObserverImpl { UDPSocketTracker udp_socket_tracker_; CertVerifierJobTracker cert_verifier_job_tracker_; HttpPipelinedConnectionTracker http_pipelined_connection_tracker_; + FileStreamTracker file_stream_tracker_; // This array maps each NetLog::SourceType to one of the tracker instances // defined above. Use of this array avoid duplicating the list of trackers |