[thrift] TSocketPool::addServer, c++ version
Summary: Same thing as the previous PHP change. Also includes a new constructor for easy building of a TSocketPool with a single host (for later filling in via addServer) without extra std::vector boxing/unboxing.
Reviewed By: mcslee
Test Plan: Synapse c++ client at r62896 uses this.
Revert: OK
TracCamp Project: Thrift
DiffCamp Revision: 909
git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665297 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cpp/src/transport/TSocketPool.cpp b/lib/cpp/src/transport/TSocketPool.cpp
index 1293e5b..b6440fc 100644
--- a/lib/cpp/src/transport/TSocketPool.cpp
+++ b/lib/cpp/src/transport/TSocketPool.cpp
@@ -33,7 +33,7 @@
}
for (unsigned int i = 0; i < hosts.size(); ++i) {
- servers_.push_back(pair<string, int>(hosts[i], ports[i]));
+ addServer(hosts[i], ports[i]);
}
}
@@ -47,10 +47,24 @@
{
}
+TSocketPool::TSocketPool(const string& host, int port) : TSocket(),
+ numRetries_(1),
+ retryInterval_(60),
+ maxConsecutiveFailures_(1),
+ randomize_(true),
+ alwaysTryLast_(true)
+{
+ addServer(host, port);
+}
+
TSocketPool::~TSocketPool() {
close();
}
+void TSocketPool::addServer(const string& host, int port) {
+ servers_.push_back(pair<string, int>(host, port));
+}
+
void TSocketPool::setNumRetries(int numRetries) {
numRetries_ = numRetries;
}