Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(265)

Unified Diff: content/browser/download/download_item_impl.cc

Issue 8503018: Split DownloadItem into an ABC, an Impl, and a Mock. (Closed) Base URL: http://git.chromium.org/git/chromium.git@trunk
Patch Set: merge Created 9 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « content/browser/download/download_item_impl.h ('k') | content/browser/download/download_manager_impl.cc » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: content/browser/download/download_item_impl.cc
diff --git a/content/browser/download/download_item.cc b/content/browser/download/download_item_impl.cc
similarity index 72%
copy from content/browser/download/download_item.cc
copy to content/browser/download/download_item_impl.cc
index 3318a0769a6f2459d9971b7e6377d0a55e04db13..0a76e98db11d58d0c47ac5b96ad8f7b8342da56c 100644
--- a/content/browser/download/download_item.cc
+++ b/content/browser/download/download_item_impl.cc
@@ -2,7 +2,7 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#include "content/browser/download/download_item.h"
+#include "content/browser/download/download_item_impl.h"
#include <vector>
@@ -116,21 +116,16 @@ class NullDownloadRequestHandle : public DownloadRequestHandleInterface {
}
};
-
} // namespace
// Our download table ID starts at 1, so we use 0 to represent a download that
// has started, but has not yet had its data persisted in the table. We use fake
// database handles in incognito mode starting at -1 and progressively getting
// more negative.
-// static
-const int DownloadItem::kUninitializedHandle = 0;
-
-const char DownloadItem::kEmptyFileHash[] = "";
// Constructor for reading from the history service.
-DownloadItem::DownloadItem(DownloadManager* download_manager,
- const DownloadPersistentStoreInfo& info)
+DownloadItemImpl::DownloadItemImpl(DownloadManager* download_manager,
+ const DownloadPersistentStoreInfo& info)
: download_id_(download_manager->GetNextId()),
full_path_(info.path),
url_chain_(1, info.url),
@@ -162,10 +157,11 @@ DownloadItem::DownloadItem(DownloadManager* download_manager,
}
// Constructing for a regular download:
-DownloadItem::DownloadItem(DownloadManager* download_manager,
- const DownloadCreateInfo& info,
- DownloadRequestHandleInterface* request_handle,
- bool is_otr)
+DownloadItemImpl::DownloadItemImpl(
+ DownloadManager* download_manager,
+ const DownloadCreateInfo& info,
+ DownloadRequestHandleInterface* request_handle,
+ bool is_otr)
: state_info_(info.original_name, info.save_info.file_path,
info.has_user_gesture, info.transition_type,
info.prompt_user_for_save_location, info.path_uniquifier,
@@ -203,11 +199,11 @@ DownloadItem::DownloadItem(DownloadManager* download_manager,
}
// Constructing for the "Save Page As..." feature:
-DownloadItem::DownloadItem(DownloadManager* download_manager,
- const FilePath& path,
- const GURL& url,
- bool is_otr,
- DownloadId download_id)
+DownloadItemImpl::DownloadItemImpl(DownloadManager* download_manager,
+ const FilePath& path,
+ const GURL& url,
+ bool is_otr,
+ DownloadId download_id)
: request_handle_(new NullDownloadRequestHandle()),
download_id_(download_id),
full_path_(path),
@@ -235,7 +231,7 @@ DownloadItem::DownloadItem(DownloadManager* download_manager,
Init(true /* actively downloading */);
}
-DownloadItem::~DownloadItem() {
+DownloadItemImpl::~DownloadItemImpl() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -243,41 +239,41 @@ DownloadItem::~DownloadItem() {
download_manager_->AssertQueueStateConsistent(this);
}
-void DownloadItem::AddObserver(Observer* observer) {
+void DownloadItemImpl::AddObserver(Observer* observer) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
observers_.AddObserver(observer);
}
-void DownloadItem::RemoveObserver(Observer* observer) {
+void DownloadItemImpl::RemoveObserver(Observer* observer) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
observers_.RemoveObserver(observer);
}
-void DownloadItem::UpdateObservers() {
+void DownloadItemImpl::UpdateObservers() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
FOR_EACH_OBSERVER(Observer, observers_, OnDownloadUpdated(this));
}
-bool DownloadItem::CanShowInFolder() {
+bool DownloadItemImpl::CanShowInFolder() {
return !IsCancelled() && !file_externally_removed_;
}
-bool DownloadItem::CanOpenDownload() {
+bool DownloadItemImpl::CanOpenDownload() {
return !file_externally_removed_;
}
-bool DownloadItem::ShouldOpenFileBasedOnExtension() {
+bool DownloadItemImpl::ShouldOpenFileBasedOnExtension() {
return download_manager_->delegate()->ShouldOpenFileBasedOnExtension(
GetUserVerifiedFilePath());
}
-void DownloadItem::OpenDownload() {
+void DownloadItemImpl::OpenDownload() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -294,7 +290,7 @@ void DownloadItem::OpenDownload() {
// program that opens the file. So instead we spawn a check to update
// the UI if the file has been deleted in parallel with the open.
download_manager_->CheckForFileRemoval(this);
- download_stats::RecordOpen(end_time(), !opened());
+ download_stats::RecordOpen(GetEndTime(), !GetOpened());
opened_ = true;
FOR_EACH_OBSERVER(Observer, observers_, OnDownloadOpened(this));
download_manager_->MarkDownloadOpened(this);
@@ -304,19 +300,19 @@ void DownloadItem::OpenDownload() {
if (!open_enabled_)
return;
- content::GetContentClient()->browser()->OpenItem(full_path());
+ content::GetContentClient()->browser()->OpenItem(GetFullPath());
}
-void DownloadItem::ShowDownloadInShell() {
+void DownloadItemImpl::ShowDownloadInShell() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- content::GetContentClient()->browser()->ShowItemInFolder(full_path());
+ content::GetContentClient()->browser()->ShowItemInFolder(GetFullPath());
}
-void DownloadItem::DangerousDownloadValidated() {
+void DownloadItemImpl::DangerousDownloadValidated() {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
- DCHECK_EQ(DANGEROUS, safety_state());
+ DCHECK_EQ(DANGEROUS, GetSafetyState());
UMA_HISTOGRAM_ENUMERATION("Download.DangerousDownloadValidated",
GetDangerType(),
@@ -328,7 +324,7 @@ void DownloadItem::DangerousDownloadValidated() {
download_manager_->MaybeCompleteDownload(this);
}
-void DownloadItem::UpdateSize(int64 bytes_so_far) {
+void DownloadItemImpl::UpdateSize(int64 bytes_so_far) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -343,7 +339,7 @@ void DownloadItem::UpdateSize(int64 bytes_so_far) {
// Updates from the download thread may have been posted while this download
// was being cancelled in the UI thread, so we'll accept them unless we're
// complete.
-void DownloadItem::Update(int64 bytes_so_far) {
+void DownloadItemImpl::Update(int64 bytes_so_far) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -356,7 +352,7 @@ void DownloadItem::Update(int64 bytes_so_far) {
}
// Triggered by a user action.
-void DownloadItem::Cancel(bool user_cancel) {
+void DownloadItemImpl::Cancel(bool user_cancel) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -378,7 +374,7 @@ void DownloadItem::Cancel(bool user_cancel) {
download_manager_->DownloadCancelledInternal(this);
}
-void DownloadItem::MarkAsComplete() {
+void DownloadItemImpl::MarkAsComplete() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -387,12 +383,13 @@ void DownloadItem::MarkAsComplete() {
TransitionTo(COMPLETE);
}
-void DownloadItem::DelayedDownloadOpened() {
+void DownloadItemImpl::DelayedDownloadOpened() {
auto_opened_ = true;
Completed();
}
-void DownloadItem::OnAllDataSaved(int64 size, const std::string& final_hash) {
+void DownloadItemImpl::OnAllDataSaved(
+ int64 size, const std::string& final_hash) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -402,12 +399,12 @@ void DownloadItem::OnAllDataSaved(int64 size, const std::string& final_hash) {
hash_ = final_hash;
}
-void DownloadItem::OnDownloadedFileRemoved() {
+void DownloadItemImpl::OnDownloadedFileRemoved() {
file_externally_removed_ = true;
UpdateObservers();
}
-void DownloadItem::Completed() {
+void DownloadItemImpl::Completed() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -416,18 +413,18 @@ void DownloadItem::Completed() {
DCHECK(all_data_saved_);
end_time_ = base::Time::Now();
TransitionTo(COMPLETE);
- download_manager_->DownloadCompleted(id());
+ download_manager_->DownloadCompleted(GetId());
download_stats::RecordDownloadCompleted(start_tick_, received_bytes_);
if (auto_opened_) {
// If it was already handled by the delegate, do nothing.
- } else if (open_when_complete() ||
+ } else if (GetOpenWhenComplete() ||
ShouldOpenFileBasedOnExtension() ||
- is_temporary()) {
+ IsTemporary()) {
// If the download is temporary, like in drag-and-drop, do not open it but
// we still need to set it auto-opened so that it can be removed from the
// download shelf.
- if (!is_temporary())
+ if (!IsTemporary())
OpenDownload();
auto_opened_ = true;
@@ -435,7 +432,7 @@ void DownloadItem::Completed() {
}
}
-void DownloadItem::TransitionTo(DownloadState new_state) {
+void DownloadItemImpl::TransitionTo(DownloadState new_state) {
if (state_ == new_state)
return;
@@ -443,16 +440,16 @@ void DownloadItem::TransitionTo(DownloadState new_state) {
UpdateObservers();
}
-void DownloadItem::UpdateSafetyState() {
+void DownloadItemImpl::UpdateSafetyState() {
SafetyState updated_value = state_info_.IsDangerous() ?
- DownloadItem::DANGEROUS : DownloadItem::SAFE;
+ DownloadItem::DANGEROUS : DownloadItem::SAFE;
if (updated_value != safety_state_) {
safety_state_ = updated_value;
UpdateObservers();
}
}
-void DownloadItem::UpdateTarget() {
+void DownloadItemImpl::UpdateTarget() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -460,7 +457,7 @@ void DownloadItem::UpdateTarget() {
state_info_.target_name = full_path_.BaseName();
}
-void DownloadItem::Interrupted(int64 size, InterruptReason reason) {
+void DownloadItemImpl::Interrupted(int64 size, InterruptReason reason) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -475,7 +472,7 @@ void DownloadItem::Interrupted(int64 size, InterruptReason reason) {
TransitionTo(INTERRUPTED);
}
-void DownloadItem::Delete(DeleteReason reason) {
+void DownloadItemImpl::Delete(DeleteReason reason) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -498,7 +495,7 @@ void DownloadItem::Delete(DeleteReason reason) {
// We have now been deleted.
}
-void DownloadItem::Remove() {
+void DownloadItemImpl::Remove() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -511,7 +508,7 @@ void DownloadItem::Remove() {
// We have now been deleted.
}
-bool DownloadItem::TimeRemaining(base::TimeDelta* remaining) const {
+bool DownloadItemImpl::TimeRemaining(base::TimeDelta* remaining) const {
if (total_bytes_ <= 0)
return false; // We never received the content_length for this download.
@@ -524,7 +521,7 @@ bool DownloadItem::TimeRemaining(base::TimeDelta* remaining) const {
return true;
}
-int64 DownloadItem::CurrentSpeed() const {
+int64 DownloadItemImpl::CurrentSpeed() const {
if (is_paused_)
return 0;
base::TimeDelta diff = base::TimeTicks::Now() - start_tick_;
@@ -532,7 +529,7 @@ int64 DownloadItem::CurrentSpeed() const {
return diff_ms == 0 ? 0 : received_bytes_ * 1000 / diff_ms;
}
-int DownloadItem::PercentComplete() const {
+int DownloadItemImpl::PercentComplete() const {
// If the delegate is delaying completion of the download, then we have no
// idea how long it will take.
if (delegate_delayed_complete_ || total_bytes_ <= 0)
@@ -541,12 +538,12 @@ int DownloadItem::PercentComplete() const {
return static_cast<int>(received_bytes_ * 100.0 / total_bytes_);
}
-void DownloadItem::OnPathDetermined(const FilePath& path) {
+void DownloadItemImpl::OnPathDetermined(const FilePath& path) {
full_path_ = path;
UpdateTarget();
}
-void DownloadItem::Rename(const FilePath& full_path) {
+void DownloadItemImpl::Rename(const FilePath& full_path) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -557,7 +554,7 @@ void DownloadItem::Rename(const FilePath& full_path) {
full_path_ = full_path;
}
-void DownloadItem::TogglePause() {
+void DownloadItemImpl::TogglePause() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -570,21 +567,21 @@ void DownloadItem::TogglePause() {
UpdateObservers();
}
-void DownloadItem::OnDownloadCompleting(DownloadFileManager* file_manager) {
+void DownloadItemImpl::OnDownloadCompleting(DownloadFileManager* file_manager) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
VLOG(20) << __FUNCTION__ << "()"
<< " needs rename = " << NeedsRename()
<< " " << DebugString(true);
- DCHECK_NE(DANGEROUS, safety_state());
+ DCHECK_NE(DANGEROUS, GetSafetyState());
DCHECK(file_manager);
if (NeedsRename()) {
BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE,
base::Bind(&DownloadFileManager::RenameCompletingDownloadFile,
- file_manager, global_id(),
- GetTargetFilePath(), safety_state() == SAFE));
+ file_manager, GetGlobalId(),
+ GetTargetFilePath(), GetSafetyState() == SAFE));
return;
}
@@ -592,10 +589,10 @@ void DownloadItem::OnDownloadCompleting(DownloadFileManager* file_manager) {
BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE,
base::Bind(&DownloadFileManager::CompleteDownload,
- file_manager, global_id()));
+ file_manager, GetGlobalId()));
}
-void DownloadItem::OnDownloadRenamedToFinalName(const FilePath& full_path) {
+void DownloadItemImpl::OnDownloadRenamedToFinalName(const FilePath& full_path) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -614,7 +611,7 @@ void DownloadItem::OnDownloadRenamedToFinalName(const FilePath& full_path) {
}
}
-bool DownloadItem::MatchesQuery(const string16& query) const {
+bool DownloadItemImpl::MatchesQuery(const string16& query) const {
if (query.empty())
return true;
@@ -639,11 +636,11 @@ bool DownloadItem::MatchesQuery(const string16& query) const {
if (base::i18n::StringSearchIgnoringCaseAndAccents(query, url_formatted))
return true;
- string16 path(full_path().LossyDisplayName());
+ string16 path(GetFullPath().LossyDisplayName());
return base::i18n::StringSearchIgnoringCaseAndAccents(query, path);
}
-void DownloadItem::SetFileCheckResults(const DownloadStateInfo& state) {
+void DownloadItemImpl::SetFileCheckResults(const DownloadStateInfo& state) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -654,49 +651,49 @@ void DownloadItem::SetFileCheckResults(const DownloadStateInfo& state) {
UpdateSafetyState();
}
-DownloadStateInfo::DangerType DownloadItem::GetDangerType() const {
+DownloadStateInfo::DangerType DownloadItemImpl::GetDangerType() const {
return state_info_.danger;
}
-bool DownloadItem::IsDangerous() const {
+bool DownloadItemImpl::IsDangerous() const {
return state_info_.IsDangerous();
}
-void DownloadItem::MarkFileDangerous() {
+void DownloadItemImpl::MarkFileDangerous() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
state_info_.danger = DownloadStateInfo::DANGEROUS_FILE;
UpdateSafetyState();
}
-void DownloadItem::MarkUrlDangerous() {
+void DownloadItemImpl::MarkUrlDangerous() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
state_info_.danger = DownloadStateInfo::DANGEROUS_URL;
UpdateSafetyState();
}
-void DownloadItem::MarkContentDangerous() {
+void DownloadItemImpl::MarkContentDangerous() {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
state_info_.danger = DownloadStateInfo::DANGEROUS_CONTENT;
UpdateSafetyState();
}
-DownloadPersistentStoreInfo DownloadItem::GetPersistentStoreInfo() const {
- return DownloadPersistentStoreInfo(full_path(),
+DownloadPersistentStoreInfo DownloadItemImpl::GetPersistentStoreInfo() const {
+ return DownloadPersistentStoreInfo(GetFullPath(),
GetURL(),
- referrer_url(),
- start_time(),
- end_time(),
- received_bytes(),
- total_bytes(),
- state(),
- db_handle(),
- opened());
+ GetReferrerUrl(),
+ GetStartTime(),
+ GetEndTime(),
+ GetReceivedBytes(),
+ GetTotalBytes(),
+ GetState(),
+ GetDbHandle(),
+ GetOpened());
}
-TabContents* DownloadItem::GetTabContents() const {
+TabContents* DownloadItemImpl::GetTabContents() const {
// TODO(rdsmith): Remove null check after removing GetTabContents() from
// paths that might be used by DownloadItems created from history import.
// Currently such items have null request_handle_s, where other items
@@ -706,11 +703,11 @@ TabContents* DownloadItem::GetTabContents() const {
return NULL;
}
-FilePath DownloadItem::GetTargetFilePath() const {
+FilePath DownloadItemImpl::GetTargetFilePath() const {
return full_path_.DirName().Append(state_info_.target_name);
}
-FilePath DownloadItem::GetFileNameToReportUser() const {
+FilePath DownloadItemImpl::GetFileNameToReportUser() const {
if (state_info_.path_uniquifier > 0) {
FilePath name(state_info_.target_name);
DownloadFile::AppendNumberToPath(&name, state_info_.path_uniquifier);
@@ -719,21 +716,21 @@ FilePath DownloadItem::GetFileNameToReportUser() const {
return state_info_.target_name;
}
-FilePath DownloadItem::GetUserVerifiedFilePath() const {
+FilePath DownloadItemImpl::GetUserVerifiedFilePath() const {
return (safety_state_ == DownloadItem::SAFE) ?
GetTargetFilePath() : full_path_;
}
-void DownloadItem::OffThreadCancel(DownloadFileManager* file_manager) {
+void DownloadItemImpl::OffThreadCancel(DownloadFileManager* file_manager) {
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
request_handle_->CancelRequest();
BrowserThread::PostTask(BrowserThread::FILE, FROM_HERE,
base::Bind(&DownloadFileManager::CancelDownload,
- file_manager, global_id()));
+ file_manager, GetGlobalId()));
}
-void DownloadItem::Init(bool active) {
+void DownloadItemImpl::Init(bool active) {
// TODO(rdsmith): Change to DCHECK after http://crbug.com/85408 resolved.
CHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
@@ -746,38 +743,38 @@ void DownloadItem::Init(bool active) {
// TODO(ahendrickson) -- Move |INTERRUPTED| from |IsCancelled()| to
// |IsPartialDownload()|, when resuming interrupted downloads is implemented.
-bool DownloadItem::IsPartialDownload() const {
+bool DownloadItemImpl::IsPartialDownload() const {
return (state_ == IN_PROGRESS);
}
-bool DownloadItem::IsInProgress() const {
+bool DownloadItemImpl::IsInProgress() const {
return (state_ == IN_PROGRESS);
}
-bool DownloadItem::IsCancelled() const {
+bool DownloadItemImpl::IsCancelled() const {
return (state_ == CANCELLED) ||
(state_ == INTERRUPTED);
}
-bool DownloadItem::IsInterrupted() const {
+bool DownloadItemImpl::IsInterrupted() const {
return (state_ == INTERRUPTED);
}
-bool DownloadItem::IsComplete() const {
+bool DownloadItemImpl::IsComplete() const {
return (state_ == COMPLETE);
}
-const GURL& DownloadItem::GetURL() const {
+const GURL& DownloadItemImpl::GetURL() const {
return url_chain_.empty() ?
GURL::EmptyGURL() : url_chain_.back();
}
-std::string DownloadItem::DebugString(bool verbose) const {
+std::string DownloadItemImpl::DebugString(bool verbose) const {
std::string description =
base::StringPrintf("{ id = %d"
" state = %s",
download_id_.local(),
- DebugDownloadStateString(state()));
+ DebugDownloadStateString(GetState()));
// Construct a string of the URL chain.
std::string url_list("<none>");
@@ -804,15 +801,15 @@ std::string DownloadItem::DebugString(bool verbose) const {
" url_chain = \n\t\"%s\"\n\t"
" target_name = \"%" PRFilePath "\""
" full_path = \"%" PRFilePath "\"",
- db_handle(),
- total_bytes(),
- received_bytes(),
- is_paused() ? 'T' : 'F',
- is_otr() ? 'T' : 'F',
- DebugSafetyStateString(safety_state()),
+ GetDbHandle(),
+ GetTotalBytes(),
+ GetReceivedBytes(),
+ IsPaused() ? 'T' : 'F',
+ IsOtr() ? 'T' : 'F',
+ DebugSafetyStateString(GetSafetyState()),
url_list.c_str(),
state_info_.target_name.value().c_str(),
- full_path().value().c_str());
+ GetFullPath().value().c_str());
} else {
description += base::StringPrintf(" url = \"%s\"", url_list.c_str());
}
@@ -821,3 +818,82 @@ std::string DownloadItem::DebugString(bool verbose) const {
return description;
}
+
+bool DownloadItemImpl::AllDataSaved() const { return all_data_saved_; }
+DownloadItem::DownloadState DownloadItemImpl::GetState() const {
+ return state_;
+}
+const FilePath& DownloadItemImpl::GetFullPath() const { return full_path_; }
+void DownloadItemImpl::SetPathUniquifier(int uniquifier) {
+ state_info_.path_uniquifier = uniquifier;
+}
+const std::vector<GURL>& DownloadItemImpl::GetUrlChain() const {
+ return url_chain_;
+}
+const GURL& DownloadItemImpl::GetOriginalUrl() const {
+ return url_chain_.front();
+}
+const GURL& DownloadItemImpl::GetReferrerUrl() const { return referrer_url_; }
+std::string DownloadItemImpl::GetSuggestedFilename() const {
+ return suggested_filename_;
+}
+std::string DownloadItemImpl::GetContentDisposition() const {
+ return content_disposition_;
+}
+std::string DownloadItemImpl::GetMimeType() const { return mime_type_; }
+std::string DownloadItemImpl::GetOriginalMimeType() const {
+ return original_mime_type_;
+}
+std::string DownloadItemImpl::GetReferrerCharset() const {
+ return referrer_charset_;
+}
+int64 DownloadItemImpl::GetTotalBytes() const { return total_bytes_; }
+void DownloadItemImpl::SetTotalBytes(int64 total_bytes) {
+ total_bytes_ = total_bytes;
+}
+const std::string& DownloadItemImpl::GetHash() const { return hash_; }
+int64 DownloadItemImpl::GetReceivedBytes() const { return received_bytes_; }
+int32 DownloadItemImpl::GetId() const { return download_id_.local(); }
+DownloadId DownloadItemImpl::GetGlobalId() const { return download_id_; }
+base::Time DownloadItemImpl::GetStartTime() const { return start_time_; }
+base::Time DownloadItemImpl::GetEndTime() const { return end_time_; }
+void DownloadItemImpl::SetDbHandle(int64 handle) { db_handle_ = handle; }
+int64 DownloadItemImpl::GetDbHandle() const { return db_handle_; }
+DownloadManager* DownloadItemImpl::GetDownloadManager() {
+ return download_manager_;
+}
+bool DownloadItemImpl::IsPaused() const { return is_paused_; }
+bool DownloadItemImpl::GetOpenWhenComplete() const {
+ return open_when_complete_;
+}
+void DownloadItemImpl::SetOpenWhenComplete(bool open) {
+ open_when_complete_ = open;
+}
+bool DownloadItemImpl::GetFileExternallyRemoved() const {
+ return file_externally_removed_;
+}
+DownloadItem::SafetyState DownloadItemImpl::GetSafetyState() const {
+ return safety_state_;
+}
+bool DownloadItemImpl::IsOtr() const { return is_otr_; }
+bool DownloadItemImpl::GetAutoOpened() { return auto_opened_; }
+const FilePath& DownloadItemImpl::GetTargetName() const {
+ return state_info_.target_name;
+}
+bool DownloadItemImpl::PromptUserForSaveLocation() const {
+ return state_info_.prompt_user_for_save_location;
+}
+const FilePath& DownloadItemImpl::GetSuggestedPath() const {
+ return state_info_.suggested_path;
+}
+bool DownloadItemImpl::IsTemporary() const { return is_temporary_; }
+void DownloadItemImpl::SetOpened(bool opened) { opened_ = opened; }
+bool DownloadItemImpl::GetOpened() const { return opened_; }
+InterruptReason DownloadItemImpl::GetLastReason() const {
+ return last_reason_;
+}
+DownloadStateInfo DownloadItemImpl::GetStateInfo() const { return state_info_; }
+bool DownloadItemImpl::NeedsRename() const {
+ return state_info_.target_name != full_path_.BaseName();
+}
+void DownloadItemImpl::MockDownloadOpenForTesting() { open_enabled_ = false; }
« no previous file with comments | « content/browser/download/download_item_impl.h ('k') | content/browser/download/download_manager_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698