history_marshaling.h revision dc0f95d653279beabeb9817299e2902918ba123e
1// Copyright (c) 2010 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// Data structures for communication between the history service on the main 6// thread and the backend on the history thread. 7 8#ifndef CHROME_BROWSER_HISTORY_HISTORY_MARSHALING_H__ 9#define CHROME_BROWSER_HISTORY_HISTORY_MARSHALING_H__ 10#pragma once 11 12#include "base/scoped_vector.h" 13#include "chrome/browser/favicon_service.h" 14#include "chrome/browser/history/history.h" 15#include "chrome/browser/history/page_usage_data.h" 16#include "content/browser/cancelable_request.h" 17 18namespace history { 19 20// Querying ------------------------------------------------------------------- 21 22typedef CancelableRequest1<HistoryService::QueryURLCallback, 23 Tuple2<URLRow, VisitVector> > 24 QueryURLRequest; 25 26typedef CancelableRequest1<HistoryService::QueryHistoryCallback, 27 QueryResults> 28 QueryHistoryRequest; 29 30typedef CancelableRequest1<HistoryService::QueryRedirectsCallback, 31 history::RedirectList> 32 QueryRedirectsRequest; 33 34typedef CancelableRequest<HistoryService::GetVisitCountToHostCallback> 35 GetVisitCountToHostRequest; 36 37typedef CancelableRequest1<HistoryService::QueryTopURLsAndRedirectsCallback, 38 Tuple2<std::vector<GURL>, 39 history::RedirectMap> > 40 QueryTopURLsAndRedirectsRequest; 41 42typedef CancelableRequest1<HistoryService::QueryMostVisitedURLsCallback, 43 history::MostVisitedURLList> 44 QueryMostVisitedURLsRequest; 45 46// Thumbnails ----------------------------------------------------------------- 47 48typedef CancelableRequest<HistoryService::ThumbnailDataCallback> 49 GetPageThumbnailRequest; 50 51// Favicons ------------------------------------------------------------------- 52 53typedef CancelableRequest<FaviconService::FaviconDataCallback> 54 GetFavIconRequest; 55 56// Downloads ------------------------------------------------------------------ 57 58typedef CancelableRequest1<HistoryService::DownloadQueryCallback, 59 std::vector<DownloadCreateInfo> > 60 DownloadQueryRequest; 61 62typedef CancelableRequest<HistoryService::DownloadCreateCallback> 63 DownloadCreateRequest; 64 65// Deletion -------------------------------------------------------------------- 66 67typedef CancelableRequest<HistoryService::ExpireHistoryCallback> 68 ExpireHistoryRequest; 69 70// Segment usage -------------------------------------------------------------- 71 72typedef CancelableRequest1<HistoryService::SegmentQueryCallback, 73 ScopedVector<PageUsageData> > 74 QuerySegmentUsageRequest; 75 76// Keyword search terms ------------------------------------------------------- 77 78typedef 79 CancelableRequest1<HistoryService::GetMostRecentKeywordSearchTermsCallback, 80 std::vector<KeywordSearchTermVisit> > 81 GetMostRecentKeywordSearchTermsRequest; 82 83// Generic operations --------------------------------------------------------- 84 85// The argument here is an input value, which is the task to run on the 86// background thread. The callback is used to execute the portion of the task 87// that executes on the main thread. 88typedef CancelableRequest1<HistoryService::HistoryDBTaskCallback, 89 scoped_refptr<HistoryDBTask> > 90 HistoryDBTaskRequest; 91 92} // namespace history 93 94#endif // CHROME_BROWSER_HISTORY_HISTORY_MARSHALING_H__ 95