/// \param endpoint Target of the send. (Unused for a TCP socket because
/// that was determined when the connection was opened.)
/// \param callback Callback object.
+ /// \throw BufferTooLarge on attempt to send a buffer larger than 64kB.
virtual void asyncSend(const void* data, size_t length,
const IOEndpoint* endpoint, C& callback);
/// \param data Data to send
/// \param length Length of data to send
/// \param callback Callback object.
+ /// \throw BufferTooLarge on attempt to send a buffer larger than 64kB.
void asyncSend(const void* data, size_t length, C& callback);
/// \brief Receive Asynchronously
#include <http/tests/response_test.h>
#include <boost/shared_ptr.hpp>
#include <gtest/gtest.h>
+#include <algorithm>
using namespace isc::asiolink;
using namespace isc::http;
using HttpConnectionPool::connections_;
+ /// @brief Checks if specified connection belongs to the pool.
+ bool hasConnection(const HttpConnectionPtr& conn) const {
+ return (std::find(connections_.begin(), connections_.end(), conn)
+ != connections_.end());
+ }
+
};
/// @brief Test fixture class for @ref HttpConnectionPool.
// Start first connection and check that it has been added to the pool.
ASSERT_NO_THROW(pool.start(conn1));
ASSERT_EQ(1, pool.connections_.size());
- ASSERT_EQ(1, pool.connections_.count(conn1));
+ ASSERT_EQ(1, pool.hasConnection(conn1));
// Start second connection and check that it also has been added.
ASSERT_NO_THROW(pool.start(conn2));
ASSERT_EQ(2, pool.connections_.size());
- ASSERT_EQ(1, pool.connections_.count(conn2));
+ ASSERT_EQ(1, pool.hasConnection(conn2));
// Stop first connection.
ASSERT_NO_THROW(pool.stop(conn1));
ASSERT_EQ(1, pool.connections_.size());
// Check that it has been removed but the second connection is still there.
- ASSERT_EQ(0, pool.connections_.count(conn1));
- ASSERT_EQ(1, pool.connections_.count(conn2));
+ ASSERT_EQ(0, pool.hasConnection(conn1));
+ ASSERT_EQ(1, pool.hasConnection(conn2));
// Remove second connection and verify.
ASSERT_NO_THROW(pool.stop(conn2));
ASSERT_NO_THROW(pool.start(conn1));
ASSERT_NO_THROW(pool.stop(conn2));
ASSERT_EQ(1, pool.connections_.size());
- ASSERT_EQ(1, pool.connections_.count(conn1));
+ ASSERT_EQ(1, pool.hasConnection(conn1));
}
}