Chromium Code Reviews| Index: chrome/browser/safe_browsing/malware_details_history.h |
| =================================================================== |
| --- chrome/browser/safe_browsing/malware_details_history.h (revision 0) |
| +++ chrome/browser/safe_browsing/malware_details_history.h (revision 0) |
| @@ -0,0 +1,78 @@ |
| +// Copyright (c) 2011 The Chromium Authors. All rights reserved. |
| +// Use of this source code is governed by a BSD-style license that can be |
| +// found in the LICENSE file. |
| + |
| +#ifndef CHROME_BROWSER_SAFE_BROWSING_MALWARE_DETAILS_HISTORY_H_ |
| +#define CHROME_BROWSER_SAFE_BROWSING_MALWARE_DETAILS_HISTORY_H_ |
| +#pragma once |
| + |
| +// A class that gets url redirets from the history service |
|
mattm
2011/05/17 03:17:01
typo (redirets)
Comments should be complete sente
kewang
2011/05/18 05:47:40
Done.
|
| + |
| +#include <string> |
| +#include <vector> |
|
mattm
2011/05/17 03:17:01
blank line between include blocks
kewang
2011/05/18 05:47:40
Done.
|
| +#include "base/hash_tables.h" |
| +#include "base/memory/linked_ptr.h" |
| +#include "base/memory/ref_counted.h" |
| +#include "chrome/browser/history/history.h" |
| +#include "net/base/completion_callback.h" |
| + |
| +class TabContents; |
| + |
| +namespace safe_browsing { |
| +typedef std::vector<GURL> RedirectChain; |
| +} |
| + |
| +class MalwareDetailsRedirectsCollector |
| + : public base::RefCountedThreadSafe<MalwareDetailsRedirectsCollector> { |
| + |
| + public: |
| + MalwareDetailsRedirectsCollector(); |
| + virtual ~MalwareDetailsRedirectsCollector(); |
| + |
| + // Collect urls' redirects chain information from the history service. |
| + // We get access to history service via tab_contents in UI thread. |
| + // Notice the callback will be posted to the IO thread. |
| + void StartHistoryCollection(const std::vector<GURL>& urls, |
| + TabContents* tab_contents, |
| + Task* callback); |
| + |
| + // Returns whether or not StartCacheCollection has been called. |
| + bool HasStarted(); |
|
mattm
2011/05/17 03:17:01
Should be const method.
kewang
2011/05/18 05:47:40
Done.
|
| + |
| + // Returns the redirect urls we get from history service |
| + std::vector<safe_browsing::RedirectChain>* GetCollectedUrls(); |
|
mattm
2011/05/17 03:17:01
Should return a const reference.
Should be const m
kewang
2011/05/18 05:47:40
Done.
|
| + |
| + // Set the pointer to the history service. Use it in unittest. |
|
mattm
2011/05/17 03:17:01
s/Set/Sets/
(Function comments should be descrip
kewang
2011/05/18 05:47:40
Done.
|
| + void SetHistory(HistoryService* history); |
| + |
| + private: |
| + TabContents* tab_contents_; |
| + HistoryService* history_; |
| + |
| + // Method we call when we are done. The caller must be alive for the |
| + // whole time, we are modifying its state (see above). |
| + Task* callback_; |
| + |
| + // Set to true once StartHistoryCollection is called |
| + bool has_started_; |
| + |
| + // The urls we need to get redirects for |
| + std::vector<GURL> urls_; |
| + // The iterator goes over urls_ |
| + std::vector<GURL>::iterator urls_it_; |
| + // The collected directs from history service |
| + std::vector<safe_browsing::RedirectChain> redirects_urls_; |
| + |
| + void StartGetRedirects(const std::vector<GURL>& urls); |
| + void GetRedirects(const GURL& url); |
| + void OnGotQueryRedirectsTo(HistoryService::Handle handle, |
| + GURL url, |
| + bool success, |
| + history::RedirectList* redirect_list); |
| + |
| + void AllDone(); |
| + |
| + DISALLOW_COPY_AND_ASSIGN(MalwareDetailsRedirectsCollector); |
| +}; |
| + |
| +#endif // CHROME_BROWSER_SAFE_BROWSING_MALWARE_DETAILS_HISTORY_H_ |
| Property changes on: chrome/browser/safe_browsing/malware_details_history.h |
| ___________________________________________________________________ |
| Added: svn:eol-style |
| + LF |