OLD | NEW |
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 // | 4 // |
5 // Download utility implementation | 5 // Download utility implementation |
6 | 6 |
7 #include "chrome/browser/download/download_util.h" | 7 #include "chrome/browser/download/download_util.h" |
8 | 8 |
9 #if defined(OS_WIN) | 9 #if defined(OS_WIN) |
10 #include <shobjidl.h> | 10 #include <shobjidl.h> |
(...skipping 67 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
78 // TODO(phajdan.jr): Find some standard location for this, maintaining | 78 // TODO(phajdan.jr): Find some standard location for this, maintaining |
79 // the same value on all platforms. | 79 // the same value on all platforms. |
80 static const double PI = 3.141592653589793; | 80 static const double PI = 3.141592653589793; |
81 | 81 |
82 using content::DownloadItem; | 82 using content::DownloadItem; |
83 | 83 |
84 namespace { | 84 namespace { |
85 | 85 |
86 // Returns a string constant to be used as the |danger_type| value in | 86 // Returns a string constant to be used as the |danger_type| value in |
87 // CreateDownloadItemValue(). We only return strings for DANGEROUS_FILE, | 87 // CreateDownloadItemValue(). We only return strings for DANGEROUS_FILE, |
88 // DANGEROUS_URL and DANGEROUS_CONTENT because the |danger_type| value is only | 88 // DANGEROUS_URL, DANGEROUS_CONTENT, and UNCOMMON_CONTENT because the |
89 // defined if the value of |state| is |DANGEROUS|. | 89 // |danger_type| value is only defined if the value of |state| is |DANGEROUS|. |
90 const char* GetDangerTypeString(content::DownloadDangerType danger_type) { | 90 const char* GetDangerTypeString(content::DownloadDangerType danger_type) { |
91 switch (danger_type) { | 91 switch (danger_type) { |
92 case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE: | 92 case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE: |
93 return "DANGEROUS_FILE"; | 93 return "DANGEROUS_FILE"; |
94 case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL: | 94 case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL: |
95 return "DANGEROUS_URL"; | 95 return "DANGEROUS_URL"; |
96 case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT: | 96 case content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT: |
97 return "DANGEROUS_CONTENT"; | 97 return "DANGEROUS_CONTENT"; |
| 98 case content::DOWNLOAD_DANGER_TYPE_UNCOMMON_CONTENT: |
| 99 return "UNCOMMON_CONTENT"; |
98 default: | 100 default: |
99 // We shouldn't be returning a danger type string if it is | 101 // We shouldn't be returning a danger type string if it is |
100 // NOT_DANGEROUS or MAYBE_DANGEROUS_CONTENT. | 102 // NOT_DANGEROUS or MAYBE_DANGEROUS_CONTENT. |
101 NOTREACHED(); | 103 NOTREACHED(); |
102 return ""; | 104 return ""; |
103 } | 105 } |
104 } | 106 } |
105 | 107 |
106 } // namespace | 108 } // namespace |
107 | 109 |
(...skipping 342 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
450 if (download->IsInProgress()) { | 452 if (download->IsInProgress()) { |
451 if (download->GetSafetyState() == DownloadItem::DANGEROUS) { | 453 if (download->GetSafetyState() == DownloadItem::DANGEROUS) { |
452 file_value->SetString("state", "DANGEROUS"); | 454 file_value->SetString("state", "DANGEROUS"); |
453 // These are the only danger states we expect to see (and the UI is | 455 // These are the only danger states we expect to see (and the UI is |
454 // equipped to handle): | 456 // equipped to handle): |
455 DCHECK(download->GetDangerType() == | 457 DCHECK(download->GetDangerType() == |
456 content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE || | 458 content::DOWNLOAD_DANGER_TYPE_DANGEROUS_FILE || |
457 download->GetDangerType() == | 459 download->GetDangerType() == |
458 content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL || | 460 content::DOWNLOAD_DANGER_TYPE_DANGEROUS_URL || |
459 download->GetDangerType() == | 461 download->GetDangerType() == |
460 content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT); | 462 content::DOWNLOAD_DANGER_TYPE_DANGEROUS_CONTENT || |
| 463 download->GetDangerType() == |
| 464 content::DOWNLOAD_DANGER_TYPE_UNCOMMON_CONTENT); |
461 const char* danger_type_value = | 465 const char* danger_type_value = |
462 GetDangerTypeString(download->GetDangerType()); | 466 GetDangerTypeString(download->GetDangerType()); |
463 file_value->SetString("danger_type", danger_type_value); | 467 file_value->SetString("danger_type", danger_type_value); |
464 } else if (download->IsPaused()) { | 468 } else if (download->IsPaused()) { |
465 file_value->SetString("state", "PAUSED"); | 469 file_value->SetString("state", "PAUSED"); |
466 } else { | 470 } else { |
467 file_value->SetString("state", "IN_PROGRESS"); | 471 file_value->SetString("state", "IN_PROGRESS"); |
468 } | 472 } |
469 | 473 |
470 file_value->SetString("progress_status_text", | 474 file_value->SetString("progress_status_text", |
(...skipping 158 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
629 UMA_HISTOGRAM_ENUMERATION( | 633 UMA_HISTOGRAM_ENUMERATION( |
630 "Download.CountsChrome", type, CHROME_DOWNLOAD_COUNT_TYPES_LAST_ENTRY); | 634 "Download.CountsChrome", type, CHROME_DOWNLOAD_COUNT_TYPES_LAST_ENTRY); |
631 } | 635 } |
632 | 636 |
633 void RecordDownloadSource(ChromeDownloadSource source) { | 637 void RecordDownloadSource(ChromeDownloadSource source) { |
634 UMA_HISTOGRAM_ENUMERATION( | 638 UMA_HISTOGRAM_ENUMERATION( |
635 "Download.SourcesChrome", source, CHROME_DOWNLOAD_SOURCE_LAST_ENTRY); | 639 "Download.SourcesChrome", source, CHROME_DOWNLOAD_SOURCE_LAST_ENTRY); |
636 } | 640 } |
637 | 641 |
638 } // namespace download_util | 642 } // namespace download_util |
OLD | NEW |