Index: components/offline_pages/offline_page_model.h |
diff --git a/components/offline_pages/offline_page_model.h b/components/offline_pages/offline_page_model.h |
index 7e57a14cb60035b1e6bfcc7679b8cbbd32cba053..f228caeb9b3bdf591edfb80662840a1e6744e7c0 100644 |
--- a/components/offline_pages/offline_page_model.h |
+++ b/components/offline_pages/offline_page_model.h |
@@ -8,6 +8,7 @@ |
#include <vector> |
#include "base/macros.h" |
+#include "base/memory/scoped_ptr.h" |
#include "components/keyed_service/core/keyed_service.h" |
class GURL; |
@@ -15,6 +16,7 @@ class GURL; |
namespace offline_pages { |
struct OfflinePageItem; |
+class OfflinePageMetadataStore; |
// Serivce for saving pages offline, storing the offline copy and metadata, and |
// retrieving them upon request. |
@@ -26,13 +28,23 @@ class OfflinePageModel : public KeyedService { |
// KeyedService: |
void Shutdown() override; |
+ // Initializes the offline page model with a store to use for persisting |
+ // offline page metadata. |
+ void Initialize(scoped_ptr<OfflinePageMetadataStore> store); |
+ |
// Saves the page loaded in the web contents offline. |
void SavePageOffline(const GURL& url); |
// Gets a set of all offline pages metadata. |
std::vector<OfflinePageItem> GetAllOfflinePages(); |
+ // Methods for testing only: |
+ OfflinePageMetadataStore* GetStoreForTesting(); |
+ |
private: |
+ // Persistent store for offline page metadata. |
+ scoped_ptr<OfflinePageMetadataStore> store_; |
+ |
DISALLOW_COPY_AND_ASSIGN(OfflinePageModel); |
}; |