OLD | NEW |
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 "net/socket/client_socket_pool_base.h" | 5 #include "net/socket/client_socket_pool_base.h" |
6 | 6 |
7 #include <math.h> | 7 #include <math.h> |
8 #include "base/compiler_specific.h" | 8 #include "base/compiler_specific.h" |
9 #include "base/format_macros.h" | 9 #include "base/format_macros.h" |
10 #include "base/logging.h" | 10 #include "base/logging.h" |
(...skipping 72 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
83 | 83 |
84 void ConnectJob::Initialize(bool is_preconnect) { | 84 void ConnectJob::Initialize(bool is_preconnect) { |
85 if (is_preconnect) | 85 if (is_preconnect) |
86 preconnect_state_ = UNUSED_PRECONNECT; | 86 preconnect_state_ = UNUSED_PRECONNECT; |
87 else | 87 else |
88 preconnect_state_ = NOT_PRECONNECT; | 88 preconnect_state_ = NOT_PRECONNECT; |
89 } | 89 } |
90 | 90 |
91 int ConnectJob::Connect() { | 91 int ConnectJob::Connect() { |
92 if (timeout_duration_ != base::TimeDelta()) | 92 if (timeout_duration_ != base::TimeDelta()) |
93 timer_.Start(FROM_HERE, timeout_duration_, this, &ConnectJob::OnTimeout); | 93 timer_.Start(timeout_duration_, this, &ConnectJob::OnTimeout); |
94 | 94 |
95 idle_ = false; | 95 idle_ = false; |
96 | 96 |
97 LogConnectStart(); | 97 LogConnectStart(); |
98 | 98 |
99 int rv = ConnectInternal(); | 99 int rv = ConnectInternal(); |
100 | 100 |
101 if (rv != ERR_IO_PENDING) { | 101 if (rv != ERR_IO_PENDING) { |
102 LogConnectCompletion(rv); | 102 LogConnectCompletion(rv); |
103 delegate_ = NULL; | 103 delegate_ = NULL; |
(...skipping 20 matching lines...) Expand all Loading... |
124 // The delegate will delete |this|. | 124 // The delegate will delete |this|. |
125 Delegate *delegate = delegate_; | 125 Delegate *delegate = delegate_; |
126 delegate_ = NULL; | 126 delegate_ = NULL; |
127 | 127 |
128 LogConnectCompletion(rv); | 128 LogConnectCompletion(rv); |
129 delegate->OnConnectJobComplete(rv, this); | 129 delegate->OnConnectJobComplete(rv, this); |
130 } | 130 } |
131 | 131 |
132 void ConnectJob::ResetTimer(base::TimeDelta remaining_time) { | 132 void ConnectJob::ResetTimer(base::TimeDelta remaining_time) { |
133 timer_.Stop(); | 133 timer_.Stop(); |
134 timer_.Start(FROM_HERE, remaining_time, this, &ConnectJob::OnTimeout); | 134 timer_.Start(remaining_time, this, &ConnectJob::OnTimeout); |
135 } | 135 } |
136 | 136 |
137 void ConnectJob::LogConnectStart() { | 137 void ConnectJob::LogConnectStart() { |
138 net_log().BeginEvent(NetLog::TYPE_SOCKET_POOL_CONNECT_JOB_CONNECT, | 138 net_log().BeginEvent(NetLog::TYPE_SOCKET_POOL_CONNECT_JOB_CONNECT, |
139 make_scoped_refptr(new NetLogStringParameter("group_name", group_name_))); | 139 make_scoped_refptr(new NetLogStringParameter("group_name", group_name_))); |
140 } | 140 } |
141 | 141 |
142 void ConnectJob::LogConnectCompletion(int net_error) { | 142 void ConnectJob::LogConnectCompletion(int net_error) { |
143 net_log().EndEventWithNetErrorCode( | 143 net_log().EndEventWithNetErrorCode( |
144 NetLog::TYPE_SOCKET_POOL_CONNECT_JOB_CONNECT, net_error); | 144 NetLog::TYPE_SOCKET_POOL_CONNECT_JOB_CONNECT, net_error); |
(...skipping 545 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
690 g_connect_backup_jobs_enabled = enabled; | 690 g_connect_backup_jobs_enabled = enabled; |
691 return old_value; | 691 return old_value; |
692 } | 692 } |
693 | 693 |
694 void ClientSocketPoolBaseHelper::EnableConnectBackupJobs() { | 694 void ClientSocketPoolBaseHelper::EnableConnectBackupJobs() { |
695 connect_backup_jobs_enabled_ = g_connect_backup_jobs_enabled; | 695 connect_backup_jobs_enabled_ = g_connect_backup_jobs_enabled; |
696 } | 696 } |
697 | 697 |
698 void ClientSocketPoolBaseHelper::IncrementIdleCount() { | 698 void ClientSocketPoolBaseHelper::IncrementIdleCount() { |
699 if (++idle_socket_count_ == 1) | 699 if (++idle_socket_count_ == 1) |
700 timer_.Start(FROM_HERE, TimeDelta::FromSeconds(kCleanupInterval), this, | 700 timer_.Start(TimeDelta::FromSeconds(kCleanupInterval), this, |
701 &ClientSocketPoolBaseHelper::OnCleanupTimerFired); | 701 &ClientSocketPoolBaseHelper::OnCleanupTimerFired); |
702 } | 702 } |
703 | 703 |
704 void ClientSocketPoolBaseHelper::DecrementIdleCount() { | 704 void ClientSocketPoolBaseHelper::DecrementIdleCount() { |
705 if (--idle_socket_count_ == 0) | 705 if (--idle_socket_count_ == 0) |
706 timer_.Stop(); | 706 timer_.Stop(); |
707 } | 707 } |
708 | 708 |
709 void ClientSocketPoolBaseHelper::ReleaseSocket(const std::string& group_name, | 709 void ClientSocketPoolBaseHelper::ReleaseSocket(const std::string& group_name, |
710 StreamSocket* socket, | 710 StreamSocket* socket, |
(...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1123 // Delete active jobs. | 1123 // Delete active jobs. |
1124 STLDeleteElements(&jobs_); | 1124 STLDeleteElements(&jobs_); |
1125 | 1125 |
1126 // Cancel pending backup job. | 1126 // Cancel pending backup job. |
1127 method_factory_.RevokeAll(); | 1127 method_factory_.RevokeAll(); |
1128 } | 1128 } |
1129 | 1129 |
1130 } // namespace internal | 1130 } // namespace internal |
1131 | 1131 |
1132 } // namespace net | 1132 } // namespace net |
OLD | NEW |