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

Unified Diff: components/history/core/browser/download_database.h

Issue 2665243003: add a download slices table into history download db (Closed)
Patch Set: Created 3 years, 11 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: components/history/core/browser/download_database.h
diff --git a/components/history/core/browser/download_database.h b/components/history/core/browser/download_database.h
index 6388195eccf2b1b0f314fe86c21487ce10a6fd21..6f67d4aed6c1b673b3181127f6fd73fd03f31686 100644
--- a/components/history/core/browser/download_database.h
+++ b/components/history/core/browser/download_database.h
@@ -14,6 +14,7 @@
#include "base/gtest_prod_util.h"
#include "base/macros.h"
#include "base/threading/platform_thread.h"
+#include "components/history/core/browser/download_job_info.h"
#include "components/history/core/browser/download_types.h"
namespace sql {
@@ -27,6 +28,9 @@ struct DownloadRow;
// Maintains a table of downloads.
class DownloadDatabase {
public:
+ // Check if Parallel downloading feature is enabled.
+ static bool IsParallelDownloadingEnabled();
+
// Must call InitDownloadTable before using any other functions.
DownloadDatabase(DownloadInterruptReason download_interrupt_reason_none,
DownloadInterruptReason download_interrupt_reason_crash);
@@ -113,6 +117,16 @@ class DownloadDatabase {
void RemoveDownloadURLs(uint32_t id);
+ bool EnsureDownloadJobsTableExists();
+
+ // Updates the state of a download job. Returns true on success, or false
+ // otherwise. If the job doesn't exist, a new job will be created. If
+ // |is_new_download| is true, should always insert a new job into the db.
+ bool UpdateDownloadJob(const DownloadJobInfo& info, bool is_new_download);
+
+ // Delete all the download jobs associated with one DownloadRow.
+ void RemoveDownloadJobs(uint32_t id);
+
bool owning_thread_set_;
base::PlatformThreadId owning_thread_;

Powered by Google App Engine
This is Rietveld 408576698