| OLD | NEW |
| 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2012 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_PRERENDER_PRERENDER_MANAGER_H_ | 5 #ifndef CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ |
| 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ | 6 #define CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 | 9 |
| 10 #include <memory> | 10 #include <memory> |
| (...skipping 320 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 331 void AddPrerenderProcessHost(content::RenderProcessHost* process_host); | 331 void AddPrerenderProcessHost(content::RenderProcessHost* process_host); |
| 332 | 332 |
| 333 // Returns whether or not |process_host| may be reused for new navigations | 333 // Returns whether or not |process_host| may be reused for new navigations |
| 334 // from a prerendering perspective. Currently, if Prerender Cookie Stores are | 334 // from a prerendering perspective. Currently, if Prerender Cookie Stores are |
| 335 // enabled, prerenders must be in their own processes that may not be shared. | 335 // enabled, prerenders must be in their own processes that may not be shared. |
| 336 bool MayReuseProcessHost(content::RenderProcessHost* process_host); | 336 bool MayReuseProcessHost(content::RenderProcessHost* process_host); |
| 337 | 337 |
| 338 // content::RenderProcessHostObserver implementation. | 338 // content::RenderProcessHostObserver implementation. |
| 339 void RenderProcessHostDestroyed(content::RenderProcessHost* host) override; | 339 void RenderProcessHostDestroyed(content::RenderProcessHost* host) override; |
| 340 | 340 |
| 341 // content::RenderProcessHostObserver implementation. |
| 342 // Destroys the |PrerenderContents| responsible for |host|. |
| 343 void RenderProcessHostPrefetchFinished( |
| 344 content::RenderProcessHost* host) override; |
| 345 |
| 341 void SetPrerenderContentsFactoryForTest( | 346 void SetPrerenderContentsFactoryForTest( |
| 342 PrerenderContents::Factory* prerender_contents_factory); | 347 PrerenderContents::Factory* prerender_contents_factory); |
| 343 | 348 |
| 344 bool IsPrerenderSilenceExperimentForTesting(Origin origin) const { | 349 bool IsPrerenderSilenceExperimentForTesting(Origin origin) const { |
| 345 return IsPrerenderSilenceExperiment(origin); | 350 return IsPrerenderSilenceExperiment(origin); |
| 346 } | 351 } |
| 347 | 352 |
| 348 protected: | 353 protected: |
| 349 class PrerenderData : public base::SupportsWeakPtr<PrerenderData> { | 354 class PrerenderData : public base::SupportsWeakPtr<PrerenderData> { |
| 350 public: | 355 public: |
| (...skipping 246 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 597 PrerenderProcessSet prerender_process_hosts_; | 602 PrerenderProcessSet prerender_process_hosts_; |
| 598 | 603 |
| 599 base::WeakPtrFactory<PrerenderManager> weak_factory_; | 604 base::WeakPtrFactory<PrerenderManager> weak_factory_; |
| 600 | 605 |
| 601 DISALLOW_COPY_AND_ASSIGN(PrerenderManager); | 606 DISALLOW_COPY_AND_ASSIGN(PrerenderManager); |
| 602 }; | 607 }; |
| 603 | 608 |
| 604 } // namespace prerender | 609 } // namespace prerender |
| 605 | 610 |
| 606 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ | 611 #endif // CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_ |
| OLD | NEW |