aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorGravatar Yang Gao <yangg@google.com>2015-02-11 13:59:25 -0800
committerGravatar Yang Gao <yangg@google.com>2015-02-11 13:59:25 -0800
commit23822932262c5a3eb9404be59d5512fe4c88f18d (patch)
tree26a806350f5f88c8900a5bf85c5767eb9225a735
parent1464bc175d4f2beaad9eb93ccbd859268755678e (diff)
Make it compile
-rw-r--r--include/grpc++/impl/call.h3
-rw-r--r--include/grpc++/stream.h12
-rw-r--r--src/cpp/client/client_unary_call.cc2
-rw-r--r--src/cpp/common/call.cc9
4 files changed, 14 insertions, 12 deletions
diff --git a/include/grpc++/impl/call.h b/include/grpc++/impl/call.h
index 8fed305ac6..5922e2581a 100644
--- a/include/grpc++/impl/call.h
+++ b/include/grpc++/impl/call.h
@@ -85,6 +85,7 @@ class CallOpBuffer final : public CompletionQueueTag {
private:
void *return_tag_ = nullptr;
// Send initial metadata
+ bool send_initial_metadata_ = false;
size_t initial_metadata_count_ = 0;
grpc_metadata* initial_metadata_ = nullptr;
// Recv initial metadta
@@ -106,7 +107,7 @@ class CallOpBuffer final : public CompletionQueueTag {
char *status_details_ = nullptr;
size_t status_details_capacity_ = 0;
// Server send status
- Status* send_status_ = nullptr;
+ const Status* send_status_ = nullptr;
size_t trailing_metadata_count_ = 0;
grpc_metadata *trailing_metadata_ = nullptr;
};
diff --git a/include/grpc++/stream.h b/include/grpc++/stream.h
index 57ca86ad70..85a7261fb9 100644
--- a/include/grpc++/stream.h
+++ b/include/grpc++/stream.h
@@ -105,7 +105,7 @@ class ClientReader final : public ClientStreamingInterface,
virtual Status Finish() override {
CallOpBuffer buf;
Status status;
- buf.AddClientRecvStatus(&status);
+ buf.AddClientRecvStatus(nullptr, &status); // TODO metadata
call_.PerformOps(&buf);
GPR_ASSERT(cq_.Pluck(&buf));
return status;
@@ -146,7 +146,7 @@ class ClientWriter final : public ClientStreamingInterface,
CallOpBuffer buf;
Status status;
buf.AddRecvMessage(response_);
- buf.AddClientRecvStatus(&status);
+ buf.AddClientRecvStatus(nullptr, &status); // TODO metadata
call_.PerformOps(&buf);
GPR_ASSERT(cq_.Pluck(&buf));
return status;
@@ -193,7 +193,7 @@ class ClientReaderWriter final : public ClientStreamingInterface,
virtual Status Finish() override {
CallOpBuffer buf;
Status status;
- buf.AddClientRecvStatus(&status);
+ buf.AddClientRecvStatus(nullptr, &status); // TODO metadata
call_.PerformOps(&buf);
GPR_ASSERT(cq_.Pluck(&buf));
return status;
@@ -312,7 +312,7 @@ class ClientAsyncReader final : public ClientAsyncStreamingInterface,
virtual void Finish(Status* status, void* tag) override {
finish_buf_.Reset(tag);
- finish_buf_.AddClientRecvStatus(status);
+ finish_buf_.AddClientRecvStatus(nullptr, status); // TODO metadata
call_.PerformOps(&finish_buf_);
}
@@ -350,7 +350,7 @@ class ClientAsyncWriter final : public ClientAsyncStreamingInterface,
virtual void Finish(Status* status, void* tag) override {
finish_buf_.Reset(tag);
finish_buf_.AddRecvMessage(response_);
- finish_buf_.AddClientRecvStatus(status);
+ finish_buf_.AddClientRecvStatus(nullptr, status); // TODO metadata
call_.PerformOps(&finish_buf_);
}
@@ -393,7 +393,7 @@ class ClientAsyncReaderWriter final : public ClientAsyncStreamingInterface,
virtual void Finish(Status* status, void* tag) override {
finish_buf_.Reset(tag);
- finish_buf_.AddClientRecvStatus(status);
+ finish_buf_.AddClientRecvStatus(nullptr, status); // TODO metadata
call_.PerformOps(&finish_buf_);
}
diff --git a/src/cpp/client/client_unary_call.cc b/src/cpp/client/client_unary_call.cc
index 73be3cff8c..6825398612 100644
--- a/src/cpp/client/client_unary_call.cc
+++ b/src/cpp/client/client_unary_call.cc
@@ -52,7 +52,7 @@ Status BlockingUnaryCall(ChannelInterface *channel, const RpcMethod &method,
buf.AddSendMessage(request);
buf.AddRecvMessage(result);
buf.AddClientSendClose();
- buf.AddClientRecvStatus(&status);
+ buf.AddClientRecvStatus(nullptr, &status); // TODO metadata
call.PerformOps(&buf);
cq.Pluck(&buf);
return status;
diff --git a/src/cpp/common/call.cc b/src/cpp/common/call.cc
index 607958df89..765baa06ca 100644
--- a/src/cpp/common/call.cc
+++ b/src/cpp/common/call.cc
@@ -43,6 +43,7 @@ namespace grpc {
void CallOpBuffer::Reset(void* next_return_tag) {
return_tag_ = next_return_tag;
+ send_initial_metadata_ = false;
initial_metadata_count_ = 0;
gpr_free(initial_metadata_);
@@ -106,7 +107,7 @@ void FillMetadataMap(grpc_metadata_array* arr,
arr->metadata[i].key, {arr->metadata[i].value, arr->metadata[i].value_length}));
}
grpc_metadata_array_destroy(arr);
- grpc_metadata_array_init(&recv_trailing_metadata_arr_);
+ grpc_metadata_array_init(arr);
}
} // namespace
@@ -114,7 +115,7 @@ void CallOpBuffer::AddSendInitialMetadata(
std::multimap<grpc::string, grpc::string>* metadata) {
send_initial_metadata_ = true;
initial_metadata_count_ = metadata->size();
- initial_metadata_ = FillMetadata(metadata);
+ initial_metadata_ = FillMetadataArray(metadata);
}
void CallOpBuffer::AddSendInitialMetadata(ClientContext *ctx) {
@@ -142,7 +143,7 @@ void CallOpBuffer::AddClientRecvStatus(
void CallOpBuffer::AddServerSendStatus(
std::multimap<grpc::string, grpc::string>* metadata, const Status& status) {
trailing_metadata_count_ = metadata->size();
- trailing_metadata_ = FillMetadata(metadata);
+ trailing_metadata_ = FillMetadataArray(metadata);
send_status_ = &status;
}
@@ -219,7 +220,7 @@ void CallOpBuffer::FinalizeResult(void **tag, bool *status) {
*tag = return_tag_;
// Process received initial metadata
if (recv_initial_metadata_) {
- FillMetadataMap(&recv_initial_metadata_, recv_initial_metadata_);
+ FillMetadataMap(&recv_initial_metadata_arr_, recv_initial_metadata_);
}
// Parse received message if any.
if (recv_message_ && recv_message_buf_) {