aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
diff options
context:
space:
mode:
authorGravatar Craig Tiller <craig.tiller@gmail.com>2015-04-10 17:11:51 -0700
committerGravatar Craig Tiller <ctiller@google.com>2015-04-16 09:29:17 -0700
commit62d2896665d7685c7f2d9b29a9b3b6d4bc72719b (patch)
treec565d3de12a54ef8b7223a9a29ce6f6314750a85 /src
parent53a38d4699451968ade05b539868b02edff7b0c9 (diff)
Add facility to register methods in C++
Diffstat (limited to 'src')
-rw-r--r--src/cpp/client/channel.cc4
-rw-r--r--src/cpp/client/channel.h1
2 files changed, 5 insertions, 0 deletions
diff --git a/src/cpp/client/channel.cc b/src/cpp/client/channel.cc
index 72123abbc8..5a39a3b801 100644
--- a/src/cpp/client/channel.cc
+++ b/src/cpp/client/channel.cc
@@ -82,4 +82,8 @@ void Channel::PerformOpsOnCall(CallOpBuffer* buf, Call* call) {
GRPC_TIMER_MARK(PERFORM_OPS_END, call->call());
}
+void *Channel::RegisterMethod(const char *method) {
+ return grpc_channel_register_call(c_channel_, method, target_.c_str());
+}
+
} // namespace grpc
diff --git a/src/cpp/client/channel.h b/src/cpp/client/channel.h
index 3980eba237..aaf4dbe10d 100644
--- a/src/cpp/client/channel.h
+++ b/src/cpp/client/channel.h
@@ -54,6 +54,7 @@ class Channel GRPC_FINAL : public ChannelInterface {
Channel(const grpc::string& target, grpc_channel* c_channel);
~Channel() GRPC_OVERRIDE;
+ virtual void *RegisterMethod(const char *method) GRPC_OVERRIDE;
virtual Call CreateCall(const RpcMethod& method, ClientContext* context,
CompletionQueue* cq) GRPC_OVERRIDE;
virtual void PerformOpsOnCall(CallOpBuffer* ops, Call* call) GRPC_OVERRIDE;