summaryrefslogtreecommitdiffstats
path: root/chrome/browser
diff options
context:
space:
mode:
Diffstat (limited to 'chrome/browser')
-rw-r--r--chrome/browser/browser_main.cc17
-rw-r--r--chrome/browser/net/chrome_url_request_context.h8
-rw-r--r--chrome/browser/prerender/prerender_browsertest.cc29
-rw-r--r--chrome/browser/prerender/prerender_contents.cc12
-rw-r--r--chrome/browser/prerender/prerender_contents.h24
-rw-r--r--chrome/browser/prerender/prerender_final_status.cc18
-rw-r--r--chrome/browser/prerender/prerender_final_status.h31
-rw-r--r--chrome/browser/prerender/prerender_manager.cc14
-rw-r--r--chrome/browser/prerender/prerender_manager.h4
-rw-r--r--chrome/browser/prerender/prerender_manager_unittest.cc38
-rw-r--r--chrome/browser/prerender/prerender_plt_recorder.cc4
-rw-r--r--chrome/browser/prerender/prerender_plt_recorder.h4
-rw-r--r--chrome/browser/prerender/prerender_resource_handler.cc4
-rw-r--r--chrome/browser/prerender/prerender_resource_handler.h4
-rw-r--r--chrome/browser/prerender/prerender_resource_handler_unittest.cc6
-rw-r--r--chrome/browser/profiles/profile.cc2
-rw-r--r--chrome/browser/profiles/profile.h16
-rw-r--r--chrome/browser/profiles/profile_impl.cc6
-rw-r--r--chrome/browser/profiles/profile_impl.h4
-rw-r--r--chrome/browser/renderer_host/resource_dispatcher_host.cc8
-rw-r--r--chrome/browser/tab_contents/tab_contents.cc4
-rw-r--r--chrome/browser/tab_contents/tab_contents.h11
22 files changed, 179 insertions, 89 deletions
diff --git a/chrome/browser/browser_main.cc b/chrome/browser/browser_main.cc
index b69bcd8..694d214 100644
--- a/chrome/browser/browser_main.cc
+++ b/chrome/browser/browser_main.cc
@@ -479,27 +479,32 @@ void BrowserMainParts::PrefetchAndPrerenderFieldTrial() {
trial_grp == yes_prefetch_grp);
// There is currently no prerendering field trial.
- PrerenderManager::SetMode(PrerenderManager::PRERENDER_MODE_DISABLED);
+ prerender::PrerenderManager::SetMode(
+ prerender::PrerenderManager::PRERENDER_MODE_DISABLED);
break;
}
case PRERENDER_OPTION_DISABLED:
ResourceDispatcherHost::set_is_prefetch_enabled(false);
- PrerenderManager::SetMode(PrerenderManager::PRERENDER_MODE_DISABLED);
+ prerender::PrerenderManager::SetMode(
+ prerender::PrerenderManager::PRERENDER_MODE_DISABLED);
break;
case PRERENDER_OPTION_ENABLED:
ResourceDispatcherHost::set_is_prefetch_enabled(true);
- PrerenderManager::SetMode(PrerenderManager::PRERENDER_MODE_ENABLED);
+ prerender::PrerenderManager::SetMode(
+ prerender::PrerenderManager::PRERENDER_MODE_ENABLED);
break;
case PRERENDER_OPTION_PREFETCH_ONLY:
ResourceDispatcherHost::set_is_prefetch_enabled(true);
- PrerenderManager::SetMode(PrerenderManager::PRERENDER_MODE_DISABLED);
+ prerender::PrerenderManager::SetMode(
+ prerender::PrerenderManager::PRERENDER_MODE_DISABLED);
break;
default:
NOTREACHED();
}
- UMA_HISTOGRAM_ENUMERATION("Prerender.Sessions", PrerenderManager::GetMode(),
- PrerenderManager::PRERENDER_MODE_MAX);
+ UMA_HISTOGRAM_ENUMERATION("Prerender.Sessions",
+ prerender::PrerenderManager::GetMode(),
+ prerender::PrerenderManager::PRERENDER_MODE_MAX);
}
// If neither --enable-connect-backup-jobs or --disable-connect-backup-jobs is
diff --git a/chrome/browser/net/chrome_url_request_context.h b/chrome/browser/net/chrome_url_request_context.h
index 494bf50..42760a1 100644
--- a/chrome/browser/net/chrome_url_request_context.h
+++ b/chrome/browser/net/chrome_url_request_context.h
@@ -99,7 +99,7 @@ class ChromeURLRequestContext : public net::URLRequestContext {
return extension_io_event_router_;
}
- PrerenderManager* prerender_manager() {
+ prerender::PrerenderManager* prerender_manager() {
return prerender_manager_.get();
}
@@ -168,7 +168,7 @@ class ChromeURLRequestContext : public net::URLRequestContext {
void set_extension_io_event_router(ExtensionIOEventRouter* router) {
extension_io_event_router_ = router;
}
- void set_prerender_manager(PrerenderManager* prerender_manager) {
+ void set_prerender_manager(prerender::PrerenderManager* prerender_manager) {
prerender_manager_ = prerender_manager;
}
@@ -193,7 +193,7 @@ class ChromeURLRequestContext : public net::URLRequestContext {
// TODO(aa): This should use chrome/common/extensions/extension_set.h.
scoped_refptr<ExtensionInfoMap> extension_info_map_;
scoped_refptr<ExtensionIOEventRouter> extension_io_event_router_;
- scoped_refptr<PrerenderManager> prerender_manager_;
+ scoped_refptr<prerender::PrerenderManager> prerender_manager_;
scoped_ptr<ChromeURLDataManagerBackend> chrome_url_data_manager_backend_;
bool is_off_the_record_;
@@ -356,7 +356,7 @@ class ChromeURLRequestContextFactory {
scoped_refptr<fileapi::FileSystemContext> file_system_context_;
scoped_refptr<ExtensionInfoMap> extension_info_map_;
scoped_refptr<ExtensionIOEventRouter> extension_io_event_router_;
- scoped_refptr<PrerenderManager> prerender_manager_;
+ scoped_refptr<prerender::PrerenderManager> prerender_manager_;
FilePath profile_dir_path_;
diff --git a/chrome/browser/prerender/prerender_browsertest.cc b/chrome/browser/prerender/prerender_browsertest.cc
index c31817e..f946e03 100644
--- a/chrome/browser/prerender/prerender_browsertest.cc
+++ b/chrome/browser/prerender/prerender_browsertest.cc
@@ -26,6 +26,8 @@
// DidDisplayPass() is called, and returns true if the page behaved as it
// should while being displayed.
+namespace prerender {
+
namespace {
// PrerenderContents that stops the UI message loop on DidStopLoading().
@@ -34,7 +36,7 @@ class TestPrerenderContents : public PrerenderContents {
TestPrerenderContents(
PrerenderManager* prerender_manager, Profile* profile, const GURL& url,
const std::vector<GURL>& alias_urls,
- PrerenderContents::FinalStatus expected_final_status)
+ FinalStatus expected_final_status)
: PrerenderContents(prerender_manager, profile, url, alias_urls),
did_finish_loading_(false),
expected_final_status_(expected_final_status) {
@@ -61,14 +63,14 @@ class TestPrerenderContents : public PrerenderContents {
private:
bool did_finish_loading_;
- PrerenderContents::FinalStatus expected_final_status_;
+ FinalStatus expected_final_status_;
};
// PrerenderManager that uses TestPrerenderContents.
class WaitForLoadPrerenderContentsFactory : public PrerenderContents::Factory {
public:
explicit WaitForLoadPrerenderContentsFactory(
- PrerenderContents::FinalStatus expected_final_status)
+ FinalStatus expected_final_status)
: expected_final_status_(expected_final_status) {
}
@@ -80,7 +82,7 @@ class WaitForLoadPrerenderContentsFactory : public PrerenderContents::Factory {
}
private:
- PrerenderContents::FinalStatus expected_final_status_;
+ FinalStatus expected_final_status_;
};
} // namespace
@@ -106,7 +108,7 @@ class PrerenderBrowserTest : public InProcessBrowserTest {
}
void PrerenderTestURL(const std::string& html_file,
- PrerenderContents::FinalStatus expected_final_status,
+ FinalStatus expected_final_status,
int total_navigations) {
ASSERT_TRUE(test_server()->Start());
@@ -152,7 +154,7 @@ class PrerenderBrowserTest : public InProcessBrowserTest {
}
switch (expected_final_status) {
- case PrerenderContents::FINAL_STATUS_USED: {
+ case FINAL_STATUS_USED: {
ASSERT_TRUE(prerender_contents != NULL);
ASSERT_TRUE(prerender_contents->did_finish_loading());
@@ -201,7 +203,7 @@ class PrerenderBrowserTest : public InProcessBrowserTest {
// navigation.
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPage) {
PrerenderTestURL("prerender_page.html",
- PrerenderContents::FINAL_STATUS_USED, 1);
+ FINAL_STATUS_USED, 1);
NavigateToDestURL();
}
@@ -210,7 +212,7 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPage) {
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderAlertBeforeOnload) {
PrerenderTestURL(
"prerender_alert_before_onload.html",
- PrerenderContents::FINAL_STATUS_JAVASCRIPT_ALERT, 1);
+ FINAL_STATUS_JAVASCRIPT_ALERT, 1);
}
// Checks that the prerendering of a page is canceled correctly when a
@@ -218,14 +220,14 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderAlertBeforeOnload) {
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderAlertAfterOnload) {
PrerenderTestURL(
"prerender_alert_after_onload.html",
- PrerenderContents::FINAL_STATUS_JAVASCRIPT_ALERT, 1);
+ FINAL_STATUS_JAVASCRIPT_ALERT, 1);
}
// Checks that plugins are not loaded while a page is being preloaded, but
// are loaded when the page is displayed.
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderDelayLoadPlugin) {
PrerenderTestURL("plugin_delay_load.html",
- PrerenderContents::FINAL_STATUS_USED, 1);
+ FINAL_STATUS_USED, 1);
NavigateToDestURL();
}
@@ -234,19 +236,20 @@ IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderDelayLoadPlugin) {
// prerender successfully.
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderHttpAuthentication) {
PrerenderTestURL("prerender_http_auth_container.html",
- PrerenderContents::FINAL_STATUS_AUTH_NEEDED, 1);
+ FINAL_STATUS_AUTH_NEEDED, 1);
}
// Checks that redirects work with prerendering.
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderRedirect) {
PrerenderTestURL("prerender_redirect.html",
- PrerenderContents::FINAL_STATUS_USED, 2);
+ FINAL_STATUS_USED, 2);
NavigateToDestURL();
}
// Checks that popups on a prerendered page cause cancellation.
IN_PROC_BROWSER_TEST_F(PrerenderBrowserTest, PrerenderPopup) {
PrerenderTestURL("prerender_popup.html",
- PrerenderContents::FINAL_STATUS_CREATE_NEW_WINDOW, 1);
+ FINAL_STATUS_CREATE_NEW_WINDOW, 1);
}
+} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_contents.cc b/chrome/browser/prerender/prerender_contents.cc
index ac7555f..badfcbe 100644
--- a/chrome/browser/prerender/prerender_contents.cc
+++ b/chrome/browser/prerender/prerender_contents.cc
@@ -4,10 +4,10 @@
#include "chrome/browser/prerender/prerender_contents.h"
-#include "base/metrics/histogram.h"
#include "base/utf_string_conversions.h"
#include "chrome/browser/background_contents_service.h"
#include "chrome/browser/browsing_instance.h"
+#include "chrome/browser/prerender/prerender_final_status.h"
#include "chrome/browser/prerender/prerender_manager.h"
#include "chrome/browser/profiles/profile.h"
#include "chrome/browser/renderer_host/render_view_host.h"
@@ -22,6 +22,8 @@
#include "chrome/common/render_messages_params.h"
#include "ui/gfx/rect.h"
+namespace prerender {
+
class PrerenderContentsFactoryImpl : public PrerenderContents::Factory {
public:
virtual PrerenderContents* CreatePrerenderContents(
@@ -98,15 +100,13 @@ void PrerenderContents::set_final_status(FinalStatus final_status) {
final_status_ = final_status;
}
-PrerenderContents::FinalStatus PrerenderContents::final_status() const {
+FinalStatus PrerenderContents::final_status() const {
return final_status_;
}
PrerenderContents::~PrerenderContents() {
DCHECK(final_status_ != FINAL_STATUS_MAX);
- UMA_HISTOGRAM_ENUMERATION("Prerender.FinalStatus",
- final_status_,
- FINAL_STATUS_MAX);
+ RecordFinalStatus(final_status_);
if (!render_view_host_) // Will be null for unit tests.
return;
@@ -346,3 +346,5 @@ void PrerenderContents::Destroy(FinalStatus final_status) {
set_final_status(final_status);
delete this;
}
+
+} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_contents.h b/chrome/browser/prerender/prerender_contents.h
index 40b34dc..06ea194 100644
--- a/chrome/browser/prerender/prerender_contents.h
+++ b/chrome/browser/prerender/prerender_contents.h
@@ -10,6 +10,7 @@
#include <vector>
#include "base/time.h"
+#include "chrome/browser/prerender/prerender_final_status.h"
#include "chrome/browser/renderer_host/render_view_host_delegate.h"
#include "chrome/browser/tab_contents/render_view_host_delegate_helper.h"
#include "chrome/browser/ui/app_modal_dialogs/js_modal_dialog.h"
@@ -19,7 +20,6 @@
#include "webkit/glue/window_open_disposition.h"
class TabContents;
-class PrerenderManager;
struct WebPreferences;
struct ViewHostMsg_FrameNavigate_Params;
@@ -27,6 +27,10 @@ namespace gfx {
class Rect;
}
+namespace prerender {
+
+class PrerenderManager;
+
// This class is a peer of TabContents. It can host a renderer, but does not
// have any visible display. Its navigation is not managed by a
// NavigationController because is has no facility for navigating (other than
@@ -37,22 +41,6 @@ class PrerenderContents : public RenderViewHostDelegate,
public NotificationObserver,
public JavaScriptAppModalDialogDelegate {
public:
- // FinalStatus indicates whether |this| was used, or why it was cancelled.
- // NOTE: New values need to be appended, since they are used in histograms.
- enum FinalStatus {
- FINAL_STATUS_USED,
- FINAL_STATUS_TIMED_OUT,
- FINAL_STATUS_EVICTED,
- FINAL_STATUS_MANAGER_SHUTDOWN,
- FINAL_STATUS_CLOSED,
- FINAL_STATUS_CREATE_NEW_WINDOW,
- FINAL_STATUS_PROFILE_DESTROYED,
- FINAL_STATUS_APP_TERMINATING,
- FINAL_STATUS_JAVASCRIPT_ALERT,
- FINAL_STATUS_AUTH_NEEDED,
- FINAL_STATUS_MAX,
- };
-
// PrerenderContents::Create uses the currently registered Factory to create
// the PrerenderContents. Factory is intended for testing.
class Factory {
@@ -252,4 +240,6 @@ class PrerenderContents : public RenderViewHostDelegate,
DISALLOW_COPY_AND_ASSIGN(PrerenderContents);
};
+} // prerender
+
#endif // CHROME_BROWSER_PRERENDER_PRERENDER_CONTENTS_H_
diff --git a/chrome/browser/prerender/prerender_final_status.cc b/chrome/browser/prerender/prerender_final_status.cc
new file mode 100644
index 0000000..52dcdad
--- /dev/null
+++ b/chrome/browser/prerender/prerender_final_status.cc
@@ -0,0 +1,18 @@
+// 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.
+
+#include "chrome/browser/prerender/prerender_final_status.h"
+
+#include "base/metrics/histogram.h"
+
+namespace prerender {
+
+void RecordFinalStatus(FinalStatus final_status) {
+ DCHECK(final_status != FINAL_STATUS_MAX);
+ UMA_HISTOGRAM_ENUMERATION("Prerender.FinalStatus",
+ final_status,
+ FINAL_STATUS_MAX);
+}
+
+} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_final_status.h b/chrome/browser/prerender/prerender_final_status.h
new file mode 100644
index 0000000..ab90f03
--- /dev/null
+++ b/chrome/browser/prerender/prerender_final_status.h
@@ -0,0 +1,31 @@
+// 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_PRERENDER_PRERENDER_FINAL_STATUS_H_
+#define CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
+
+namespace prerender {
+
+// FinalStatus indicates whether |this| was used, or why it was cancelled.
+// NOTE: New values need to be appended, since they are used in histograms.
+enum FinalStatus {
+ FINAL_STATUS_USED,
+ FINAL_STATUS_TIMED_OUT,
+ FINAL_STATUS_EVICTED,
+ FINAL_STATUS_MANAGER_SHUTDOWN,
+ FINAL_STATUS_CLOSED,
+ FINAL_STATUS_CREATE_NEW_WINDOW,
+ FINAL_STATUS_PROFILE_DESTROYED,
+ FINAL_STATUS_APP_TERMINATING,
+ FINAL_STATUS_JAVASCRIPT_ALERT,
+ FINAL_STATUS_AUTH_NEEDED,
+ FINAL_STATUS_HTTPS,
+ FINAL_STATUS_MAX,
+};
+
+void RecordFinalStatus(FinalStatus final_status);
+
+} // namespace prerender
+
+#endif // CHROME_BROWSER_PRERENDER_PRERENDER_FINAL_STATUS_H_
diff --git a/chrome/browser/prerender/prerender_manager.cc b/chrome/browser/prerender/prerender_manager.cc
index 6e28a2c..1ce9f84 100644
--- a/chrome/browser/prerender/prerender_manager.cc
+++ b/chrome/browser/prerender/prerender_manager.cc
@@ -11,11 +11,14 @@
#include "chrome/browser/browser_thread.h"
#include "chrome/browser/fav_icon_helper.h"
#include "chrome/browser/prerender/prerender_contents.h"
+#include "chrome/browser/prerender/prerender_final_status.h"
#include "chrome/browser/renderer_host/render_view_host.h"
#include "chrome/browser/tab_contents/tab_contents.h"
#include "chrome/browser/tab_contents/render_view_host_manager.h"
#include "chrome/common/render_messages.h"
+namespace prerender {
+
// static
base::TimeTicks PrerenderManager::last_prefetch_seen_time_;
@@ -65,8 +68,7 @@ PrerenderManager::~PrerenderManager() {
while (prerender_list_.size() > 0) {
PrerenderContentsData data = prerender_list_.front();
prerender_list_.pop_front();
- data.contents_->set_final_status(
- PrerenderContents::FINAL_STATUS_MANAGER_SHUTDOWN);
+ data.contents_->set_final_status(FINAL_STATUS_MANAGER_SHUTDOWN);
delete data.contents_;
}
}
@@ -94,7 +96,7 @@ void PrerenderManager::AddPreload(const GURL& url,
while (prerender_list_.size() > max_elements_) {
data = prerender_list_.front();
prerender_list_.pop_front();
- data.contents_->set_final_status(PrerenderContents::FINAL_STATUS_EVICTED);
+ data.contents_->set_final_status(FINAL_STATUS_EVICTED);
delete data.contents_;
}
}
@@ -105,7 +107,7 @@ void PrerenderManager::DeleteOldEntries() {
if (IsPrerenderElementFresh(data.start_time_))
return;
prerender_list_.pop_front();
- data.contents_->set_final_status(PrerenderContents::FINAL_STATUS_TIMED_OUT);
+ data.contents_->set_final_status(FINAL_STATUS_TIMED_OUT);
delete data.contents_;
}
}
@@ -134,7 +136,7 @@ bool PrerenderManager::MaybeUsePreloadedPage(TabContents* tc, const GURL& url) {
if (!pc->load_start_time().is_null())
RecordTimeUntilUsed(base::TimeTicks::Now() - pc->load_start_time());
- pc->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc->set_final_status(FINAL_STATUS_USED);
RenderViewHost* rvh = pc->render_view_host();
pc->set_render_view_host(NULL);
@@ -259,3 +261,5 @@ bool PrerenderManager::ShouldRecordWindowedPPLT() const {
base::TimeTicks::Now() - last_prefetch_seen_time_;
return elapsed_time <= base::TimeDelta::FromSeconds(kWindowedPPLTSeconds);
}
+
+} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_manager.h b/chrome/browser/prerender/prerender_manager.h
index 6a62915..268f484 100644
--- a/chrome/browser/prerender/prerender_manager.h
+++ b/chrome/browser/prerender/prerender_manager.h
@@ -18,6 +18,8 @@
class Profile;
class TabContents;
+namespace prerender {
+
// PrerenderManager is responsible for initiating and keeping prerendered
// views of webpages.
class PrerenderManager : public base::RefCounted<PrerenderManager> {
@@ -132,4 +134,6 @@ class PrerenderManager : public base::RefCounted<PrerenderManager> {
DISALLOW_COPY_AND_ASSIGN(PrerenderManager);
};
+} // prerender
+
#endif // CHROME_BROWSER_PRERENDER_PRERENDER_MANAGER_H_
diff --git a/chrome/browser/prerender/prerender_manager_unittest.cc b/chrome/browser/prerender/prerender_manager_unittest.cc
index 10f7a00..1e032fd 100644
--- a/chrome/browser/prerender/prerender_manager_unittest.cc
+++ b/chrome/browser/prerender/prerender_manager_unittest.cc
@@ -9,6 +9,8 @@
#include "googleurl/src/gurl.h"
#include "testing/gtest/include/gtest/gtest.h"
+namespace prerender {
+
namespace {
class DummyPrerenderContents : public PrerenderContents {
@@ -73,7 +75,7 @@ class TestPrerenderManager : public PrerenderManager {
virtual ~TestPrerenderManager() {
if (next_pc()) {
next_pc()->set_final_status(
- PrerenderContents::FINAL_STATUS_MANAGER_SHUTDOWN);
+ FINAL_STATUS_MANAGER_SHUTDOWN);
}
}
@@ -119,12 +121,12 @@ TEST_F(PrerenderManagerTest, FoundTest) {
DummyPrerenderContents* pc =
new DummyPrerenderContents(prerender_manager_.get(),
url,
- PrerenderContents::FINAL_STATUS_USED);
+ FINAL_STATUS_USED);
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
EXPECT_TRUE(pc->has_started());
EXPECT_EQ(pc, prerender_manager_->GetEntry(url));
- pc->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc->set_final_status(FINAL_STATUS_USED);
delete pc;
}
@@ -134,7 +136,7 @@ TEST_F(PrerenderManagerTest, DropSecondRequestTest) {
GURL url("http://www.google.com/");
DummyPrerenderContents* pc =
new DummyPrerenderContents(prerender_manager_.get(), url,
- PrerenderContents::FINAL_STATUS_USED);
+ FINAL_STATUS_USED);
DummyPrerenderContents* null = NULL;
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
@@ -143,13 +145,13 @@ TEST_F(PrerenderManagerTest, DropSecondRequestTest) {
DummyPrerenderContents* pc1 =
new DummyPrerenderContents(
prerender_manager_.get(), url,
- PrerenderContents::FINAL_STATUS_MANAGER_SHUTDOWN);
+ FINAL_STATUS_MANAGER_SHUTDOWN);
prerender_manager_->SetNextPrerenderContents(pc1);
prerender_manager_->AddSimplePreload(url);
EXPECT_EQ(pc1, prerender_manager_->next_pc());
EXPECT_FALSE(pc1->has_started());
EXPECT_EQ(pc, prerender_manager_->GetEntry(url));
- pc->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc->set_final_status(FINAL_STATUS_USED);
delete pc;
}
@@ -158,7 +160,7 @@ TEST_F(PrerenderManagerTest, ExpireTest) {
GURL url("http://www.google.com/");
DummyPrerenderContents* pc =
new DummyPrerenderContents(prerender_manager_.get(), url,
- PrerenderContents::FINAL_STATUS_TIMED_OUT);
+ FINAL_STATUS_TIMED_OUT);
DummyPrerenderContents* null = NULL;
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
@@ -175,7 +177,7 @@ TEST_F(PrerenderManagerTest, DropOldestRequestTest) {
GURL url("http://www.google.com/");
DummyPrerenderContents* pc =
new DummyPrerenderContents(prerender_manager_.get(), url,
- PrerenderContents::FINAL_STATUS_EVICTED);
+ FINAL_STATUS_EVICTED);
DummyPrerenderContents* null = NULL;
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
@@ -184,14 +186,14 @@ TEST_F(PrerenderManagerTest, DropOldestRequestTest) {
GURL url1("http://news.google.com/");
DummyPrerenderContents* pc1 =
new DummyPrerenderContents(prerender_manager_.get(), url1,
- PrerenderContents::FINAL_STATUS_USED);
+ FINAL_STATUS_USED);
prerender_manager_->SetNextPrerenderContents(pc1);
prerender_manager_->AddSimplePreload(url1);
EXPECT_EQ(null, prerender_manager_->next_pc());
EXPECT_TRUE(pc1->has_started());
EXPECT_EQ(null, prerender_manager_->GetEntry(url));
EXPECT_EQ(pc1, prerender_manager_->GetEntry(url1));
- pc1->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc1->set_final_status(FINAL_STATUS_USED);
delete pc1;
}
@@ -202,7 +204,7 @@ TEST_F(PrerenderManagerTest, TwoElementPrerenderTest) {
GURL url("http://www.google.com/");
DummyPrerenderContents* pc =
new DummyPrerenderContents(prerender_manager_.get(), url,
- PrerenderContents::FINAL_STATUS_EVICTED);
+ FINAL_STATUS_EVICTED);
DummyPrerenderContents* null = NULL;
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
@@ -211,7 +213,7 @@ TEST_F(PrerenderManagerTest, TwoElementPrerenderTest) {
GURL url1("http://news.google.com/");
DummyPrerenderContents* pc1 =
new DummyPrerenderContents(prerender_manager_.get(), url1,
- PrerenderContents::FINAL_STATUS_USED);
+ FINAL_STATUS_USED);
prerender_manager_->SetNextPrerenderContents(pc1);
prerender_manager_->AddSimplePreload(url1);
EXPECT_EQ(null, prerender_manager_->next_pc());
@@ -219,7 +221,7 @@ TEST_F(PrerenderManagerTest, TwoElementPrerenderTest) {
GURL url2("http://images.google.com/");
DummyPrerenderContents* pc2 =
new DummyPrerenderContents(prerender_manager_.get(), url2,
- PrerenderContents::FINAL_STATUS_USED);
+ FINAL_STATUS_USED);
prerender_manager_->SetNextPrerenderContents(pc2);
prerender_manager_->AddSimplePreload(url2);
EXPECT_EQ(null, prerender_manager_->next_pc());
@@ -227,9 +229,9 @@ TEST_F(PrerenderManagerTest, TwoElementPrerenderTest) {
EXPECT_EQ(null, prerender_manager_->GetEntry(url));
EXPECT_EQ(pc1, prerender_manager_->GetEntry(url1));
EXPECT_EQ(pc2, prerender_manager_->GetEntry(url2));
- pc1->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc1->set_final_status(FINAL_STATUS_USED);
delete pc1;
- pc2->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc2->set_final_status(FINAL_STATUS_USED);
delete pc2;
}
@@ -243,7 +245,7 @@ TEST_F(PrerenderManagerTest, AliasURLTest) {
alias_urls.push_back(alias_url2);
DummyPrerenderContents* pc =
new DummyPrerenderContents(prerender_manager_.get(), url, alias_urls,
- PrerenderContents::FINAL_STATUS_USED);
+ FINAL_STATUS_USED);
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
EXPECT_EQ(NULL, prerender_manager_->GetEntry(not_an_alias_url));
@@ -254,6 +256,8 @@ TEST_F(PrerenderManagerTest, AliasURLTest) {
prerender_manager_->SetNextPrerenderContents(pc);
prerender_manager_->AddSimplePreload(url);
EXPECT_EQ(pc, prerender_manager_->GetEntry(url));
- pc->set_final_status(PrerenderContents::FINAL_STATUS_USED);
+ pc->set_final_status(FINAL_STATUS_USED);
delete pc;
}
+
+} // naemspace prerender
diff --git a/chrome/browser/prerender/prerender_plt_recorder.cc b/chrome/browser/prerender/prerender_plt_recorder.cc
index 60b5da9..f13c664 100644
--- a/chrome/browser/prerender/prerender_plt_recorder.cc
+++ b/chrome/browser/prerender/prerender_plt_recorder.cc
@@ -10,6 +10,8 @@
#include "chrome/browser/tab_contents/tab_contents.h"
#include "chrome/common/render_messages.h"
+namespace prerender {
+
PrerenderPLTRecorder::PrerenderPLTRecorder(TabContents* tab_contents)
: tab_contents_(tab_contents),
pplt_load_start_() {
@@ -45,3 +47,5 @@ void PrerenderPLTRecorder::DidStopLoading() {
// Reset the PPLT metric.
pplt_load_start_ = base::TimeTicks();
}
+
+} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_plt_recorder.h b/chrome/browser/prerender/prerender_plt_recorder.h
index 206fdf1..34179c0 100644
--- a/chrome/browser/prerender/prerender_plt_recorder.h
+++ b/chrome/browser/prerender/prerender_plt_recorder.h
@@ -18,6 +18,8 @@ class PrerenderContents;
class Profile;
class TabContents;
+namespace prerender {
+
// PrerenderPLTRecorder is responsible for recording perceived pageload times
// to compare PLT's with prerendering enabled and disabled.
class PrerenderPLTRecorder : public TabContentsObserver {
@@ -45,4 +47,6 @@ class PrerenderPLTRecorder : public TabContentsObserver {
DISALLOW_COPY_AND_ASSIGN(PrerenderPLTRecorder);
};
+} // prerender
+
#endif // CHROME_BROWSER_PRERENDER_PRERENDER_PLT_RECORDER_H_
diff --git a/chrome/browser/prerender/prerender_resource_handler.cc b/chrome/browser/prerender/prerender_resource_handler.cc
index 64b5184..8a5e209 100644
--- a/chrome/browser/prerender/prerender_resource_handler.cc
+++ b/chrome/browser/prerender/prerender_resource_handler.cc
@@ -10,6 +10,8 @@
#include "net/http/http_response_headers.h"
#include "net/url_request/url_request.h"
+namespace prerender {
+
namespace {
bool ShouldPrerender(const GURL& url, const ResourceResponse* response) {
@@ -151,3 +153,5 @@ void PrerenderResourceHandler::StartPrerender(const GURL& url,
DCHECK(BrowserThread::CurrentlyOn(BrowserThread::UI));
prerender_manager_->AddPreload(url, alias_urls);
}
+
+} // namespace prerender
diff --git a/chrome/browser/prerender/prerender_resource_handler.h b/chrome/browser/prerender/prerender_resource_handler.h
index b4f191e..1d9e17a 100644
--- a/chrome/browser/prerender/prerender_resource_handler.h
+++ b/chrome/browser/prerender/prerender_resource_handler.h
@@ -17,6 +17,8 @@ namespace net {
class URLRequest;
}
+namespace prerender {
+
// The PrerenderResourceHandler initiates prerendering of web pages
// under the following conditions:
// - The profile which initiated the request allows prerendering.
@@ -92,4 +94,6 @@ class PrerenderResourceHandler : public ResourceHandler {
DISALLOW_COPY_AND_ASSIGN(PrerenderResourceHandler);
};
+} // namespace prerender
+
#endif // CHROME_BROWSER_PRERENDER_PRERENDER_RESOURCE_HANDLER_H_
diff --git a/chrome/browser/prerender/prerender_resource_handler_unittest.cc b/chrome/browser/prerender/prerender_resource_handler_unittest.cc
index 6bc4c13..02d2f2d 100644
--- a/chrome/browser/prerender/prerender_resource_handler_unittest.cc
+++ b/chrome/browser/prerender/prerender_resource_handler_unittest.cc
@@ -7,6 +7,8 @@
#include "net/http/http_response_headers.h"
#include "testing/gtest/include/gtest/gtest.h"
+namespace prerender {
+
namespace {
class MockResourceHandler : public ResourceHandler {
@@ -180,4 +182,6 @@ TEST_F(PrerenderResourceHandlerTest, PrerenderRedirect) {
EXPECT_EQ(2, static_cast<int>(alias_urls_.size()));
}
-}
+} // namespace
+
+} // namespace prerender
diff --git a/chrome/browser/profiles/profile.cc b/chrome/browser/profiles/profile.cc
index 2f1fb97..9815e4f 100644
--- a/chrome/browser/profiles/profile.cc
+++ b/chrome/browser/profiles/profile.cc
@@ -653,7 +653,7 @@ class OffTheRecordProfileImpl : public Profile,
return pref_proxy_config_tracker_;
}
- virtual PrerenderManager* GetPrerenderManager() {
+ virtual prerender::PrerenderManager* GetPrerenderManager() {
// We do not allow prerendering in OTR profiles at this point.
// TODO(tburkard): Figure out if we want to support this, and how, at some
// point in the future.
diff --git a/chrome/browser/profiles/profile.h b/chrome/browser/profiles/profile.h
index b1b8817..04fcfb9 100644
--- a/chrome/browser/profiles/profile.h
+++ b/chrome/browser/profiles/profile.h
@@ -22,6 +22,11 @@ class ProxyConfigServiceImpl;
}
#endif
+namespace fileapi {
+class FileSystemContext;
+class SandboxedFileSystemContext;
+}
+
namespace history {
class TopSites;
}
@@ -35,12 +40,12 @@ namespace policy {
class ProfilePolicyContext;
}
-namespace webkit_database {
-class DatabaseTracker;
+namespace prerender {
+class PrerenderManager;
}
-namespace fileapi {
-class FileSystemContext;
+namespace webkit_database {
+class DatabaseTracker;
}
class AutocompleteClassifier;
@@ -78,7 +83,6 @@ class PersonalDataManager;
class PinnedTabService;
class PrefProxyConfigTracker;
class PrefService;
-class PrerenderManager;
class ProfileSyncFactory;
class ProfileSyncService;
class ProfileSyncService;
@@ -531,7 +535,7 @@ class Profile {
// Returns the PrerenderManager used to prerender entire webpages for this
// profile.
- virtual PrerenderManager* GetPrerenderManager() = 0;
+ virtual prerender::PrerenderManager* GetPrerenderManager() = 0;
// Returns whether it is a guest session.
static bool IsGuestSession();
diff --git a/chrome/browser/profiles/profile_impl.cc b/chrome/browser/profiles/profile_impl.cc
index 0fde233..402b628 100644
--- a/chrome/browser/profiles/profile_impl.cc
+++ b/chrome/browser/profiles/profile_impl.cc
@@ -1499,10 +1499,10 @@ PrefProxyConfigTracker* ProfileImpl::GetProxyConfigTracker() {
return pref_proxy_config_tracker_;
}
-PrerenderManager* ProfileImpl::GetPrerenderManager() {
- if (!PrerenderManager::IsPrerenderingEnabled())
+prerender::PrerenderManager* ProfileImpl::GetPrerenderManager() {
+ if (!prerender::PrerenderManager::IsPrerenderingEnabled())
return NULL;
if (!prerender_manager_)
- prerender_manager_ = new PrerenderManager(this);
+ prerender_manager_ = new prerender::PrerenderManager(this);
return prerender_manager_;
}
diff --git a/chrome/browser/profiles/profile_impl.h b/chrome/browser/profiles/profile_impl.h
index d2b20f2..923375b 100644
--- a/chrome/browser/profiles/profile_impl.h
+++ b/chrome/browser/profiles/profile_impl.h
@@ -140,7 +140,7 @@ class ProfileImpl : public Profile,
#endif // defined(OS_CHROMEOS)
virtual PrefProxyConfigTracker* GetProxyConfigTracker();
- virtual PrerenderManager* GetPrerenderManager();
+ virtual prerender::PrerenderManager* GetPrerenderManager();
// NotificationObserver implementation.
virtual void Observe(NotificationType type,
@@ -305,7 +305,7 @@ class ProfileImpl : public Profile,
scoped_refptr<PrefProxyConfigTracker> pref_proxy_config_tracker_;
- scoped_refptr<PrerenderManager> prerender_manager_;
+ scoped_refptr<prerender::PrerenderManager> prerender_manager_;
scoped_ptr<ChromeURLDataManager> chrome_url_data_manager_;
diff --git a/chrome/browser/renderer_host/resource_dispatcher_host.cc b/chrome/browser/renderer_host/resource_dispatcher_host.cc
index 25548aa..c049ba4 100644
--- a/chrome/browser/renderer_host/resource_dispatcher_host.cc
+++ b/chrome/browser/renderer_host/resource_dispatcher_host.cc
@@ -129,7 +129,7 @@ bool ShouldServiceRequest(ChildProcessInfo::ProcessType process_type,
return true;
if (request_data.resource_type == ResourceType::PREFETCH) {
- PrerenderManager::RecordPrefetchTagObserved();
+ prerender::PrerenderManager::RecordPrefetchTagObserved();
if (!ResourceDispatcherHost::is_prefetch_enabled())
return false;
}
@@ -463,8 +463,10 @@ void ResourceDispatcherHost::BeginRequest(
// be prerendered. This should be in front of the [a]syncResourceHandler,
// but after the BufferedResourceHandler since it depends on the MIME
// sniffing capabilities in the BufferedResourceHandler.
- PrerenderResourceHandler* pre_handler = PrerenderResourceHandler::MaybeCreate(
- *request, context, handler);
+ prerender::PrerenderResourceHandler* pre_handler =
+ prerender::PrerenderResourceHandler::MaybeCreate(*request,
+ context,
+ handler);
if (pre_handler)
handler = pre_handler;
diff --git a/chrome/browser/tab_contents/tab_contents.cc b/chrome/browser/tab_contents/tab_contents.cc
index 6d5a881..7ce24b3 100644
--- a/chrome/browser/tab_contents/tab_contents.cc
+++ b/chrome/browser/tab_contents/tab_contents.cc
@@ -368,7 +368,7 @@ TabContents::TabContents(Profile* profile,
AddObserver(autofill_manager_.get());
autocomplete_history_manager_.reset(new AutocompleteHistoryManager(this));
AddObserver(autocomplete_history_manager_.get());
- prerender_plt_recorder_.reset(new PrerenderPLTRecorder(this));
+ prerender_plt_recorder_.reset(new prerender::PrerenderPLTRecorder(this));
AddObserver(prerender_plt_recorder_.get());
AddObserver(&fav_icon_helper_);
AddObserver(printing_.get());
@@ -3130,7 +3130,7 @@ void TabContents::CreateViewAndSetSizeForRVH(RenderViewHost* rvh) {
}
bool TabContents::MaybeUsePreloadedPage(const GURL& url) {
- PrerenderManager* pm = profile()->GetPrerenderManager();
+ prerender::PrerenderManager* pm = profile()->GetPrerenderManager();
if (pm != NULL) {
if (pm->MaybeUsePreloadedPage(this, url))
return true;
diff --git a/chrome/browser/tab_contents/tab_contents.h b/chrome/browser/tab_contents/tab_contents.h
index 5118fc8..36f7343 100644
--- a/chrome/browser/tab_contents/tab_contents.h
+++ b/chrome/browser/tab_contents/tab_contents.h
@@ -49,6 +49,11 @@ namespace history {
class HistoryAddPageArgs;
}
+namespace prerender {
+class PrerenderManager;
+class PrerenderPLTRecorder;
+}
+
namespace printing {
class PrintPreviewMessageHandler;
class PrintViewManager;
@@ -67,8 +72,6 @@ class LoadNotificationDetails;
class OmniboxSearchHint;
class PluginObserver;
class Profile;
-class PrerenderManager;
-class PrerenderPLTRecorder;
class RenderViewHost;
class SessionStorageNamespace;
class SiteInstance;
@@ -747,7 +750,7 @@ class TabContents : public PageNavigator,
friend class ExternalTabContainer;
// Used to access RVH Delegates.
- friend class PrerenderManager;
+ friend class prerender::PrerenderManager;
// Message handlers.
void OnDidStartProvisionalLoadForFrame(int64 frame_id,
@@ -1072,7 +1075,7 @@ class TabContents : public PageNavigator,
scoped_ptr<PluginObserver> plugin_observer_;
// Prerender PageLoadTime Recorder.
- scoped_ptr<PrerenderPLTRecorder> prerender_plt_recorder_;
+ scoped_ptr<prerender::PrerenderPLTRecorder> prerender_plt_recorder_;
// TabContentsSSLHelper, lazily created.
scoped_ptr<TabContentsSSLHelper> ssl_helper_;