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

Unified Diff: content/public/browser/download_item.h

Issue 10833058: Make DownloadItem derive SupportsUserData instead of re-implementing it. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: gdata: "external"->"user" Created 8 years, 4 months 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
Index: content/public/browser/download_item.h
diff --git a/content/public/browser/download_item.h b/content/public/browser/download_item.h
index 20dc06b715698c8fbd5dd31d42c2fa39996bc22d..c440bcedc45a2643df7ebb5292b5dee982e0e4b9 100644
--- a/content/public/browser/download_item.h
+++ b/content/public/browser/download_item.h
@@ -23,6 +23,7 @@
#include "base/file_path.h"
#include "base/string16.h"
+#include "base/supports_user_data.h"
#include "content/public/browser/download_danger_type.h"
#include "content/public/browser/download_interrupt_reasons.h"
#include "content/public/common/page_transition_types.h"
@@ -49,7 +50,7 @@ struct DownloadPersistentStoreInfo;
// Destination tab's download view, may refer to a given DownloadItem.
//
// This is intended to be used only on the UI thread.
-class CONTENT_EXPORT DownloadItem {
+class CONTENT_EXPORT DownloadItem : public base::SupportsUserData {
public:
enum DownloadState {
// Download is actively progressing.
@@ -111,13 +112,6 @@ class CONTENT_EXPORT DownloadItem {
virtual ~Observer() {}
};
- // Interface for data that can be stored associated with (and owned
- // by) an object of this class via GetExternalData/SetExternalData.
- class ExternalData {
- public:
- virtual ~ExternalData() {};
- };
-
virtual ~DownloadItem() {}
virtual void AddObserver(DownloadItem::Observer* observer) = 0;
@@ -291,22 +285,6 @@ class CONTENT_EXPORT DownloadItem {
// but does not for dangerous downloads until the name is verified.
virtual FilePath GetUserVerifiedFilePath() const = 0;
- // Manage data owned by other subsystems associated with the
- // DownloadItem. By custom, key is the address of a
- // static char subsystem_specific_string[] = ".."; defined
- // in the subsystem, but the only requirement of this interface
- // is that the key be unique over all data stored with this
- // DownloadItem.
- //
- // Note that SetExternalData takes ownership of the
- // passed object; it will be destroyed when the DownloadItem is.
- // If an object is already held by the DownloadItem associated with
- // the passed key, it will be destroyed if overwriten by a new pointer
- // (overwrites by the same pointer are ignored).
- virtual ExternalData* GetExternalData(const void* key) = 0;
- virtual const ExternalData* GetExternalData(const void* key) const = 0;
- virtual void SetExternalData(const void* key, ExternalData* data) = 0;
-
virtual std::string DebugString(bool verbose) const = 0;
virtual void MockDownloadOpenForTesting() = 0;
« no previous file with comments | « content/browser/download/download_manager_impl_unittest.cc ('k') | content/public/test/mock_download_item.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698