#include <sync_stream.h>
Public Member Functions | |
bool | NextMessageSize (uint32_t *sz) override |
Get an upper bound on the request message size from the client. More... | |
bool | Read (RequestType *request) override |
void | SendInitialMetadata () override |
bool | Write (const ResponseType &response, grpc::WriteOptions options) override |
![]() | |
virtual | ~ServerStreamingInterface () |
![]() | |
bool | Write (const ResponseType &msg) |
void | WriteLast (const ResponseType &msg, grpc::WriteOptions options) |
virtual | ~WriterInterface () |
![]() | |
virtual | ~ReaderInterface () |
Private Member Functions | |
ServerUnaryStreamer (grpc::internal::Call *call, grpc::ServerContext *ctx) | |
Private Attributes | |
internal::ServerReaderWriterBody< ResponseType, RequestType > | body_ |
bool | read_done_ |
bool | write_done_ |
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.
Definition at line 827 of file grpcpp/impl/codegen/sync_stream.h.
|
inlineprivate |
Definition at line 883 of file grpcpp/impl/codegen/sync_stream.h.
|
inlineoverridevirtual |
Get an upper bound on the request message size from the client.
Implements grpc::internal::ReaderInterface< RequestType >.
Definition at line 837 of file grpcpp/impl/codegen/sync_stream.h.
|
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 >.
Definition at line 851 of file grpcpp/impl/codegen/sync_stream.h.
|
inlineoverridevirtual |
Block to send initial metadata to client. Implicit input parameter:
Implements grpc::internal::ServerStreamingInterface.
Definition at line 834 of file grpcpp/impl/codegen/sync_stream.h.
|
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 >.
Definition at line 867 of file grpcpp/impl/codegen/sync_stream.h.
|
friend |
Definition at line 882 of file grpcpp/impl/codegen/sync_stream.h.
|
private |
Definition at line 877 of file grpcpp/impl/codegen/sync_stream.h.
|
private |
Definition at line 878 of file grpcpp/impl/codegen/sync_stream.h.
|
private |
Definition at line 879 of file grpcpp/impl/codegen/sync_stream.h.