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

Side by Side Diff: chrome/browser/extensions/activity_log/activity_log_policy.h

Issue 23980002: Activity Log: allow searching by day (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Fixed error from last rebase Created 7 years, 3 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef CHROME_BROWSER_EXTENSIONS_ACTIVITY_LOG_ACTIVITY_LOG_POLICY_H_ 5 #ifndef CHROME_BROWSER_EXTENSIONS_ACTIVITY_LOG_ACTIVITY_LOG_POLICY_H_
6 #define CHROME_BROWSER_EXTENSIONS_ACTIVITY_LOG_ACTIVITY_LOG_POLICY_H_ 6 #define CHROME_BROWSER_EXTENSIONS_ACTIVITY_LOG_ACTIVITY_LOG_POLICY_H_
7 7
8 #include <set> 8 #include <set>
9 #include <string> 9 #include <string>
10 10
(...skipping 56 matching lines...) Expand 10 before | Expand all | Expand 10 after
67 // Instead of a public destructor, ActivityLogPolicy objects have a Close() 67 // Instead of a public destructor, ActivityLogPolicy objects have a Close()
68 // method which will cause the object to be deleted (but may do so on another 68 // method which will cause the object to be deleted (but may do so on another
69 // thread or in a deferred fashion). 69 // thread or in a deferred fashion).
70 virtual void Close() = 0; 70 virtual void Close() = 0;
71 71
72 // Updates the internal state of the model summarizing actions and possibly 72 // Updates the internal state of the model summarizing actions and possibly
73 // writes to the database. Implements the default policy storing internal 73 // writes to the database. Implements the default policy storing internal
74 // state to memory every 5 min. 74 // state to memory every 5 min.
75 virtual void ProcessAction(scoped_refptr<Action> action) = 0; 75 virtual void ProcessAction(scoped_refptr<Action> action) = 0;
76 76
77 // Gets all actions for a given extension for the specified day. 0 = today,
78 // 1 = yesterday, etc. Only returns 1 day at a time. Actions are sorted from
79 // newest to oldest. Results as passed to the specified callback when
80 // available.
81 //
82 // TODO(felt,dbabic) This is overly specific to the current implementation of
83 // the FullStreamUIPolicy. We should refactor it to use a more generic read
84 // function, for example one that takes a dictionary of query parameters
85 // (extension_id, time range, etc.).
86 virtual void ReadData(
87 const std::string& extension_id,
88 const int day,
89 const base::Callback
90 <void(scoped_ptr<Action::ActionVector>)>& callback) = 0;
91
92 // Gets all actions that match the specified fields. URLs are treated like 77 // Gets all actions that match the specified fields. URLs are treated like
93 // prefixes; other fields are exact matches. Empty strings are not matched to 78 // prefixes; other fields are exact matches. Empty strings are not matched to
94 // anything. 79 // anything. For the date: 0 = today, 1 = yesterday, etc.; if the data is
80 // negative, it will be treated as missing.
95 virtual void ReadFilteredData( 81 virtual void ReadFilteredData(
96 const std::string& extension_id, 82 const std::string& extension_id,
97 const Action::ActionType type, 83 const Action::ActionType type,
98 const std::string& api_name, 84 const std::string& api_name,
99 const std::string& page_url, 85 const std::string& page_url,
100 const std::string& arg_url, 86 const std::string& arg_url,
87 const int days_ago,
101 const base::Callback 88 const base::Callback
102 <void(scoped_ptr<Action::ActionVector>)>& callback) = 0; 89 <void(scoped_ptr<Action::ActionVector>)>& callback) = 0;
103 90
104 // Clean the relevant URL data. The cleaning may need to be different for 91 // Clean the relevant URL data. The cleaning may need to be different for
105 // different policies. If restrict_urls is empty then all URLs are removed. 92 // different policies. If restrict_urls is empty then all URLs are removed.
106 virtual void RemoveURLs(const std::vector<GURL>& restrict_urls) = 0; 93 virtual void RemoveURLs(const std::vector<GURL>& restrict_urls) = 0;
107 94
108 // Deletes everything in the database. 95 // Deletes everything in the database.
109 virtual void DeleteDatabase() = 0; 96 virtual void DeleteDatabase() = 0;
110 97
(...skipping 114 matching lines...) Expand 10 before | Expand all | Expand 10 after
225 212
226 private: 213 private:
227 // See the comments for the ActivityDatabase class for a discussion of how 214 // See the comments for the ActivityDatabase class for a discussion of how
228 // database cleanup runs. 215 // database cleanup runs.
229 ActivityDatabase* db_; 216 ActivityDatabase* db_;
230 }; 217 };
231 218
232 } // namespace extensions 219 } // namespace extensions
233 220
234 #endif // CHROME_BROWSER_EXTENSIONS_ACTIVITY_LOG_ACTIVITY_LOG_POLICY_H_ 221 #endif // CHROME_BROWSER_EXTENSIONS_ACTIVITY_LOG_ACTIVITY_LOG_POLICY_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698