| Index: chrome/browser/history/history.h
|
| diff --git a/chrome/browser/history/history.h b/chrome/browser/history/history.h
|
| index b8c48a2003d24586eb089073f3e60053d3bc849c..011764f0b15342e68252c37c040460b7c38e59cb 100644
|
| --- a/chrome/browser/history/history.h
|
| +++ b/chrome/browser/history/history.h
|
| @@ -25,7 +25,6 @@
|
| #include "chrome/browser/history/history_types.h"
|
| #include "chrome/browser/profiles/profile_keyed_service.h"
|
| #include "chrome/browser/search_engines/template_url_id.h"
|
| -#include "chrome/browser/visitedlink/visitedlink_delegate.h"
|
| #include "chrome/common/cancelable_task_tracker.h"
|
| #include "chrome/common/ref_counted_util.h"
|
| #include "content/public/browser/notification_observer.h"
|
| @@ -46,7 +45,6 @@ class HistoryURLProvider;
|
| class PageUsageData;
|
| class PageUsageRequest;
|
| class Profile;
|
| -class VisitedLinkMaster;
|
| struct HistoryURLProviderParams;
|
|
|
| namespace base {
|
| @@ -109,8 +107,7 @@ class HistoryDBTask : public base::RefCountedThreadSafe<HistoryDBTask> {
|
| class HistoryService : public CancelableRequestProvider,
|
| public content::NotificationObserver,
|
| public syncer::SyncableService,
|
| - public ProfileKeyedService,
|
| - public VisitedLinkDelegate {
|
| + public ProfileKeyedService {
|
| public:
|
| // Miscellaneous commonly-used types.
|
| typedef std::vector<PageUsageData*> PageUsageDataList;
|
| @@ -264,6 +261,31 @@ class HistoryService : public CancelableRequestProvider,
|
|
|
| // Querying ------------------------------------------------------------------
|
|
|
| + // Callback class that a client can implement to iterate over URLs. The
|
| + // callbacks WILL BE CALLED ON THE BACKGROUND THREAD! Your implementation
|
| + // should handle this appropriately.
|
| + class URLEnumerator {
|
| + public:
|
| + // Indicates that a URL is available. There will be exactly one call for
|
| + // every URL in history.
|
| + virtual void OnURL(const history::URLRow& url_row) = 0;
|
| +
|
| + // Indicates we are done iterating over URLs. Once called, there will be no
|
| + // more callbacks made. This call is guaranteed to occur, even if there are
|
| + // no URLs. If all URLs were iterated, success will be true.
|
| + virtual void OnComplete(bool success) = 0;
|
| +
|
| + protected:
|
| + virtual ~URLEnumerator() {}
|
| + };
|
| +
|
| + // Enumerate all URLs in history. The given iterator will be owned by the
|
| + // caller, so the caller should ensure it exists until OnComplete is called.
|
| + // You should not generally use this since it will be slow to slurp all URLs
|
| + // in from the database. It is designed for rebuilding the visited link
|
| + // database from history.
|
| + void IterateURLs(URLEnumerator* iterator);
|
| +
|
| // Returns the information about the requested URL. If the URL is found,
|
| // success will be true and the information will be in the URLRow parameter.
|
| // On success, the visits, if requested, will be sorted by date. If they have
|
| @@ -657,12 +679,6 @@ class HistoryService : public CancelableRequestProvider,
|
| const content::NotificationSource& source,
|
| const content::NotificationDetails& details) OVERRIDE;
|
|
|
| - // Implementation of VisitedLinkDelegate.
|
| - virtual bool AreEquivalentContexts(
|
| - content::BrowserContext* context1,
|
| - content::BrowserContext* context2) OVERRIDE;
|
| - virtual void RebuildTable(URLEnumerator* enumerator) OVERRIDE;
|
| -
|
| // Low-level Init(). Same as the public version, but adds a |no_db| parameter
|
| // that is only set by unittests which causes the backend to not init its DB.
|
| bool Init(const FilePath& history_dir,
|
| @@ -1087,10 +1103,6 @@ class HistoryService : public CancelableRequestProvider,
|
| // The profile, may be null when testing.
|
| Profile* profile_;
|
|
|
| - // Used for propagating link highlighting data across renderers. May be null
|
| - // in tests.
|
| - scoped_ptr<VisitedLinkMaster> visitedlink_master_;
|
| -
|
| // Has the backend finished loading? The backend is loaded once Init has
|
| // completed.
|
| bool backend_loaded_;
|
|
|