diff options
author | Yang Gao <yangg@google.com> | 2015-02-11 00:04:32 -0800 |
---|---|---|
committer | Yang Gao <yangg@google.com> | 2015-02-11 00:04:32 -0800 |
commit | d5a04bdc6e5ea6bc81ff15409381323c196b0e0f (patch) | |
tree | f2921aa2451083f54cf7694df561370e18f6cb68 /include/grpc++/impl | |
parent | d608892313fff2983f2aba2602581bee7108c875 (diff) |
Implement FillOps
Diffstat (limited to 'include/grpc++/impl')
-rw-r--r-- | include/grpc++/impl/call.h | 14 |
1 files changed, 12 insertions, 2 deletions
diff --git a/include/grpc++/impl/call.h b/include/grpc++/impl/call.h index 91f3f58443..edc6555b0c 100644 --- a/include/grpc++/impl/call.h +++ b/include/grpc++/impl/call.h @@ -34,6 +34,7 @@ #ifndef __GRPCPP_CALL_H__ #define __GRPCPP_CALL_H__ +#include <grpc/grpc.h> #include <grpc++/status.h> #include <grpc++/completion_queue.h> @@ -72,16 +73,25 @@ class CallOpBuffer final : public CompletionQueueTag { // Convert to an array of grpc_op elements void FillOps(grpc_op *ops, size_t *nops); + // Release send buffers. + void ReleaseSendBuffer(); + // Called by completion queue just prior to returning from Next() or Pluck() void FinalizeResult(void *tag, bool *status) override; private: void *return_tag_ = nullptr; - std::multimap<grpc::string, grpc::string>* metadata_ = nullptr; + size_t initial_metadata_count_ = 0; + grpc_metadata* initial_metadata_ = nullptr; const google::protobuf::Message* send_message_ = nullptr; + grpc_byte_buffer* write_buffer_ = nullptr; google::protobuf::Message* recv_message_ = nullptr; + grpc_byte_buffer* recv_message_buf_ = nullptr; bool client_send_close_ = false; - Status* status_ = nullptr; + Status* recv_status_ = nullptr; + grpc_status_code status_code_ = GRPC_STATUS_OK; + char* status_details_ = nullptr; + size_t status_details_capacity_ = 0; }; class CCallDeleter { |