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

Side by Side Diff: chrome/browser/history/history_backend.h

Issue 7995: Move Time, TimeDelta and TimeTicks into namespace base. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/
Patch Set: Created 12 years, 2 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 (c) 2006-2008 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2006-2008 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_HISTORY_HISTORY_BACKEND_H__ 5 #ifndef CHROME_BROWSER_HISTORY_HISTORY_BACKEND_H__
6 #define CHROME_BROWSER_HISTORY_HISTORY_BACKEND_H__ 6 #define CHROME_BROWSER_HISTORY_HISTORY_BACKEND_H__
7 7
8 #include <utility> 8 #include <utility>
9 9
10 #include "base/gfx/rect.h" 10 #include "base/gfx/rect.h"
(...skipping 179 matching lines...) Expand 10 before | Expand all | Expand 10 after
190 const std::vector<ImportedFavIconUsage>& favicon_usage); 190 const std::vector<ImportedFavIconUsage>& favicon_usage);
191 191
192 // Downloads ----------------------------------------------------------------- 192 // Downloads -----------------------------------------------------------------
193 193
194 void QueryDownloads(scoped_refptr<DownloadQueryRequest> request); 194 void QueryDownloads(scoped_refptr<DownloadQueryRequest> request);
195 void UpdateDownload(int64 received_bytes, int32 state, int64 db_handle); 195 void UpdateDownload(int64 received_bytes, int32 state, int64 db_handle);
196 void UpdateDownloadPath(const std::wstring& path, int64 db_handle); 196 void UpdateDownloadPath(const std::wstring& path, int64 db_handle);
197 void CreateDownload(scoped_refptr<DownloadCreateRequest> request, 197 void CreateDownload(scoped_refptr<DownloadCreateRequest> request,
198 const DownloadCreateInfo& info); 198 const DownloadCreateInfo& info);
199 void RemoveDownload(int64 db_handle); 199 void RemoveDownload(int64 db_handle);
200 void RemoveDownloadsBetween(const Time remove_begin, 200 void RemoveDownloadsBetween(const base::Time remove_begin,
201 const Time remove_end); 201 const base::Time remove_end);
202 void RemoveDownloads(const Time remove_end); 202 void RemoveDownloads(const base::Time remove_end);
203 void SearchDownloads(scoped_refptr<DownloadSearchRequest>, 203 void SearchDownloads(scoped_refptr<DownloadSearchRequest>,
204 const std::wstring& search_text); 204 const std::wstring& search_text);
205 205
206 // Segment usage ------------------------------------------------------------- 206 // Segment usage -------------------------------------------------------------
207 207
208 void QuerySegmentUsage(scoped_refptr<QuerySegmentUsageRequest> request, 208 void QuerySegmentUsage(scoped_refptr<QuerySegmentUsageRequest> request,
209 const Time from_time); 209 const base::Time from_time);
210 void DeleteOldSegmentData(); 210 void DeleteOldSegmentData();
211 void SetSegmentPresentationIndex(SegmentID segment_id, int index); 211 void SetSegmentPresentationIndex(SegmentID segment_id, int index);
212 212
213 // Keyword search terms ------------------------------------------------------ 213 // Keyword search terms ------------------------------------------------------
214 214
215 void SetKeywordSearchTermsForURL(const GURL& url, 215 void SetKeywordSearchTermsForURL(const GURL& url,
216 TemplateURL::IDType keyword_id, 216 TemplateURL::IDType keyword_id,
217 const std::wstring& term); 217 const std::wstring& term);
218 218
219 void DeleteAllSearchTermsForKeyword(TemplateURL::IDType keyword_id); 219 void DeleteAllSearchTermsForKeyword(TemplateURL::IDType keyword_id);
220 220
221 void GetMostRecentKeywordSearchTerms( 221 void GetMostRecentKeywordSearchTerms(
222 scoped_refptr<GetMostRecentKeywordSearchTermsRequest> request, 222 scoped_refptr<GetMostRecentKeywordSearchTermsRequest> request,
223 TemplateURL::IDType keyword_id, 223 TemplateURL::IDType keyword_id,
224 const std::wstring& prefix, 224 const std::wstring& prefix,
225 int max_count); 225 int max_count);
226 226
227 // Generic operations -------------------------------------------------------- 227 // Generic operations --------------------------------------------------------
228 228
229 void ProcessDBTask(scoped_refptr<HistoryDBTaskRequest> request); 229 void ProcessDBTask(scoped_refptr<HistoryDBTaskRequest> request);
230 230
231 // Deleting ------------------------------------------------------------------ 231 // Deleting ------------------------------------------------------------------
232 232
233 void DeleteURL(const GURL& url); 233 void DeleteURL(const GURL& url);
234 234
235 // Calls ExpireHistoryBackend::ExpireHistoryBetween and commits the change. 235 // Calls ExpireHistoryBackend::ExpireHistoryBetween and commits the change.
236 void ExpireHistoryBetween(scoped_refptr<ExpireHistoryRequest> request, 236 void ExpireHistoryBetween(scoped_refptr<ExpireHistoryRequest> request,
237 Time begin_time, 237 base::Time begin_time,
238 Time end_time); 238 base::Time end_time);
239 239
240 // Bookmarks ----------------------------------------------------------------- 240 // Bookmarks -----------------------------------------------------------------
241 241
242 // Notification that a URL is no longer bookmarked. If there are no visits 242 // Notification that a URL is no longer bookmarked. If there are no visits
243 // for the specified url, it is deleted. 243 // for the specified url, it is deleted.
244 void URLsNoLongerBookmarked(const std::set<GURL>& urls); 244 void URLsNoLongerBookmarked(const std::set<GURL>& urls);
245 245
246 // Testing ------------------------------------------------------------------- 246 // Testing -------------------------------------------------------------------
247 247
248 // Sets the task to run and the message loop to run it on when this object 248 // Sets the task to run and the message loop to run it on when this object
(...skipping 26 matching lines...) Expand all
275 void InitImpl(); 275 void InitImpl();
276 276
277 // Adds a single visit to the database, updating the URL information such 277 // Adds a single visit to the database, updating the URL information such
278 // as visit and typed count. The visit ID of the added visit and the URL ID 278 // as visit and typed count. The visit ID of the added visit and the URL ID
279 // of the associated URL (whether added or not) is returned. Both values will 279 // of the associated URL (whether added or not) is returned. Both values will
280 // be 0 on failure. 280 // be 0 on failure.
281 // 281 //
282 // This does not schedule database commits, it is intended to be used as a 282 // This does not schedule database commits, it is intended to be used as a
283 // subroutine for AddPage only. It also assumes the database is valid. 283 // subroutine for AddPage only. It also assumes the database is valid.
284 std::pair<URLID, VisitID> AddPageVisit(const GURL& url, 284 std::pair<URLID, VisitID> AddPageVisit(const GURL& url,
285 Time time, 285 base::Time time,
286 VisitID referring_visit, 286 VisitID referring_visit,
287 PageTransition::Type transition); 287 PageTransition::Type transition);
288 288
289 // Returns a redirect chain in |redirects| for the VisitID 289 // Returns a redirect chain in |redirects| for the VisitID
290 // |cur_visit|. |cur_visit| is assumed to be valid. Assumes that 290 // |cur_visit|. |cur_visit| is assumed to be valid. Assumes that
291 // this HistoryBackend object has been Init()ed successfully. 291 // this HistoryBackend object has been Init()ed successfully.
292 void GetRedirectsFromSpecificVisit( 292 void GetRedirectsFromSpecificVisit(
293 VisitID cur_visit, HistoryService::RedirectList* redirects); 293 VisitID cur_visit, HistoryService::RedirectList* redirects);
294 294
295 // Thumbnail Helpers --------------------------------------------------------- 295 // Thumbnail Helpers ---------------------------------------------------------
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
338 // Walks back a segment chain to find the last visit with a non null segment 338 // Walks back a segment chain to find the last visit with a non null segment
339 // id and returns it. If there is none found, returns 0. 339 // id and returns it. If there is none found, returns 0.
340 SegmentID GetLastSegmentID(VisitID from_visit); 340 SegmentID GetLastSegmentID(VisitID from_visit);
341 341
342 // Update the segment information. This is called internally when a page is 342 // Update the segment information. This is called internally when a page is
343 // added. Return the segment id of the segment that has been updated. 343 // added. Return the segment id of the segment that has been updated.
344 SegmentID UpdateSegments(const GURL& url, 344 SegmentID UpdateSegments(const GURL& url,
345 VisitID from_visit, 345 VisitID from_visit,
346 VisitID visit_id, 346 VisitID visit_id,
347 PageTransition::Type transition_type, 347 PageTransition::Type transition_type,
348 const Time ts); 348 const base::Time ts);
349 349
350 // Favicons ------------------------------------------------------------------ 350 // Favicons ------------------------------------------------------------------
351 351
352 // Used by both UpdateFavIconMappingAndFetch and GetFavIcon. 352 // Used by both UpdateFavIconMappingAndFetch and GetFavIcon.
353 // If page_url is non-null and SetFavIcon has previously been invoked for 353 // If page_url is non-null and SetFavIcon has previously been invoked for
354 // icon_url the favicon url for page_url (and all redirects) is set to 354 // icon_url the favicon url for page_url (and all redirects) is set to
355 // icon_url. 355 // icon_url.
356 void UpdateFavIconMappingAndFetchImpl( 356 void UpdateFavIconMappingAndFetchImpl(
357 const GURL* page_url, 357 const GURL* page_url,
358 const GURL& icon_url, 358 const GURL& icon_url,
(...skipping 88 matching lines...) Expand 10 before | Expand all | Expand 10 after
447 // As with AddPage, the last item in the redirect chain will be the 447 // As with AddPage, the last item in the redirect chain will be the
448 // destination of the redirect (i.e., the key into recent_redirects_); 448 // destination of the redirect (i.e., the key into recent_redirects_);
449 typedef MRUCache<GURL, HistoryService::RedirectList> RedirectCache; 449 typedef MRUCache<GURL, HistoryService::RedirectList> RedirectCache;
450 RedirectCache recent_redirects_; 450 RedirectCache recent_redirects_;
451 451
452 // Timestamp of the last page addition request. We use this to detect when 452 // Timestamp of the last page addition request. We use this to detect when
453 // multiple additions are requested at the same time (within the resolution 453 // multiple additions are requested at the same time (within the resolution
454 // of the timer), so we can try to ensure they're unique when they're added 454 // of the timer), so we can try to ensure they're unique when they're added
455 // to the database by using the last_recorded_time_ (q.v.). We still can't 455 // to the database by using the last_recorded_time_ (q.v.). We still can't
456 // enforce or guarantee uniqueness, since the user might set his clock back. 456 // enforce or guarantee uniqueness, since the user might set his clock back.
457 Time last_requested_time_; 457 base::Time last_requested_time_;
458 458
459 // Timestamp of the last page addition, as it was recorded in the database. 459 // Timestamp of the last page addition, as it was recorded in the database.
460 // If two or more requests come in at the same time, we increment that time 460 // If two or more requests come in at the same time, we increment that time
461 // by 1 us between them so it's more likely to be unique in the database. 461 // by 1 us between them so it's more likely to be unique in the database.
462 // This keeps track of that higher-resolution timestamp. 462 // This keeps track of that higher-resolution timestamp.
463 Time last_recorded_time_; 463 base::Time last_recorded_time_;
464 464
465 // When non-NULL, this is the task that should be invoked on 465 // When non-NULL, this is the task that should be invoked on
466 MessageLoop* backend_destroy_message_loop_; 466 MessageLoop* backend_destroy_message_loop_;
467 Task* backend_destroy_task_; 467 Task* backend_destroy_task_;
468 468
469 // Tracks page transition types. 469 // Tracks page transition types.
470 VisitTracker tracker_; 470 VisitTracker tracker_;
471 471
472 // A boolean variable to track whether we have already purged obsolete segment 472 // A boolean variable to track whether we have already purged obsolete segment
473 // data. 473 // data.
474 bool segment_queried_; 474 bool segment_queried_;
475 475
476 // HistoryDBTasks to run. Be sure to AddRef when adding, and Release when 476 // HistoryDBTasks to run. Be sure to AddRef when adding, and Release when
477 // done. 477 // done.
478 std::list<HistoryDBTaskRequest*> db_task_requests_; 478 std::list<HistoryDBTaskRequest*> db_task_requests_;
479 479
480 // Used to determine if a URL is bookmarked. This is owned by the Profile and 480 // Used to determine if a URL is bookmarked. This is owned by the Profile and
481 // may be NULL (during testing). 481 // may be NULL (during testing).
482 // 482 //
483 // Use GetBookmarkService to access this, which makes sure the service is 483 // Use GetBookmarkService to access this, which makes sure the service is
484 // loaded. 484 // loaded.
485 BookmarkService* bookmark_service_; 485 BookmarkService* bookmark_service_;
486 486
487 DISALLOW_EVIL_CONSTRUCTORS(HistoryBackend); 487 DISALLOW_EVIL_CONSTRUCTORS(HistoryBackend);
488 }; 488 };
489 489
490 } // namespace history 490 } // namespace history
491 491
492 #endif // CHROME_BROWSER_HISTORY_HISTORY_BACKEND_H__ 492 #endif // CHROME_BROWSER_HISTORY_HISTORY_BACKEND_H__
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698