THRIFT-1243 TAsyncChannel callbacks (use void instead of bool)
Patch: Alexandre Parenteau
git-svn-id: https://svn.apache.org/repos/asf/thrift/trunk@1151940 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/lib/cpp/src/async/TAsyncChannel.cpp b/lib/cpp/src/async/TAsyncChannel.cpp
index 2bf02fe..9397017 100644
--- a/lib/cpp/src/async/TAsyncChannel.cpp
+++ b/lib/cpp/src/async/TAsyncChannel.cpp
@@ -22,13 +22,13 @@
namespace apache { namespace thrift { namespace async {
-bool TAsyncChannel::sendAndRecvMessage(const VoidCallback& cob,
+void TAsyncChannel::sendAndRecvMessage(const VoidCallback& cob,
TMemoryBuffer* sendBuf,
TMemoryBuffer* recvBuf) {
std::tr1::function<void()> send_done =
std::tr1::bind(&TAsyncChannel::recvMessage, this, cob, recvBuf);
- return sendMessage(send_done, sendBuf);
+ sendMessage(send_done, sendBuf);
}
}}} // apache::thrift::async
diff --git a/lib/cpp/src/async/TAsyncChannel.h b/lib/cpp/src/async/TAsyncChannel.h
index 72aa4e0..1f49273 100644
--- a/lib/cpp/src/async/TAsyncChannel.h
+++ b/lib/cpp/src/async/TAsyncChannel.h
@@ -46,21 +46,21 @@
*
* @return true iff the cob has been or will be called, else false
*/
- virtual bool sendMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message) = 0;
+ virtual void sendMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message) = 0;
/**
* Receive a message from the channel.
*
* @return true iff the cob has been or will be called, else false
*/
- virtual bool recvMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message) = 0;
+ virtual void recvMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message) = 0;
/**
* Send a message over the channel and receive a response.
*
* @return true iff the cob has been or will be called, else false
*/
- virtual bool sendAndRecvMessage(const VoidCallback& cob,
+ virtual void sendAndRecvMessage(const VoidCallback& cob,
apache::thrift::transport::TMemoryBuffer* sendBuf,
apache::thrift::transport::TMemoryBuffer* recvBuf);
};
diff --git a/lib/cpp/src/async/TEvhttpClientChannel.cpp b/lib/cpp/src/async/TEvhttpClientChannel.cpp
index b5265ce..e5fc1b0 100755
--- a/lib/cpp/src/async/TEvhttpClientChannel.cpp
+++ b/lib/cpp/src/async/TEvhttpClientChannel.cpp
@@ -50,7 +50,7 @@
}
-bool TEvhttpClientChannel::sendAndRecvMessage(
+void TEvhttpClientChannel::sendAndRecvMessage(
const VoidCallback& cob,
apache::thrift::transport::TMemoryBuffer* sendBuf,
apache::thrift::transport::TMemoryBuffer* recvBuf) {
@@ -86,12 +86,10 @@
if (rv != 0) {
abort(); // XXX
}
-
- return true;
}
-bool TEvhttpClientChannel::sendMessage(
+void TEvhttpClientChannel::sendMessage(
const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message) {
(void) cob;
(void) message;
@@ -99,7 +97,7 @@
}
-bool TEvhttpClientChannel::recvMessage(
+void TEvhttpClientChannel::recvMessage(
const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message) {
(void) cob;
(void) message;
@@ -109,14 +107,17 @@
void TEvhttpClientChannel::finish(struct evhttp_request* req) {
if (req == NULL) {
- return cob_();
+ cob_();
+ return;
} else if (req->response_code != 200) {
- return cob_();
+ cob_();
+ return;
}
recvBuf_->resetBuffer(
EVBUFFER_DATA(req->input_buffer),
EVBUFFER_LENGTH(req->input_buffer));
- return cob_();
+ cob_();
+ return;
}
diff --git a/lib/cpp/src/async/TEvhttpClientChannel.h b/lib/cpp/src/async/TEvhttpClientChannel.h
index d2bc4b3..d497edb 100644
--- a/lib/cpp/src/async/TEvhttpClientChannel.h
+++ b/lib/cpp/src/async/TEvhttpClientChannel.h
@@ -46,12 +46,12 @@
struct event_base* eb);
~TEvhttpClientChannel();
- virtual bool sendAndRecvMessage(const VoidCallback& cob,
+ virtual void sendAndRecvMessage(const VoidCallback& cob,
apache::thrift::transport::TMemoryBuffer* sendBuf,
apache::thrift::transport::TMemoryBuffer* recvBuf);
- virtual bool sendMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message);
- virtual bool recvMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message);
+ virtual void sendMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message);
+ virtual void recvMessage(const VoidCallback& cob, apache::thrift::transport::TMemoryBuffer* message);
void finish(struct evhttp_request* req);