|
|
|
@ -63,11 +63,13 @@ class CallOpBuffer final : public CompletionQueueTag { |
|
|
|
|
// Does not take ownership.
|
|
|
|
|
void AddSendInitialMetadata( |
|
|
|
|
std::multimap<grpc::string, grpc::string> *metadata); |
|
|
|
|
void AddSendInitialMetadata(ClientContext *ctx); |
|
|
|
|
void AddSendMessage(const google::protobuf::Message &message); |
|
|
|
|
void AddRecvMessage(google::protobuf::Message *message); |
|
|
|
|
void AddClientSendClose(); |
|
|
|
|
void AddClientRecvStatus(Status *status); |
|
|
|
|
void AddServerSendStatus(std::multimap<grpc::string, grpc::string> *metadata, const Status& status); |
|
|
|
|
void AddServerSendStatus(std::multimap<grpc::string, grpc::string> *metadata, |
|
|
|
|
const Status &status); |
|
|
|
|
|
|
|
|
|
// INTERNAL API:
|
|
|
|
|
|
|
|
|
@ -79,20 +81,21 @@ class CallOpBuffer final : public CompletionQueueTag { |
|
|
|
|
|
|
|
|
|
private: |
|
|
|
|
void *return_tag_ = nullptr; |
|
|
|
|
bool send_initial_metadata_ = false; |
|
|
|
|
size_t initial_metadata_count_ = 0; |
|
|
|
|
grpc_metadata* initial_metadata_ = nullptr; |
|
|
|
|
const google::protobuf::Message* send_message_ = nullptr; |
|
|
|
|
grpc_byte_buffer* send_message_buf_ = nullptr; |
|
|
|
|
google::protobuf::Message* recv_message_ = nullptr; |
|
|
|
|
grpc_byte_buffer* recv_message_buf_ = nullptr; |
|
|
|
|
grpc_metadata *initial_metadata_ = nullptr; |
|
|
|
|
const google::protobuf::Message *send_message_ = nullptr; |
|
|
|
|
grpc_byte_buffer *send_message_buf_ = nullptr; |
|
|
|
|
google::protobuf::Message *recv_message_ = nullptr; |
|
|
|
|
grpc_byte_buffer *recv_message_buf_ = nullptr; |
|
|
|
|
bool client_send_close_ = false; |
|
|
|
|
Status* recv_status_ = nullptr; |
|
|
|
|
Status *recv_status_ = nullptr; |
|
|
|
|
grpc_status_code status_code_ = GRPC_STATUS_OK; |
|
|
|
|
char* status_details_ = nullptr; |
|
|
|
|
char *status_details_ = nullptr; |
|
|
|
|
size_t status_details_capacity_ = 0; |
|
|
|
|
Status* send_status_ = nullptr; |
|
|
|
|
Status *send_status_ = nullptr; |
|
|
|
|
size_t trailing_metadata_count_ = 0; |
|
|
|
|
grpc_metadata* trailing_metadata_ = nullptr; |
|
|
|
|
grpc_metadata *trailing_metadata_ = nullptr; |
|
|
|
|
}; |
|
|
|
|
|
|
|
|
|
class CCallDeleter { |
|
|
|
|