Roll WebRTC 9745:9761, Libjingle 9742:9761
[chromium-blink-merge.git] / android_webview / browser / aw_http_auth_handler_base.h
blobe72003b2a6f819b4cd146acefb8cc809649701cb
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
3 // found in the LICENSE file.
5 #ifndef ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_
6 #define ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_
8 namespace content {
9 class WebContents;
12 namespace net {
13 class AuthChallengeInfo;
16 namespace android_webview {
18 class AwLoginDelegate;
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
22 // allows the browser/ layer to be unaware of JNI/Java shenanigans.
23 class AwHttpAuthHandlerBase {
24 public:
25 static AwHttpAuthHandlerBase* Create(AwLoginDelegate* login_delegate,
26 net::AuthChallengeInfo* auth_info,
27 bool first_auth_attempt);
28 virtual ~AwHttpAuthHandlerBase();
30 // Provides an 'escape-hatch' out to Java for the browser/ layer
31 // AwLoginDelegate.
32 virtual bool HandleOnUIThread(content::WebContents*) = 0;
35 } // namespace android_webview
37 #endif // ANDROID_WEBVIEW_BROWSER_AW_HTTP_AUTH_HANDLER_BASE_H_