aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/grpcpp/impl/codegen/rpc_service_method.h
diff options
context:
space:
mode:
authorGravatar Yash Tibrewal <yashkt@google.com>2018-10-17 22:05:48 -0700
committerGravatar Yash Tibrewal <yashkt@google.com>2018-10-17 22:05:48 -0700
commitd042a5acf1fc83810c5a3b3e7cf2a8340748f1ba (patch)
treeb954e4116d1c0d4fa39a21792c46832f917bba26 /include/grpcpp/impl/codegen/rpc_service_method.h
parent0b785ae8cf3dfef0937d300ce00bff8d4b173a18 (diff)
some tests fail
Diffstat (limited to 'include/grpcpp/impl/codegen/rpc_service_method.h')
-rw-r--r--include/grpcpp/impl/codegen/rpc_service_method.h17
1 files changed, 10 insertions, 7 deletions
diff --git a/include/grpcpp/impl/codegen/rpc_service_method.h b/include/grpcpp/impl/codegen/rpc_service_method.h
index 5cf88e216f..04607efd7d 100644
--- a/include/grpcpp/impl/codegen/rpc_service_method.h
+++ b/include/grpcpp/impl/codegen/rpc_service_method.h
@@ -40,17 +40,20 @@ class MethodHandler {
public:
virtual ~MethodHandler() {}
struct HandlerParameter {
- HandlerParameter(Call* c, ServerContext* context, grpc_byte_buffer* req)
- : call(c), server_context(context) {
- request.set_buffer(req);
- }
- ~HandlerParameter() { request.Release(); }
+ HandlerParameter(Call* c, ServerContext* context)
+ : call(c), server_context(context) {}
+ ~HandlerParameter() {}
Call* call;
ServerContext* server_context;
- // Handler required to destroy these contents
- ByteBuffer request;
};
virtual void RunHandler(const HandlerParameter& param) = 0;
+
+ /* Returns pointer to the deserialized request. Ownership is retained by the
+ handler. Returns nullptr if deserialization failed */
+ virtual void* Deserialize(grpc_byte_buffer* req) {
+ GPR_CODEGEN_ASSERT(req == nullptr);
+ return nullptr;
+ }
};
/// Server side rpc method class