diff options
author | petersont@google.com <petersont@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-12 22:39:14 +0000 |
---|---|---|
committer | petersont@google.com <petersont@google.com@0039d316-1c4b-4281-b951-d872f2087c98> | 2008-11-12 22:39:14 +0000 |
commit | 603c1d0ce8f84241739005df226f5e31494dd3cd (patch) | |
tree | 509914ea91ab2fde93a3bdc156fd7c2902bf70f6 /chrome/browser/webdata/web_data_service.cc | |
parent | 4fb8792e0d0960bf776f67e43e878beedd6f0463 (diff) | |
download | chromium_src-603c1d0ce8f84241739005df226f5e31494dd3cd.zip chromium_src-603c1d0ce8f84241739005df226f5e31494dd3cd.tar.gz chromium_src-603c1d0ce8f84241739005df226f5e31494dd3cd.tar.bz2 |
New functions in WebDatabase and WebDataService for the removal of form entries made between two given times. BrowserDataRemover::Remove now clears autofill data.
BUG=3870
Review URL: http://codereview.chromium.org/9775
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@5312 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'chrome/browser/webdata/web_data_service.cc')
-rw-r--r-- | chrome/browser/webdata/web_data_service.cc | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/chrome/browser/webdata/web_data_service.cc b/chrome/browser/webdata/web_data_service.cc index 002977c..e3e3f44 100644 --- a/chrome/browser/webdata/web_data_service.cc +++ b/chrome/browser/webdata/web_data_service.cc @@ -342,6 +342,19 @@ void WebDataService::RemoveLoginsCreatedAfter(const Time delete_begin) { RemoveLoginsCreatedBetween(delete_begin, Time()); } +void WebDataService::RemoveFormElementsAddedBetween(const Time& delete_begin, + const Time& delete_end) { + GenericRequest2<Time, Time>* request = + new GenericRequest2<Time, Time>(this, + GetNextRequestHandle(), + NULL, + delete_begin, + delete_end); + RegisterRequest(request); + ScheduleTask(NewRunnableMethod(this, + &WebDataService::RemoveFormElementsAddedBetweenImpl, request)); +} + WebDataService::Handle WebDataService::GetLogins( const PasswordForm& form, WebDataServiceConsumer* consumer) { @@ -615,6 +628,16 @@ void WebDataService::GetFormValuesForElementNameImpl(WebDataRequest* request, request->RequestComplete(); } +void WebDataService::RemoveFormElementsAddedBetweenImpl( + GenericRequest2<Time, Time>* request) { + if (db_ && !request->IsCancelled()) { + if (db_->RemoveFormElementsAddedBetween(request->GetArgument1(), + request->GetArgument2())) + ScheduleCommit(); + } + request->RequestComplete(); +} + //////////////////////////////////////////////////////////////////////////////// // // Web Apps implementation. |