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 "android_webview/native/aw_http_auth_handler.h" | 5 #include "android_webview/native/aw_http_auth_handler.h" |
6 | 6 |
7 #include "android_webview/browser/aw_login_delegate.h" | 7 #include "android_webview/browser/aw_login_delegate.h" |
8 #include "android_webview/native/aw_contents.h" | 8 #include "android_webview/native/aw_contents.h" |
9 #include "base/android/jni_android.h" | 9 #include "base/android/jni_android.h" |
10 #include "base/android/jni_string.h" | 10 #include "base/android/jni_string.h" |
(...skipping 23 matching lines...) Expand all Loading... |
34 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); | 34 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); |
35 Java_AwHttpAuthHandler_handlerDestroyed(base::android::AttachCurrentThread(), | 35 Java_AwHttpAuthHandler_handlerDestroyed(base::android::AttachCurrentThread(), |
36 http_auth_handler_.obj()); | 36 http_auth_handler_.obj()); |
37 } | 37 } |
38 | 38 |
39 void AwHttpAuthHandler::Proceed(JNIEnv* env, | 39 void AwHttpAuthHandler::Proceed(JNIEnv* env, |
40 jobject obj, | 40 jobject obj, |
41 jstring user, | 41 jstring user, |
42 jstring password) { | 42 jstring password) { |
43 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); | 43 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); |
44 if (login_delegate_) { | 44 if (login_delegate_.get()) { |
45 login_delegate_->Proceed(ConvertJavaStringToUTF16(env, user), | 45 login_delegate_->Proceed(ConvertJavaStringToUTF16(env, user), |
46 ConvertJavaStringToUTF16(env, password)); | 46 ConvertJavaStringToUTF16(env, password)); |
47 login_delegate_ = NULL; | 47 login_delegate_ = NULL; |
48 } | 48 } |
49 } | 49 } |
50 | 50 |
51 void AwHttpAuthHandler::Cancel(JNIEnv* env, jobject obj) { | 51 void AwHttpAuthHandler::Cancel(JNIEnv* env, jobject obj) { |
52 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); | 52 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); |
53 if (login_delegate_) { | 53 if (login_delegate_.get()) { |
54 login_delegate_->Cancel(); | 54 login_delegate_->Cancel(); |
55 login_delegate_ = NULL; | 55 login_delegate_ = NULL; |
56 } | 56 } |
57 } | 57 } |
58 | 58 |
59 bool AwHttpAuthHandler::HandleOnUIThread(content::WebContents* web_contents) { | 59 bool AwHttpAuthHandler::HandleOnUIThread(content::WebContents* web_contents) { |
60 DCHECK(web_contents); | 60 DCHECK(web_contents); |
61 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); | 61 DCHECK(content::BrowserThread::CurrentlyOn(content::BrowserThread::UI)); |
62 AwContents* aw_contents = AwContents::FromWebContents(web_contents); | 62 AwContents* aw_contents = AwContents::FromWebContents(web_contents); |
63 | 63 |
64 return aw_contents->OnReceivedHttpAuthRequest(http_auth_handler_, host_, | 64 return aw_contents->OnReceivedHttpAuthRequest(http_auth_handler_, host_, |
65 realm_); | 65 realm_); |
66 } | 66 } |
67 | 67 |
68 // static | 68 // static |
69 AwHttpAuthHandlerBase* AwHttpAuthHandlerBase::Create( | 69 AwHttpAuthHandlerBase* AwHttpAuthHandlerBase::Create( |
70 AwLoginDelegate* login_delegate, | 70 AwLoginDelegate* login_delegate, |
71 net::AuthChallengeInfo* auth_info, | 71 net::AuthChallengeInfo* auth_info, |
72 bool first_auth_attempt) { | 72 bool first_auth_attempt) { |
73 return new AwHttpAuthHandler(login_delegate, auth_info, first_auth_attempt); | 73 return new AwHttpAuthHandler(login_delegate, auth_info, first_auth_attempt); |
74 } | 74 } |
75 | 75 |
76 bool RegisterAwHttpAuthHandler(JNIEnv* env) { | 76 bool RegisterAwHttpAuthHandler(JNIEnv* env) { |
77 return RegisterNativesImpl(env) >= 0; | 77 return RegisterNativesImpl(env) >= 0; |
78 } | 78 } |
79 | 79 |
80 } // namespace android_webview | 80 } // namespace android_webview |
OLD | NEW |