grpc plugin: Create a "Dispatch" service and use streaming RPCs.
authorFlorian Forster <octo@collectd.org>
Fri, 29 Jul 2016 14:54:58 +0000 (16:54 +0200)
committerFlorian Forster <octo@collectd.org>
Tue, 2 Aug 2016 14:56:58 +0000 (16:56 +0200)
commitd26dd5c1db5c3310c9e69b2b910c6547469c99ce
treea461017fec63a80fe2c3567a95d3970ac0f94774
parent00b1f1de1f40059a26d75964408be3a13738c3d8
grpc plugin: Create a "Dispatch" service and use streaming RPCs.

This patch, unfortunately, does two things:
* It breaks out the DispatchValues() call into a separate service. The
  intention of this is to make it easier to implement only part of the
  API, namely to not implement querying of values, which may not be
  useful for stateless proxies.
* It turns the DispatchValues() call into a (client side) streaming RPC.
  That means that a client can send many ValueLists to the server in one
  streaming request, rather than many self-contained requests.

This code is heavily influenced by test code of the "protobuf-qml"
project, which is MIT licensed.
proto/collectd.proto
src/grpc.cc