GRPC C++
1.66.0
|
A class to represent a flow-controlled unary call. More...
#include <sync_stream.h>
Public Member Functions | |
void | SendInitialMetadata () override |
Block to send initial metadata to client. More... | |
bool | NextMessageSize (uint32_t *sz) override |
Get an upper bound on the request message size from the client. More... | |
bool | Read (RequestType *request) override |
Read a message of type R into msg. More... | |
bool | Write (const ResponseType &response, grpc::WriteOptions options) override |
Block to write msg to the stream with WriteOptions options. More... | |
Public Member Functions inherited from grpc::internal::ServerStreamingInterface | |
virtual | ~ServerStreamingInterface () |
Public Member Functions inherited from grpc::internal::WriterInterface< ResponseType > | |
virtual | ~WriterInterface () |
bool | Write (const ResponseType &msg) |
Block to write msg to the stream with default write options. More... | |
void | WriteLast (const ResponseType &msg, grpc::WriteOptions options) |
Write msg and coalesce it with the writing of trailing metadata, using WriteOptions options. More... | |
Public Member Functions inherited from grpc::internal::ReaderInterface< RequestType > | |
virtual | ~ReaderInterface () |
Friends | |
class | internal::TemplatedBidiStreamingHandler< ServerUnaryStreamer< RequestType, ResponseType >, true > |
A class to represent a flow-controlled unary call.
This is something of a hybrid between conventional unary and streaming. This is invoked through a unary call on the client side, but the server responds to it as though it were a single-ping-pong streaming call. The server can use the NextMessageSize method to determine an upper-bound on the size of the message. A key difference relative to streaming: ServerUnaryStreamer must have exactly 1 Read and exactly 1 Write, in that order, to function correctly. Otherwise, the RPC is in error.
|
inlineoverridevirtual |
Get an upper bound on the request message size from the client.
Implements grpc::internal::ReaderInterface< RequestType >.
|
inlineoverridevirtual |
Read a message of type R into msg.
Completion will be notified by tag on the associated completion queue. This is thread-safe with respect to Write or WritesDone methods. It should not be called concurrently with other streaming APIs on the same stream. It is not meaningful to call it concurrently with another ReaderInterface::Read on the same stream since reads on the same stream are delivered in order.
[out] | msg | Where to eventually store the read message. |
[in] | tag | The tag identifying the operation. |
Implements grpc::internal::ReaderInterface< RequestType >.
|
inlineoverridevirtual |
Block to send initial metadata to client.
Implicit input parameter:
Implements grpc::internal::ServerStreamingInterface.
|
inlineoverridevirtual |
Block to write msg to the stream with WriteOptions options.
This is thread-safe with respect to ReaderInterface::Read
msg | The message to be written to the stream. |
options | The WriteOptions affecting the write operation. |
Implements grpc::internal::WriterInterface< ResponseType >.
|
friend |