| Index: chrome/browser/history/web_history_service.h
|
| diff --git a/chrome/browser/history/web_history_service.h b/chrome/browser/history/web_history_service.h
|
| index 94dc680d72dd9b4d3b384f5dad15e794c06e99ca..f339d324151c55a3d588993ab05d5907fe4b657f 100644
|
| --- a/chrome/browser/history/web_history_service.h
|
| +++ b/chrome/browser/history/web_history_service.h
|
| @@ -5,6 +5,8 @@
|
| #ifndef CHROME_BROWSER_HISTORY_WEB_HISTORY_SERVICE_H_
|
| #define CHROME_BROWSER_HISTORY_WEB_HISTORY_SERVICE_H_
|
|
|
| +#include <set>
|
| +
|
| #include "base/memory/weak_ptr.h"
|
| #include "chrome/browser/history/history_types.h"
|
| #include "chrome/browser/profiles/profile.h"
|
| @@ -46,8 +48,7 @@ class WebHistoryService : public BrowserContextKeyedService {
|
| typedef base::Callback<void(Request*, const base::DictionaryValue*)>
|
| QueryWebHistoryCallback;
|
|
|
| - typedef base::Callback<void(Request*, bool success)>
|
| - ExpireWebHistoryCallback;
|
| + typedef base::Callback<void(bool success)> ExpireWebHistoryCallback;
|
|
|
| explicit WebHistoryService(Profile* profile);
|
| virtual ~WebHistoryService();
|
| @@ -65,19 +66,15 @@ class WebHistoryService : public BrowserContextKeyedService {
|
|
|
| // Removes all visits to specified URLs in specific time ranges.
|
| // This is the of equivalent HistoryService::ExpireHistory().
|
| - // The caller takes ownership of the returned Request. If it is destroyed, the
|
| - // request is cancelled.
|
| - scoped_ptr<Request> ExpireHistory(
|
| - const std::vector<ExpireHistoryArgs>& expire_list,
|
| - const ExpireWebHistoryCallback& callback);
|
| + void ExpireHistory(const std::vector<ExpireHistoryArgs>& expire_list,
|
| + const ExpireWebHistoryCallback& callback);
|
|
|
| // Removes all visits to specified URLs in the given time range.
|
| // This is the of equivalent HistoryService::ExpireHistoryBetween().
|
| - scoped_ptr<Request> ExpireHistoryBetween(
|
| - const std::set<GURL>& restrict_urls,
|
| - base::Time begin_time,
|
| - base::Time end_time,
|
| - const ExpireWebHistoryCallback& callback);
|
| + void ExpireHistoryBetween(const std::set<GURL>& restrict_urls,
|
| + base::Time begin_time,
|
| + base::Time end_time,
|
| + const ExpireWebHistoryCallback& callback);
|
|
|
| private:
|
| // Called by |request| when a web history query has completed. Unpacks the
|
| @@ -103,6 +100,10 @@ class WebHistoryService : public BrowserContextKeyedService {
|
| // subsequent reads see a version of the data that includes the mutation.
|
| std::string server_version_info_;
|
|
|
| + // Pending expiration requests to be canceled if not complete by profile
|
| + // shutdown.
|
| + std::set<Request*> pending_expire_requests_;
|
| +
|
| base::WeakPtrFactory<WebHistoryService> weak_ptr_factory_;
|
|
|
| DISALLOW_COPY_AND_ASSIGN(WebHistoryService);
|
|
|