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

Unified Diff: components/suggestions/suggestions_service.h

Issue 766053010: SuggestionsService undo blacklist functionality. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: GetTimeUntilReadyForUpload should not return negative values Created 6 years 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/suggestions/suggestions_service.h
diff --git a/components/suggestions/suggestions_service.h b/components/suggestions/suggestions_service.h
index 75d32759510db336ac176e70c2358a3e70ad84fd..16c1d60fe57748f6c94daa76b69697468e63d49f 100644
--- a/components/suggestions/suggestions_service.h
+++ b/components/suggestions/suggestions_service.h
@@ -81,10 +81,18 @@ class SuggestionsService : public KeyedService, public net::URLFetcherDelegate {
const GURL& url,
base::Callback<void(const GURL&, const SkBitmap*)> callback);
- // Issue a blacklist request. If there is already a blacklist or suggestions
- // request in flight, the new blacklist request is ignored.
+ // Adds a URL to the blacklist cache, invoking |callback| on success or
+ // |fail_callback| otherwise. The URL will eventually be uploaded to the
+ // server.
void BlacklistURL(const GURL& candidate_url,
- const ResponseCallback& callback);
+ const ResponseCallback& callback,
+ const base::Closure& fail_callback);
+
+ // Removes a URL from the local blacklist, then invokes |callback|. If the URL
+ // cannot be removed, the |fail_callback| is called.
+ void UndoBlacklistURL(const GURL& url,
+ const ResponseCallback& callback,
+ const base::Closure& fail_callback);
// Determines which URL a blacklist request was for, irrespective of the
// request's status. Returns false if |request| is not a blacklist request.
@@ -103,7 +111,10 @@ class SuggestionsService : public KeyedService, public net::URLFetcherDelegate {
private:
friend class SuggestionsServiceTest;
- FRIEND_TEST_ALL_PREFIXES(SuggestionsServiceTest, BlacklistURLFails);
+ FRIEND_TEST_ALL_PREFIXES(SuggestionsServiceTest, BlacklistURL);
+ FRIEND_TEST_ALL_PREFIXES(SuggestionsServiceTest, BlacklistURLRequestFails);
+ FRIEND_TEST_ALL_PREFIXES(SuggestionsServiceTest, UndoBlacklistURL);
+ FRIEND_TEST_ALL_PREFIXES(SuggestionsServiceTest, UndoBlacklistURLFailsHelper);
FRIEND_TEST_ALL_PREFIXES(SuggestionsServiceTest, UpdateBlacklistDelay);
// Creates a request to the suggestions service, properly setting headers.
@@ -125,20 +136,19 @@ class SuggestionsService : public KeyedService, public net::URLFetcherDelegate {
void FilterAndServe(SuggestionsProfile* suggestions);
// Schedules a blacklisting request if the local blacklist isn't empty.
- // |last_request_successful| is used for exponentially backing off when
- // requests fail.
- void ScheduleBlacklistUpload(bool last_request_successful);
+ void ScheduleBlacklistUpload();
// If the local blacklist isn't empty, picks a URL from it and issues a
// blacklist request for it.
void UploadOneFromBlacklist();
- // Updates |blacklist_delay_sec_| based on the success of the last request.
+ // Updates |scheduling_delay_| based on the success of the last request.
void UpdateBlacklistDelay(bool last_request_successful);
// Test seams.
- int blacklist_delay() const { return blacklist_delay_sec_; }
- void set_blacklist_delay(int delay) { blacklist_delay_sec_ = delay; }
+ base::TimeDelta blacklist_delay() const { return scheduling_delay_; }
+ void set_blacklist_delay(base::TimeDelta delay) {
+ scheduling_delay_ = delay; }
base::ThreadChecker thread_checker_;
@@ -154,7 +164,7 @@ class SuggestionsService : public KeyedService, public net::URLFetcherDelegate {
scoped_ptr<BlacklistStore> blacklist_store_;
// Delay used when scheduling a blacklisting task.
- int blacklist_delay_sec_;
+ base::TimeDelta scheduling_delay_;
// Contains the current suggestions fetch request. Will only have a value
// while a request is pending, and will be reset by |OnURLFetchComplete| or

Powered by Google App Engine
This is Rietveld 408576698