aboutsummaryrefslogtreecommitdiffhomepage
path: root/include/grpc++/impl/call.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/grpc++/impl/call.h')
-rw-r--r--include/grpc++/impl/call.h14
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 {