diff options
author | ahendrickson@chromium.org <ahendrickson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-08 02:24:08 +0000 |
---|---|---|
committer | ahendrickson@chromium.org <ahendrickson@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2012-02-08 02:24:08 +0000 |
commit | a6e1201265c2ce00bb5719799c3f0a15f4435ef5 (patch) | |
tree | 7e920b941ffcd7c52e89120e479db7eac2ce5f3e /content/browser/download/download_net_log_parameters.cc | |
parent | 47940c847f7ac66275bc3470c32134f50f10bd6c (diff) | |
download | chromium_src-a6e1201265c2ce00bb5719799c3f0a15f4435ef5.zip chromium_src-a6e1201265c2ce00bb5719799c3f0a15f4435ef5.tar.gz chromium_src-a6e1201265c2ce00bb5719799c3f0a15f4435ef5.tar.bz2 |
Added net logging to DownloadItem.
Should any client of the DownloadItem wish to enable logging for it, they only need to provide a BoundNetLog or NetLog (depending on the download type). None currently do.
This is the third of 4 CLs that will enable net logging for downloads.
BUG=None
TEST=None
Review URL: http://codereview.chromium.org/9121053
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@120911 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/browser/download/download_net_log_parameters.cc')
-rw-r--r-- | content/browser/download/download_net_log_parameters.cc | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/content/browser/download/download_net_log_parameters.cc b/content/browser/download/download_net_log_parameters.cc index 33a17f6..22a800b 100644 --- a/content/browser/download/download_net_log_parameters.cc +++ b/content/browser/download/download_net_log_parameters.cc @@ -13,6 +13,181 @@ namespace download_net_logs { +namespace { + +static const char* download_type_names[] = { + "NEW_DOWNLOAD", + "HISTORY_IMPORT", + "SAVE_PAGE_AS" +}; +static const char* download_safety_names[] = { + "SAFE", + "DANGEROUS", + "DANGEROUS_BUT_VALIDATED" +}; +static const char* download_danger_names[] = { + "NOT_DANGEROUS", + "DANGEROUS_FILE", + "DANGEROUS_URL", + "DANGEROUS_CONTENT", + "MAYBE_DANGEROUS_CONTENT" +}; + +COMPILE_ASSERT(ARRAYSIZE_UNSAFE(download_type_names) == SRC_SAVE_PAGE_AS + 1, + download_type_enum_has_changed); +COMPILE_ASSERT(ARRAYSIZE_UNSAFE(download_safety_names) == + content::DownloadItem::DANGEROUS_BUT_VALIDATED + 1, + downloaditem_safety_state_enum_has_changed); +COMPILE_ASSERT(ARRAYSIZE_UNSAFE(download_danger_names) == + content::DOWNLOAD_DANGER_TYPE_MAX, + download_danger_enum_has_changed); + +} // namespace + +ItemActivatedParameters::ItemActivatedParameters( + DownloadType download_type, + int64 id, + const std::string& original_url, + const std::string& final_url, + const std::string& file_name, + content::DownloadDangerType danger_type, + content::DownloadItem::SafetyState safety_state, + int64 start_offset) + : type_(download_type), + id_(id), + original_url_(original_url), + final_url_(final_url), + file_name_(file_name), + danger_type_(danger_type), + safety_state_(safety_state), + start_offset_(start_offset) { +} + +ItemActivatedParameters::~ItemActivatedParameters() { +} + +Value* ItemActivatedParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("type", download_type_names[type_]); + dict->SetString("id", base::Int64ToString(id_)); + dict->SetString("original_url", original_url_); + dict->SetString("final_url", final_url_); + dict->SetString("file_name", file_name_); + dict->SetString("danger_type", download_danger_names[danger_type_]); + dict->SetString("safety_state", download_safety_names[safety_state_]); + dict->SetString("start_offset", base::Int64ToString(start_offset_)); + + return dict; +} + +ItemCheckedParameters::ItemCheckedParameters( + content::DownloadDangerType danger_type, + content::DownloadItem::SafetyState safety_state) + : danger_type_(danger_type), safety_state_(safety_state) { +} + +Value* ItemCheckedParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("danger_type", download_danger_names[danger_type_]); + dict->SetString("safety_state", download_safety_names[safety_state_]); + + return dict; +} + +ItemInHistoryParameters::ItemInHistoryParameters(int64 handle) + : db_handle_(handle) { +} + +Value* ItemInHistoryParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("db_handle", base::Int64ToString(db_handle_)); + + return dict; +} + +ItemUpdatedParameters::ItemUpdatedParameters(int64 bytes_so_far) + : bytes_so_far_(bytes_so_far) { +} + +Value* ItemUpdatedParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("bytes_so_far", base::Int64ToString(bytes_so_far_)); + + return dict; +} + +ItemRenamedParameters::ItemRenamedParameters( + const std::string& old_filename, const std::string& new_filename) + : old_filename_(old_filename), new_filename_(new_filename) { +} + +Value* ItemRenamedParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("old_filename", old_filename_); + dict->SetString("new_filename", new_filename_); + + return dict; +} + +ItemInterruptedParameters::ItemInterruptedParameters( + InterruptReason reason, + int64 bytes_so_far, + const std::string& hash_state) + : reason_(reason), + bytes_so_far_(bytes_so_far), + hash_state_(hash_state) { +} + +Value* ItemInterruptedParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("interrupt_reason", InterruptReasonDebugString(reason_)); + dict->SetString("bytes_so_far", base::Int64ToString(bytes_so_far_)); + dict->SetString("hash_state", + base::HexEncode(hash_state_.data(), hash_state_.size())); + + return dict; +} + +ItemFinishedParameters::ItemFinishedParameters( + int64 bytes_so_far, + const std::string& final_hash) + : bytes_so_far_(bytes_so_far), + final_hash_(final_hash) { +} + +Value* ItemFinishedParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("bytes_so_far", base::Int64ToString(bytes_so_far_)); + dict->SetString("final_hash", + base::HexEncode(final_hash_.data(), final_hash_.size())); + + return dict; +} + +ItemCanceledParameters::ItemCanceledParameters( + int64 bytes_so_far, + const std::string& hash_state) + : bytes_so_far_(bytes_so_far), + hash_state_(hash_state) { +} + +Value* ItemCanceledParameters::ToValue() const { + DictionaryValue* dict = new DictionaryValue(); + + dict->SetString("bytes_so_far", base::Int64ToString(bytes_so_far_)); + dict->SetString("hash_state", + base::HexEncode(hash_state_.data(), hash_state_.size())); + + return dict; +} + FileOpenedParameters::FileOpenedParameters(const std::string& file_name, int64 start_offset) : file_name_(file_name), start_offset_(start_offset) { |