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

Unified Diff: components/dom_distiller/core/dom_distiller_service.h

Issue 254483003: Start requiring DistillerPage for calls to DomDistillerService. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 6 years, 8 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/dom_distiller/core/dom_distiller_service.h
diff --git a/components/dom_distiller/core/dom_distiller_service.h b/components/dom_distiller/core/dom_distiller_service.h
index 221af72dae3fcbd3fbb2fe800a5c1e30f30cdf15..bb9d340177e2271626445edff95dbf313dbb6ad1 100644
--- a/components/dom_distiller/core/dom_distiller_service.h
+++ b/components/dom_distiller/core/dom_distiller_service.h
@@ -13,6 +13,7 @@
#include "base/memory/scoped_vector.h"
#include "base/memory/weak_ptr.h"
#include "components/dom_distiller/core/article_entry.h"
+#include "components/dom_distiller/core/distiller_page.h"
class GURL;
@@ -25,6 +26,7 @@ namespace dom_distiller {
class DistilledArticleProto;
class DistilledContentStore;
class DistillerFactory;
+class DistillerPageFactory;
class DomDistillerObserver;
class DomDistillerStoreInterface;
class TaskTracker;
@@ -44,8 +46,10 @@ class DomDistillerServiceInterface {
// Distill the article at |url| and add the resulting entry to the DOM
// distiller list. |article_cb| is always invoked, and the bool argument to it
// represents whether the article is available offline.
cjhopman 2014/04/24 23:03:05 One important point here, the provided distiller_p
nyquist 2014/04/25 15:41:13 I have now tried to clarify this in the documentat
+ // Use CreateDefaultDistillerPage() to create a default |distiller_page|.
virtual const std::string AddToList(
const GURL& url,
+ scoped_ptr<DistillerPage> distiller_page,
const ArticleAvailableCallback& article_cb) = 0;
// Gets the full list of entries.
@@ -59,12 +63,21 @@ class DomDistillerServiceInterface {
// ViewRequestDelegate. The request will be cancelled when the handle is
// destroyed (or when this service is destroyed), which also ensures that
// the |delegate| is not called after that.
- virtual scoped_ptr<ViewerHandle> ViewEntry(ViewRequestDelegate* delegate,
- const std::string& entry_id) = 0;
+ // Use CreateDefaultDistillerPage() to create a default |distiller_page|.
+ virtual scoped_ptr<ViewerHandle> ViewEntry(
+ ViewRequestDelegate* delegate,
+ scoped_ptr<DistillerPage> distiller_page,
+ const std::string& entry_id) = 0;
// Request to view an article by url.
- virtual scoped_ptr<ViewerHandle> ViewUrl(ViewRequestDelegate* delegate,
- const GURL& url) = 0;
+ // Use CreateDefaultDistillerPage() to create a default |distiller_page|.
+ virtual scoped_ptr<ViewerHandle> ViewUrl(
+ ViewRequestDelegate* delegate,
+ scoped_ptr<DistillerPage> distiller_page,
+ const GURL& url) = 0;
+
+ // Creates a default DistillerPage.
+ virtual scoped_ptr<DistillerPage> CreateDefaultDistillerPage() = 0;
virtual void AddObserver(DomDistillerObserver* observer) = 0;
virtual void RemoveObserver(DomDistillerObserver* observer) = 0;
@@ -80,22 +93,28 @@ class DomDistillerServiceInterface {
class DomDistillerService : public DomDistillerServiceInterface {
public:
DomDistillerService(scoped_ptr<DomDistillerStoreInterface> store,
- scoped_ptr<DistillerFactory> distiller_factory);
+ scoped_ptr<DistillerFactory> distiller_factory,
+ scoped_ptr<DistillerPageFactory> distiller_page_factory);
virtual ~DomDistillerService();
// DomDistillerServiceInterface implementation.
virtual syncer::SyncableService* GetSyncableService() const OVERRIDE;
virtual const std::string AddToList(
const GURL& url,
+ scoped_ptr<DistillerPage> distiller_page,
const ArticleAvailableCallback& article_cb) OVERRIDE;
virtual std::vector<ArticleEntry> GetEntries() const OVERRIDE;
- virtual scoped_ptr<ArticleEntry> RemoveEntry(const std::string& entry_id)
- OVERRIDE;
- virtual scoped_ptr<ViewerHandle> ViewEntry(ViewRequestDelegate* delegate,
- const std::string& entry_id)
- OVERRIDE;
- virtual scoped_ptr<ViewerHandle> ViewUrl(ViewRequestDelegate* delegate,
- const GURL& url) OVERRIDE;
+ virtual scoped_ptr<ArticleEntry> RemoveEntry(
+ const std::string& entry_id) OVERRIDE;
+ virtual scoped_ptr<ViewerHandle> ViewEntry(
+ ViewRequestDelegate* delegate,
+ scoped_ptr<DistillerPage> distiller_page,
+ const std::string& entry_id) OVERRIDE;
+ virtual scoped_ptr<ViewerHandle> ViewUrl(
+ ViewRequestDelegate* delegate,
+ scoped_ptr<DistillerPage> distiller_page,
+ const GURL& url) OVERRIDE;
+ virtual scoped_ptr<DistillerPage> CreateDefaultDistillerPage() OVERRIDE;
virtual void AddObserver(DomDistillerObserver* observer) OVERRIDE;
virtual void RemoveObserver(DomDistillerObserver* observer) OVERRIDE;
@@ -118,6 +137,7 @@ class DomDistillerService : public DomDistillerServiceInterface {
scoped_ptr<DomDistillerStoreInterface> store_;
scoped_ptr<DistilledContentStore> content_store_;
scoped_ptr<DistillerFactory> distiller_factory_;
+ scoped_ptr<DistillerPageFactory> distiller_page_factory_;
typedef ScopedVector<TaskTracker> TaskList;
TaskList tasks_;
« no previous file with comments | « components/dom_distiller/core/distiller_unittest.cc ('k') | components/dom_distiller/core/dom_distiller_service.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698