OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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_form_database.h" | 5 #include "android_webview/native/aw_form_database.h" |
6 | 6 |
7 #include "android_webview/browser/aw_browser_context.h" | 7 #include "android_webview/browser/aw_browser_context.h" |
8 #include "android_webview/browser/aw_content_browser_client.h" | 8 #include "android_webview/browser/aw_content_browser_client.h" |
9 #include "android_webview/browser/aw_form_database_service.h" | 9 #include "android_webview/browser/aw_form_database_service.h" |
10 #include "base/android/jni_android.h" | 10 #include "base/android/jni_android.h" |
11 #include "base/logging.h" | 11 #include "base/logging.h" |
12 #include "base/time/time.h" | 12 #include "base/time/time.h" |
13 #include "components/autofill/core/browser/webdata/autofill_webdata_service.h" | |
14 #include "jni/AwFormDatabase_jni.h" | 13 #include "jni/AwFormDatabase_jni.h" |
15 | 14 |
16 // static | |
17 scoped_refptr<autofill::AutofillWebDataService> | |
18 autofill::AutofillWebDataService::FromBrowserContext( | |
19 content::BrowserContext* context) { | |
20 | |
21 DCHECK(context); | |
22 android_webview::AwFormDatabaseService* service = | |
23 static_cast<android_webview::AwBrowserContext*>( | |
24 context)->GetFormDatabaseService(); | |
25 DCHECK(service); | |
26 return service->get_autofill_webdata_service(); | |
27 } | |
28 | |
29 namespace android_webview { | 15 namespace android_webview { |
30 | 16 |
31 namespace { | 17 namespace { |
32 | 18 |
33 AwFormDatabaseService* GetFormDatabaseService() { | 19 AwFormDatabaseService* GetFormDatabaseService() { |
34 | 20 |
35 AwBrowserContext* context = AwContentBrowserClient::GetAwBrowserContext(); | 21 AwBrowserContext* context = AwContentBrowserClient::GetAwBrowserContext(); |
36 AwFormDatabaseService* service = context->GetFormDatabaseService(); | 22 AwFormDatabaseService* service = context->GetFormDatabaseService(); |
37 return service; | 23 return service; |
38 } | 24 } |
39 | 25 |
40 } // anonymous namespace | 26 } // anonymous namespace |
41 | 27 |
42 | |
43 // static | 28 // static |
44 jboolean HasFormData(JNIEnv*, jclass) { | 29 jboolean HasFormData(JNIEnv*, jclass) { |
45 return GetFormDatabaseService()->HasFormData(); | 30 return GetFormDatabaseService()->HasFormData(); |
46 } | 31 } |
47 | 32 |
48 // static | 33 // static |
49 void ClearFormData(JNIEnv*, jclass) { | 34 void ClearFormData(JNIEnv*, jclass) { |
50 GetFormDatabaseService()->ClearFormData(); | 35 GetFormDatabaseService()->ClearFormData(); |
51 } | 36 } |
52 | 37 |
53 bool RegisterAwFormDatabase(JNIEnv* env) { | 38 bool RegisterAwFormDatabase(JNIEnv* env) { |
54 return RegisterNativesImpl(env) >= 0; | 39 return RegisterNativesImpl(env) >= 0; |
55 } | 40 } |
56 | 41 |
57 } // namespace android_webview | 42 } // namespace android_webview |
OLD | NEW |