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

Side by Side Diff: net/url_request/test_url_fetcher_factory.cc

Issue 1117703002: Adjust URLFetcher::Create API so that object is returned as scoped_ptr. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Remove unneeded Pass() calls Created 5 years, 7 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
« no previous file with comments | « net/url_request/test_url_fetcher_factory.h ('k') | net/url_request/url_fetcher.h » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 "net/url_request/test_url_fetcher_factory.h" 5 #include "net/url_request/test_url_fetcher_factory.h"
6 6
7 #include <string> 7 #include <string>
8 8
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/compiler_specific.h" 10 #include "base/compiler_specific.h"
(...skipping 282 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 } 293 }
294 294
295 TestURLFetcherFactory::TestURLFetcherFactory() 295 TestURLFetcherFactory::TestURLFetcherFactory()
296 : ScopedURLFetcherFactory(this), 296 : ScopedURLFetcherFactory(this),
297 delegate_for_tests_(NULL), 297 delegate_for_tests_(NULL),
298 remove_fetcher_on_delete_(false) { 298 remove_fetcher_on_delete_(false) {
299 } 299 }
300 300
301 TestURLFetcherFactory::~TestURLFetcherFactory() {} 301 TestURLFetcherFactory::~TestURLFetcherFactory() {}
302 302
303 URLFetcher* TestURLFetcherFactory::CreateURLFetcher( 303 scoped_ptr<URLFetcher> TestURLFetcherFactory::CreateURLFetcher(
304 int id, 304 int id,
305 const GURL& url, 305 const GURL& url,
306 URLFetcher::RequestType request_type, 306 URLFetcher::RequestType request_type,
307 URLFetcherDelegate* d) { 307 URLFetcherDelegate* d) {
308 TestURLFetcher* fetcher = new TestURLFetcher(id, url, d); 308 TestURLFetcher* fetcher = new TestURLFetcher(id, url, d);
309 if (remove_fetcher_on_delete_) 309 if (remove_fetcher_on_delete_)
310 fetcher->set_owner(this); 310 fetcher->set_owner(this);
311 fetcher->SetDelegateForTests(delegate_for_tests_); 311 fetcher->SetDelegateForTests(delegate_for_tests_);
312 fetchers_[id] = fetcher; 312 fetchers_[id] = fetcher;
313 return fetcher; 313 return scoped_ptr<URLFetcher>(fetcher);
314 } 314 }
315 315
316 TestURLFetcher* TestURLFetcherFactory::GetFetcherByID(int id) const { 316 TestURLFetcher* TestURLFetcherFactory::GetFetcherByID(int id) const {
317 Fetchers::const_iterator i = fetchers_.find(id); 317 Fetchers::const_iterator i = fetchers_.find(id);
318 return i == fetchers_.end() ? NULL : i->second; 318 return i == fetchers_.end() ? NULL : i->second;
319 } 319 }
320 320
321 void TestURLFetcherFactory::RemoveFetcherFromMap(int id) { 321 void TestURLFetcherFactory::RemoveFetcherFromMap(int id) {
322 Fetchers::iterator i = fetchers_.find(id); 322 Fetchers::iterator i = fetchers_.find(id);
323 DCHECK(i != fetchers_.end()); 323 DCHECK(i != fetchers_.end());
(...skipping 68 matching lines...) Expand 10 before | Expand all | Expand 10 after
392 URLFetcherDelegate* delegate, 392 URLFetcherDelegate* delegate,
393 const std::string& response_data, 393 const std::string& response_data,
394 HttpStatusCode response_code, 394 HttpStatusCode response_code,
395 URLRequestStatus::Status status) { 395 URLRequestStatus::Status status) {
396 return scoped_ptr<FakeURLFetcher>( 396 return scoped_ptr<FakeURLFetcher>(
397 new FakeURLFetcher(url, delegate, response_data, response_code, status)); 397 new FakeURLFetcher(url, delegate, response_data, response_code, status));
398 } 398 }
399 399
400 FakeURLFetcherFactory::~FakeURLFetcherFactory() {} 400 FakeURLFetcherFactory::~FakeURLFetcherFactory() {}
401 401
402 URLFetcher* FakeURLFetcherFactory::CreateURLFetcher( 402 scoped_ptr<URLFetcher> FakeURLFetcherFactory::CreateURLFetcher(
403 int id, 403 int id,
404 const GURL& url, 404 const GURL& url,
405 URLFetcher::RequestType request_type, 405 URLFetcher::RequestType request_type,
406 URLFetcherDelegate* d) { 406 URLFetcherDelegate* d) {
407 FakeResponseMap::const_iterator it = fake_responses_.find(url); 407 FakeResponseMap::const_iterator it = fake_responses_.find(url);
408 if (it == fake_responses_.end()) { 408 if (it == fake_responses_.end()) {
409 if (default_factory_ == NULL) { 409 if (default_factory_ == NULL) {
410 // If we don't have a baked response for that URL we return NULL. 410 // If we don't have a baked response for that URL we return NULL.
411 DLOG(ERROR) << "No baked response for URL: " << url.spec(); 411 DLOG(ERROR) << "No baked response for URL: " << url.spec();
412 return NULL; 412 return NULL;
413 } else { 413 } else {
414 return default_factory_->CreateURLFetcher(id, url, request_type, d); 414 return default_factory_->CreateURLFetcher(id, url, request_type, d);
415 } 415 }
416 } 416 }
417 417
418 scoped_ptr<FakeURLFetcher> fake_fetcher = 418 scoped_ptr<URLFetcher> fake_fetcher =
419 creator_.Run(url, d, it->second.response_data, 419 creator_.Run(url, d, it->second.response_data, it->second.response_code,
420 it->second.response_code, it->second.status); 420 it->second.status);
421 // TODO: Make URLFetcherFactory::CreateURLFetcher return a scoped_ptr 421 return fake_fetcher;
422 return fake_fetcher.release();
423 } 422 }
424 423
425 void FakeURLFetcherFactory::SetFakeResponse( 424 void FakeURLFetcherFactory::SetFakeResponse(
426 const GURL& url, 425 const GURL& url,
427 const std::string& response_data, 426 const std::string& response_data,
428 HttpStatusCode response_code, 427 HttpStatusCode response_code,
429 URLRequestStatus::Status status) { 428 URLRequestStatus::Status status) {
430 // Overwrite existing URL if it already exists. 429 // Overwrite existing URL if it already exists.
431 FakeURLResponse response; 430 FakeURLResponse response;
432 response.response_data = response_data; 431 response.response_data = response_data;
433 response.response_code = response_code; 432 response.response_code = response_code;
434 response.status = status; 433 response.status = status;
435 fake_responses_[url] = response; 434 fake_responses_[url] = response;
436 } 435 }
437 436
438 void FakeURLFetcherFactory::ClearFakeResponses() { 437 void FakeURLFetcherFactory::ClearFakeResponses() {
439 fake_responses_.clear(); 438 fake_responses_.clear();
440 } 439 }
441 440
442 URLFetcherImplFactory::URLFetcherImplFactory() {} 441 URLFetcherImplFactory::URLFetcherImplFactory() {}
443 442
444 URLFetcherImplFactory::~URLFetcherImplFactory() {} 443 URLFetcherImplFactory::~URLFetcherImplFactory() {}
445 444
446 URLFetcher* URLFetcherImplFactory::CreateURLFetcher( 445 scoped_ptr<URLFetcher> URLFetcherImplFactory::CreateURLFetcher(
447 int id, 446 int id,
448 const GURL& url, 447 const GURL& url,
449 URLFetcher::RequestType request_type, 448 URLFetcher::RequestType request_type,
450 URLFetcherDelegate* d) { 449 URLFetcherDelegate* d) {
451 return new URLFetcherImpl(url, request_type, d); 450 return scoped_ptr<URLFetcher>(new URLFetcherImpl(url, request_type, d));
452 } 451 }
453 452
454 } // namespace net 453 } // namespace net
OLDNEW
« no previous file with comments | « net/url_request/test_url_fetcher_factory.h ('k') | net/url_request/url_fetcher.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698