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 #include "chrome/browser/prerender/prerender_handle.h" | 5 #include "chrome/browser/prerender/prerender_handle.h" |
6 | 6 |
7 #include <algorithm> | 7 #include <algorithm> |
8 | 8 |
9 #include "base/logging.h" | 9 #include "base/logging.h" |
10 #include "chrome/browser/prerender/prerender_contents.h" | 10 #include "chrome/browser/prerender/prerender_contents.h" |
(...skipping 73 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
84 } | 84 } |
85 | 85 |
86 void PrerenderHandle::OnPrerenderStart(PrerenderContents* prerender_contents) { | 86 void PrerenderHandle::OnPrerenderStart(PrerenderContents* prerender_contents) { |
87 DCHECK(CalledOnValidThread()); | 87 DCHECK(CalledOnValidThread()); |
88 DCHECK(prerender_data_); | 88 DCHECK(prerender_data_); |
89 DCHECK_EQ(prerender_data_->contents(), prerender_contents); | 89 DCHECK_EQ(prerender_data_->contents(), prerender_contents); |
90 if (observer_) | 90 if (observer_) |
91 observer_->OnPrerenderStart(this); | 91 observer_->OnPrerenderStart(this); |
92 } | 92 } |
93 | 93 |
94 void PrerenderHandle::OnPrerenderAddAlias(PrerenderContents* prerender_contents, | 94 void PrerenderHandle::OnPrerenderStopLoading( |
95 const GURL& alias_url) { | 95 PrerenderContents* prerender_contents) { |
96 DCHECK(CalledOnValidThread()); | 96 DCHECK(CalledOnValidThread()); |
97 DCHECK(prerender_data_); | 97 DCHECK(prerender_data_); |
98 DCHECK_EQ(prerender_data_->contents(), prerender_contents); | 98 DCHECK_EQ(prerender_data_->contents(), prerender_contents); |
99 if (observer_) | 99 if (observer_) |
100 observer_->OnPrerenderAddAlias(this, alias_url); | 100 observer_->OnPrerenderStopLoading(this); |
101 } | 101 } |
102 | 102 |
103 void PrerenderHandle::OnPrerenderStop(PrerenderContents* prerender_contents) { | 103 void PrerenderHandle::OnPrerenderStop(PrerenderContents* prerender_contents) { |
104 DCHECK(CalledOnValidThread()); | 104 DCHECK(CalledOnValidThread()); |
105 if (observer_) | 105 if (observer_) |
106 observer_->OnPrerenderStop(this); | 106 observer_->OnPrerenderStop(this); |
107 } | 107 } |
108 | 108 |
| 109 void PrerenderHandle::OnPrerenderAddAlias(PrerenderContents* prerender_contents, |
| 110 const GURL& alias_url) { |
| 111 DCHECK(CalledOnValidThread()); |
| 112 DCHECK(prerender_data_); |
| 113 DCHECK_EQ(prerender_data_->contents(), prerender_contents); |
| 114 if (observer_) |
| 115 observer_->OnPrerenderAddAlias(this, alias_url); |
| 116 } |
| 117 |
109 void PrerenderHandle::OnPrerenderCreatedMatchCompleteReplacement( | 118 void PrerenderHandle::OnPrerenderCreatedMatchCompleteReplacement( |
110 PrerenderContents* contents, PrerenderContents* replacement) { | 119 PrerenderContents* contents, PrerenderContents* replacement) { |
111 DCHECK(CalledOnValidThread()); | 120 DCHECK(CalledOnValidThread()); |
112 | 121 |
113 // This should occur in the middle of the surgery on the PrerenderData, and | 122 // This should occur in the middle of the surgery on the PrerenderData, and |
114 // so we expect to not have our new contents in our PrerenderData yet. The | 123 // so we expect to not have our new contents in our PrerenderData yet. The |
115 // switch occurs in | 124 // switch occurs in |
116 // PrerenderManager::PrerenderData::MakeIntoMatchCompleteReplacement, so | 125 // PrerenderManager::PrerenderData::MakeIntoMatchCompleteReplacement, so |
117 // this method only needs to switch observing. | 126 // this method only needs to switch observing. |
118 | 127 |
119 contents->RemoveObserver(this); | 128 contents->RemoveObserver(this); |
120 replacement->AddObserver(this); | 129 replacement->AddObserver(this); |
121 } | 130 } |
122 | 131 |
123 } // namespace prerender | 132 } // namespace prerender |
OLD | NEW |