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

Side by Side Diff: net/spdy/spdy_test_util_common.cc

Issue 1342613002: Revert of Remove reference counting from HttpNetworkSession. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 5 years, 3 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/spdy/spdy_test_util_common.h ('k') | net/url_request/url_request_context_builder.cc » ('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) 2013 The Chromium Authors. All rights reserved. 1 // Copyright (c) 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 "net/spdy/spdy_test_util_common.h" 5 #include "net/spdy/spdy_test_util_common.h"
6 6
7 #include <cstddef> 7 #include <cstddef>
8 8
9 #include "base/compiler_specific.h" 9 #include "base/compiler_specific.h"
10 #include "base/memory/scoped_ptr.h" 10 #include "base/memory/scoped_ptr.h"
(...skipping 397 matching lines...) Expand 10 before | Expand all | Expand 10 after
408 SpdySession::GetDefaultInitialWindowSize(protocol)), 408 SpdySession::GetDefaultInitialWindowSize(protocol)),
409 time_func(&base::TimeTicks::Now), 409 time_func(&base::TimeTicks::Now),
410 use_alternative_services(true), 410 use_alternative_services(true),
411 net_log(NULL) { 411 net_log(NULL) {
412 DCHECK(next_proto_is_spdy(protocol)) << "Invalid protocol: " << protocol; 412 DCHECK(next_proto_is_spdy(protocol)) << "Invalid protocol: " << protocol;
413 } 413 }
414 414
415 SpdySessionDependencies::~SpdySessionDependencies() {} 415 SpdySessionDependencies::~SpdySessionDependencies() {}
416 416
417 // static 417 // static
418 scoped_ptr<HttpNetworkSession> SpdySessionDependencies::SpdyCreateSession( 418 HttpNetworkSession* SpdySessionDependencies::SpdyCreateSession(
419 SpdySessionDependencies* session_deps) { 419 SpdySessionDependencies* session_deps) {
420 HttpNetworkSession::Params params = CreateSessionParams(session_deps); 420 HttpNetworkSession::Params params = CreateSessionParams(session_deps);
421 params.client_socket_factory = session_deps->socket_factory.get(); 421 params.client_socket_factory = session_deps->socket_factory.get();
422 scoped_ptr<HttpNetworkSession> http_session(new HttpNetworkSession(params)); 422 HttpNetworkSession* http_session = new HttpNetworkSession(params);
423 SpdySessionPoolPeer pool_peer(http_session->spdy_session_pool()); 423 SpdySessionPoolPeer pool_peer(http_session->spdy_session_pool());
424 pool_peer.SetEnableSendingInitialData(false); 424 pool_peer.SetEnableSendingInitialData(false);
425 return http_session.Pass(); 425 return http_session;
426 } 426 }
427 427
428 // static 428 // static
429 scoped_ptr<HttpNetworkSession> 429 HttpNetworkSession* SpdySessionDependencies::SpdyCreateSessionDeterministic(
430 SpdySessionDependencies::SpdyCreateSessionDeterministic(
431 SpdySessionDependencies* session_deps) { 430 SpdySessionDependencies* session_deps) {
432 HttpNetworkSession::Params params = CreateSessionParams(session_deps); 431 HttpNetworkSession::Params params = CreateSessionParams(session_deps);
433 params.client_socket_factory = 432 params.client_socket_factory =
434 session_deps->deterministic_socket_factory.get(); 433 session_deps->deterministic_socket_factory.get();
435 scoped_ptr<HttpNetworkSession> http_session(new HttpNetworkSession(params)); 434 HttpNetworkSession* http_session = new HttpNetworkSession(params);
436 SpdySessionPoolPeer pool_peer(http_session->spdy_session_pool()); 435 SpdySessionPoolPeer pool_peer(http_session->spdy_session_pool());
437 pool_peer.SetEnableSendingInitialData(false); 436 pool_peer.SetEnableSendingInitialData(false);
438 return http_session.Pass(); 437 return http_session;
439 } 438 }
440 439
441 // static 440 // static
442 HttpNetworkSession::Params SpdySessionDependencies::CreateSessionParams( 441 HttpNetworkSession::Params SpdySessionDependencies::CreateSessionParams(
443 SpdySessionDependencies* session_deps) { 442 SpdySessionDependencies* session_deps) {
444 DCHECK(next_proto_is_spdy(session_deps->protocol)) << 443 DCHECK(next_proto_is_spdy(session_deps->protocol)) <<
445 "Invalid protocol: " << session_deps->protocol; 444 "Invalid protocol: " << session_deps->protocol;
446 445
447 HttpNetworkSession::Params params; 446 HttpNetworkSession::Params params;
448 params.host_resolver = session_deps->host_resolver.get(); 447 params.host_resolver = session_deps->host_resolver.get();
(...skipping 43 matching lines...) Expand 10 before | Expand all | Expand 10 after
492 params.cert_verifier = cert_verifier(); 491 params.cert_verifier = cert_verifier();
493 params.transport_security_state = transport_security_state(); 492 params.transport_security_state = transport_security_state();
494 params.proxy_service = proxy_service(); 493 params.proxy_service = proxy_service();
495 params.ssl_config_service = ssl_config_service(); 494 params.ssl_config_service = ssl_config_service();
496 params.http_auth_handler_factory = http_auth_handler_factory(); 495 params.http_auth_handler_factory = http_auth_handler_factory();
497 params.network_delegate = network_delegate(); 496 params.network_delegate = network_delegate();
498 params.enable_spdy_compression = false; 497 params.enable_spdy_compression = false;
499 params.enable_spdy_ping_based_connection_checking = false; 498 params.enable_spdy_ping_based_connection_checking = false;
500 params.spdy_default_protocol = protocol; 499 params.spdy_default_protocol = protocol;
501 params.http_server_properties = http_server_properties(); 500 params.http_server_properties = http_server_properties();
502 storage_.set_http_network_session( 501 scoped_refptr<HttpNetworkSession> network_session(
503 make_scoped_ptr(new HttpNetworkSession(params))); 502 new HttpNetworkSession(params));
504 SpdySessionPoolPeer pool_peer( 503 SpdySessionPoolPeer pool_peer(network_session->spdy_session_pool());
505 storage_.http_network_session()->spdy_session_pool());
506 pool_peer.SetEnableSendingInitialData(false); 504 pool_peer.SetEnableSendingInitialData(false);
507 storage_.set_http_transaction_factory( 505 storage_.set_http_transaction_factory(new HttpCache(
508 new HttpCache(storage_.http_network_session(), 506 network_session.get(), HttpCache::DefaultBackend::InMemory(0)));
509 HttpCache::DefaultBackend::InMemory(0), false));
510 } 507 }
511 508
512 SpdyURLRequestContext::~SpdyURLRequestContext() { 509 SpdyURLRequestContext::~SpdyURLRequestContext() {
513 AssertNoURLRequests(); 510 AssertNoURLRequests();
514 } 511 }
515 512
516 bool HasSpdySession(SpdySessionPool* pool, const SpdySessionKey& key) { 513 bool HasSpdySession(SpdySessionPool* pool, const SpdySessionKey& key) {
517 return pool->FindAvailableSession(key, BoundNetLog()) != NULL; 514 return pool->FindAvailableSession(key, BoundNetLog()) != NULL;
518 } 515 }
519 516
520 namespace { 517 namespace {
521 518
522 base::WeakPtr<SpdySession> CreateSpdySessionHelper( 519 base::WeakPtr<SpdySession> CreateSpdySessionHelper(
523 HttpNetworkSession* http_session, 520 const scoped_refptr<HttpNetworkSession>& http_session,
524 const SpdySessionKey& key, 521 const SpdySessionKey& key,
525 const BoundNetLog& net_log, 522 const BoundNetLog& net_log,
526 Error expected_status, 523 Error expected_status,
527 bool is_secure) { 524 bool is_secure) {
528 EXPECT_FALSE(HasSpdySession(http_session->spdy_session_pool(), key)); 525 EXPECT_FALSE(HasSpdySession(http_session->spdy_session_pool(), key));
529 526
530 scoped_refptr<TransportSocketParams> transport_params( 527 scoped_refptr<TransportSocketParams> transport_params(
531 new TransportSocketParams( 528 new TransportSocketParams(
532 key.host_port_pair(), false, false, OnHostResolutionCallback(), 529 key.host_port_pair(), false, false, OnHostResolutionCallback(),
533 TransportSocketParams::COMBINE_CONNECT_AND_WRITE_DEFAULT)); 530 TransportSocketParams::COMBINE_CONNECT_AND_WRITE_DEFAULT));
(...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after
574 key, connection.Pass(), net_log, OK, is_secure); 571 key, connection.Pass(), net_log, OK, is_secure);
575 // Failure is reported asynchronously. 572 // Failure is reported asynchronously.
576 EXPECT_TRUE(spdy_session != NULL); 573 EXPECT_TRUE(spdy_session != NULL);
577 EXPECT_TRUE(HasSpdySession(http_session->spdy_session_pool(), key)); 574 EXPECT_TRUE(HasSpdySession(http_session->spdy_session_pool(), key));
578 return spdy_session; 575 return spdy_session;
579 } 576 }
580 577
581 } // namespace 578 } // namespace
582 579
583 base::WeakPtr<SpdySession> CreateInsecureSpdySession( 580 base::WeakPtr<SpdySession> CreateInsecureSpdySession(
584 HttpNetworkSession* http_session, 581 const scoped_refptr<HttpNetworkSession>& http_session,
585 const SpdySessionKey& key, 582 const SpdySessionKey& key,
586 const BoundNetLog& net_log) { 583 const BoundNetLog& net_log) {
587 return CreateSpdySessionHelper(http_session, key, net_log, 584 return CreateSpdySessionHelper(http_session, key, net_log,
588 OK, false /* is_secure */); 585 OK, false /* is_secure */);
589 } 586 }
590 587
591 base::WeakPtr<SpdySession> TryCreateInsecureSpdySessionExpectingFailure( 588 base::WeakPtr<SpdySession> TryCreateInsecureSpdySessionExpectingFailure(
592 HttpNetworkSession* http_session, 589 const scoped_refptr<HttpNetworkSession>& http_session,
593 const SpdySessionKey& key, 590 const SpdySessionKey& key,
594 Error expected_error, 591 Error expected_error,
595 const BoundNetLog& net_log) { 592 const BoundNetLog& net_log) {
596 DCHECK_LT(expected_error, ERR_IO_PENDING); 593 DCHECK_LT(expected_error, ERR_IO_PENDING);
597 return CreateSpdySessionHelper(http_session, key, net_log, 594 return CreateSpdySessionHelper(http_session, key, net_log,
598 expected_error, false /* is_secure */); 595 expected_error, false /* is_secure */);
599 } 596 }
600 597
601 base::WeakPtr<SpdySession> CreateSecureSpdySession( 598 base::WeakPtr<SpdySession> CreateSecureSpdySession(
602 HttpNetworkSession* http_session, 599 const scoped_refptr<HttpNetworkSession>& http_session,
603 const SpdySessionKey& key, 600 const SpdySessionKey& key,
604 const BoundNetLog& net_log) { 601 const BoundNetLog& net_log) {
605 return CreateSpdySessionHelper(http_session, key, net_log, 602 return CreateSpdySessionHelper(http_session, key, net_log,
606 OK, true /* is_secure */); 603 OK, true /* is_secure */);
607 } 604 }
608 605
609 namespace { 606 namespace {
610 607
611 // A ClientSocket used for CreateFakeSpdySession() below. 608 // A ClientSocket used for CreateFakeSpdySession() below.
612 class FakeSpdySessionClientSocket : public MockClientSocket { 609 class FakeSpdySessionClientSocket : public MockClientSocket {
(...skipping 728 matching lines...) Expand 10 before | Expand all | Expand 10 after
1341 } 1338 }
1342 } 1339 }
1343 1340
1344 void SpdyTestUtil::SetPriority(RequestPriority priority, 1341 void SpdyTestUtil::SetPriority(RequestPriority priority,
1345 SpdySynStreamIR* ir) const { 1342 SpdySynStreamIR* ir) const {
1346 ir->set_priority(ConvertRequestPriorityToSpdyPriority( 1343 ir->set_priority(ConvertRequestPriorityToSpdyPriority(
1347 priority, spdy_version())); 1344 priority, spdy_version()));
1348 } 1345 }
1349 1346
1350 } // namespace net 1347 } // namespace net
OLDNEW
« no previous file with comments | « net/spdy/spdy_test_util_common.h ('k') | net/url_request/url_request_context_builder.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698