Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(425)

Side by Side Diff: chrome/browser/webdata/web_data_service.cc

Issue 8144013: Add a check to the registry before the intent infobar is shown. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Merge to head Created 9 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2011 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 "chrome/browser/webdata/web_data_service.h" 5 #include "chrome/browser/webdata/web_data_service.h"
6 6
7 #include "base/bind.h" 7 #include "base/bind.h"
8 #include "base/message_loop.h" 8 #include "base/message_loop.h"
9 #include "base/stl_util.h" 9 #include "base/stl_util.h"
10 #include "base/threading/thread.h" 10 #include "base/threading/thread.h"
(...skipping 242 matching lines...) Expand 10 before | Expand all | Expand 10 after
253 } 253 }
254 254
255 void WebDataService::RemoveWebIntent(const WebIntentServiceData& service) { 255 void WebDataService::RemoveWebIntent(const WebIntentServiceData& service) {
256 GenericRequest<WebIntentServiceData>* request = 256 GenericRequest<WebIntentServiceData>* request =
257 new GenericRequest<WebIntentServiceData>( 257 new GenericRequest<WebIntentServiceData>(
258 this, GetNextRequestHandle(), NULL, service); 258 this, GetNextRequestHandle(), NULL, service);
259 RegisterRequest(request); 259 RegisterRequest(request);
260 ScheduleTask(Bind(&WebDataService::RemoveWebIntentImpl, this, request)); 260 ScheduleTask(Bind(&WebDataService::RemoveWebIntentImpl, this, request));
261 } 261 }
262 262
263 WebDataService::Handle WebDataService::GetWebIntents(const string16& action, 263 WebDataService::Handle WebDataService::GetWebIntents(
264 WebDataServiceConsumer* consumer) { 264 const string16& action,
265 WebDataServiceConsumer* consumer) {
265 DCHECK(consumer); 266 DCHECK(consumer);
266 GenericRequest<string16>* request = new GenericRequest<string16>( 267 GenericRequest<string16>* request = new GenericRequest<string16>(
267 this, GetNextRequestHandle(), consumer, action); 268 this, GetNextRequestHandle(), consumer, action);
268 RegisterRequest(request); 269 RegisterRequest(request);
269 ScheduleTask(Bind(&WebDataService::GetWebIntentsImpl, this, request)); 270 ScheduleTask(Bind(&WebDataService::GetWebIntentsImpl, this, request));
270 return request->GetHandle(); 271 return request->GetHandle();
271 } 272 }
272 273
274 WebDataService::Handle WebDataService::GetWebIntentsForURL(
275 const string16& action,
276 const string16& service_url,
277 WebDataServiceConsumer* consumer) {
278 DCHECK(consumer);
279 GenericRequest2<string16, string16>* request =
280 new GenericRequest2<string16, string16>(
281 this, GetNextRequestHandle(), consumer, action, service_url);
282 RegisterRequest(request);
283 ScheduleTask(Bind(&WebDataService::GetWebIntentsForURLImpl, this, request));
284 return request->GetHandle();
285 }
286
287
273 WebDataService::Handle WebDataService::GetAllWebIntents( 288 WebDataService::Handle WebDataService::GetAllWebIntents(
274 WebDataServiceConsumer* consumer) { 289 WebDataServiceConsumer* consumer) {
275 DCHECK(consumer); 290 DCHECK(consumer);
276 GenericRequest<std::string>* request = new GenericRequest<std::string>( 291 GenericRequest<std::string>* request = new GenericRequest<std::string>(
277 this, GetNextRequestHandle(), consumer, std::string()); 292 this, GetNextRequestHandle(), consumer, std::string());
278 RegisterRequest(request); 293 RegisterRequest(request);
279 ScheduleTask(Bind(&WebDataService::GetAllWebIntentsImpl, this, request)); 294 ScheduleTask(Bind(&WebDataService::GetAllWebIntentsImpl, this, request));
280 return request->GetHandle(); 295 return request->GetHandle();
281 } 296 }
282 297
(...skipping 559 matching lines...) Expand 10 before | Expand all | Expand 10 after
842 if (db_ && !request->IsCancelled(NULL)) { 857 if (db_ && !request->IsCancelled(NULL)) {
843 std::vector<WebIntentServiceData> result; 858 std::vector<WebIntentServiceData> result;
844 db_->GetWebIntentsTable()->GetWebIntents(request->arg(), &result); 859 db_->GetWebIntentsTable()->GetWebIntents(request->arg(), &result);
845 request->SetResult( 860 request->SetResult(
846 new WDResult<std::vector<WebIntentServiceData> >( 861 new WDResult<std::vector<WebIntentServiceData> >(
847 WEB_INTENTS_RESULT, result)); 862 WEB_INTENTS_RESULT, result));
848 } 863 }
849 request->RequestComplete(); 864 request->RequestComplete();
850 } 865 }
851 866
867 void WebDataService::GetWebIntentsForURLImpl(
868 GenericRequest2<string16, string16>* request) {
869 InitializeDatabaseIfNecessary();
870 if (db_ && !request->IsCancelled(NULL)) {
871 std::vector<WebIntentServiceData> result;
872 db_->GetWebIntentsTable()->GetWebIntentsForURL(
873 request->arg1(), request->arg2(), &result);
874 request->SetResult(
875 new WDResult<std::vector<WebIntentServiceData> >(
876 WEB_INTENTS_RESULT, result));
877 }
878 request->RequestComplete();
879 }
880
852 void WebDataService::GetAllWebIntentsImpl( 881 void WebDataService::GetAllWebIntentsImpl(
853 GenericRequest<std::string>* request) { 882 GenericRequest<std::string>* request) {
854 InitializeDatabaseIfNecessary(); 883 InitializeDatabaseIfNecessary();
855 if (db_ && !request->IsCancelled(NULL)) { 884 if (db_ && !request->IsCancelled(NULL)) {
856 std::vector<WebIntentServiceData> result; 885 std::vector<WebIntentServiceData> result;
857 db_->GetWebIntentsTable()->GetAllWebIntents(&result); 886 db_->GetWebIntentsTable()->GetAllWebIntents(&result);
858 request->SetResult( 887 request->SetResult(
859 new WDResult<std::vector<WebIntentServiceData> >( 888 new WDResult<std::vector<WebIntentServiceData> >(
860 WEB_INTENTS_RESULT, result)); 889 WEB_INTENTS_RESULT, result));
861 } 890 }
(...skipping 546 matching lines...) Expand 10 before | Expand all | Expand 10 after
1408 } 1437 }
1409 1438
1410 const WDTypedResult* WebDataService::WebDataRequest::GetResult() const { 1439 const WDTypedResult* WebDataService::WebDataRequest::GetResult() const {
1411 return result_; 1440 return result_;
1412 } 1441 }
1413 1442
1414 void WebDataService::WebDataRequest::RequestComplete() { 1443 void WebDataService::WebDataRequest::RequestComplete() {
1415 message_loop_->PostTask(FROM_HERE, Bind(&WebDataService::RequestCompleted, 1444 message_loop_->PostTask(FROM_HERE, Bind(&WebDataService::RequestCompleted,
1416 service_.get(), handle_)); 1445 service_.get(), handle_));
1417 } 1446 }
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698