Chromium Code Reviews| 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 "base/android/jni_android.h" | 10 #include "base/android/jni_android.h" |
| 10 #include "base/logging.h" | 11 #include "base/logging.h" |
| 11 #include "base/time.h" | 12 #include "base/time.h" |
| 12 #include "components/autofill/browser/webdata/autofill_webdata_service.h" | 13 #include "components/autofill/browser/webdata/autofill_webdata_service.h" |
| 13 #include "jni/AwFormDatabase_jni.h" | 14 #include "jni/AwFormDatabase_jni.h" |
| 14 | 15 |
| 16 // static | |
|
benm (inactive)
2013/04/29 18:00:03
anonymous namespace?
sgurun-gerrit only
2013/04/29 19:32:39
this def is for autofill namespace.
On 2013/04/29
| |
| 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 | |
| 15 namespace android_webview { | 29 namespace android_webview { |
| 16 | 30 |
| 17 // static | 31 // static |
| 32 jboolean HasFormData(JNIEnv*, jclass) { | |
| 33 AwBrowserContext* context = AwContentBrowserClient::GetAwBrowserContext(); | |
| 34 DCHECK(context); | |
| 35 AwFormDatabaseService* service = context->GetFormDatabaseService(); | |
| 36 DCHECK(service); | |
| 37 return service->HasFormElements(); | |
| 38 } | |
| 39 | |
| 40 // static | |
| 18 void ClearFormData(JNIEnv*, jclass) { | 41 void ClearFormData(JNIEnv*, jclass) { |
| 19 AwBrowserContext* context = AwContentBrowserClient::GetAwBrowserContext(); | 42 AwBrowserContext* context = AwContentBrowserClient::GetAwBrowserContext(); |
| 20 DCHECK(context); | |
| 21 | |
| 22 autofill::AutofillWebDataService* service = | 43 autofill::AutofillWebDataService* service = |
| 23 autofill::AutofillWebDataService::FromBrowserContext(context).get(); | 44 autofill::AutofillWebDataService::FromBrowserContext(context).get(); |
| 24 if (service == NULL) { | 45 if (service == NULL) { |
| 25 LOG(WARNING) << "No webdata service found, ignoring ClearFormData"; | 46 LOG(WARNING) << "No webdata service found, ignoring ClearFormData"; |
| 26 return; | 47 return; |
| 27 } | 48 } |
| 28 | 49 |
| 29 base::Time begin; | 50 base::Time begin; |
| 30 base::Time end = base::Time::Max(); | 51 base::Time end = base::Time::Max(); |
| 31 service->RemoveFormElementsAddedBetween(begin, end); | 52 service->RemoveFormElementsAddedBetween(begin, end); |
| 32 service->RemoveAutofillDataModifiedBetween(begin, end); | 53 service->RemoveAutofillDataModifiedBetween(begin, end); |
| 33 } | 54 } |
| 34 | 55 |
| 35 bool RegisterFormDatabase(JNIEnv* env) { | 56 bool RegisterAwFormDatabase(JNIEnv* env) { |
| 36 return RegisterNativesImpl(env) >= 0; | 57 return RegisterNativesImpl(env) >= 0; |
| 37 } | 58 } |
| 38 | 59 |
| 39 } // namespace android_webview | 60 } // namespace android_webview |
| OLD | NEW |