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 ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_ | 5 #ifndef ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_ |
6 #define ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_ | 6 #define ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_ |
7 | 7 |
8 namespace content { | 8 namespace content { |
9 class WebContents; | 9 class WebContents; |
10 }; | 10 }; |
11 | 11 |
12 namespace net { | 12 namespace net { |
13 class AuthChallengeInfo; | 13 class AuthChallengeInfo; |
14 }; | 14 }; |
15 | 15 |
16 namespace android_webview { | 16 namespace android_webview { |
17 | 17 |
18 class AwLoginDelegate; | 18 class AwLoginDelegate; |
19 | 19 |
20 // browser/ layer interface for AwHttpAuthHandler (which is implemented in the | 20 // browser/ layer interface for AwHttpAuthHandler (which is implemented in the |
21 // native/ layer as a native version of the Java class of the same name). This | 21 // native/ layer as a native version of the Java class of the same name). This |
22 // allows the browser/ layer to be unaware of JNI/Java shenanigans. | 22 // allows the browser/ layer to be unaware of JNI/Java shenanigans. |
23 class AwHttpAuthHandlerBase { | 23 class AwHttpAuthHandlerBase { |
24 public: | 24 public: |
25 static AwHttpAuthHandlerBase* Create(AwLoginDelegate* login_delegate, | 25 static AwHttpAuthHandlerBase* Create(AwLoginDelegate* login_delegate, |
26 net::AuthChallengeInfo* auth_info); | 26 net::AuthChallengeInfo* auth_info, |
| 27 bool first_auth_attempt); |
27 virtual ~AwHttpAuthHandlerBase(); | 28 virtual ~AwHttpAuthHandlerBase(); |
28 | 29 |
29 // Provides an 'escape-hatch' out to Java for the browser/ layer | 30 // Provides an 'escape-hatch' out to Java for the browser/ layer |
30 // AwLoginDelegate. | 31 // AwLoginDelegate. |
31 virtual void HandleOnUIThread(content::WebContents*) = 0; | 32 virtual void HandleOnUIThread(content::WebContents*) = 0; |
32 }; | 33 }; |
33 | 34 |
34 } // namespace android_webview | 35 } // namespace android_webview |
35 | 36 |
36 #endif // ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_ | 37 #endif // ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_ |
OLD | NEW |