diff options
Diffstat (limited to 'chrome/browser/prerender/prerender_manager.h')
-rw-r--r-- | chrome/browser/prerender/prerender_manager.h | 12 |
1 files changed, 11 insertions, 1 deletions
diff --git a/chrome/browser/prerender/prerender_manager.h b/chrome/browser/prerender/prerender_manager.h index 4d12020..dd238c2 100644 --- a/chrome/browser/prerender/prerender_manager.h +++ b/chrome/browser/prerender/prerender_manager.h @@ -21,6 +21,7 @@ #include "chrome/browser/prerender/prerender_contents.h" #include "chrome/browser/prerender/prerender_final_status.h" #include "chrome/browser/prerender/prerender_origin.h" +#include "chrome/browser/profiles/profile_keyed_service.h" #include "googleurl/src/gurl.h" class Profile; @@ -54,7 +55,8 @@ class PrerenderTracker; // views of webpages. All methods must be called on the UI thread unless // indicated otherwise. class PrerenderManager : public base::SupportsWeakPtr<PrerenderManager>, - public base::NonThreadSafe { + public base::NonThreadSafe, + public ProfileKeyedService { public: // PrerenderManagerMode is used in a UMA_HISTOGRAM, so please do not // add in the middle. @@ -82,6 +84,9 @@ class PrerenderManager : public base::SupportsWeakPtr<PrerenderManager>, virtual ~PrerenderManager(); + // ProfileKeyedService implementation. + virtual void Shutdown() OVERRIDE; + // Entry points for adding prerenders. // Adds a prerender for |url| if valid. |process_id| and |route_id| identify @@ -219,6 +224,11 @@ class PrerenderManager : public base::SupportsWeakPtr<PrerenderManager>, void SetPrerenderContentsFactory( PrerenderContents::Factory* prerender_contents_factory); + // Utility method that is called from the virtual Shutdown method on this + // class but is called directly from the TestPrerenderManager in the unit + // tests. + void DoShutdown(); + private: // Needs access to AddPrerender. friend class PrerenderContents; |