GRPC C++  1.66.0
Public Member Functions
grpc::ServerAsyncWriterInterface< W > Class Template Referenceabstract

#include <async_stream.h>

Public Member Functions

virtual void Finish (const grpc::Status &status, void *tag)=0
 Indicate that the stream is to be finished with a certain status code. More...
 
virtual void WriteAndFinish (const W &msg, grpc::WriteOptions options, const grpc::Status &status, void *tag)=0
 Request the writing of msg and coalesce it with trailing metadata which contains status, using WriteOptions options with identifying tag tag. More...
 
- Public Member Functions inherited from grpc::internal::ServerAsyncStreamingInterface
virtual ~ServerAsyncStreamingInterface ()
 
virtual void SendInitialMetadata (void *tag)=0
 Request notification of the sending of initial metadata to the client. More...
 
- Public Member Functions inherited from grpc::internal::AsyncWriterInterface< W >
virtual ~AsyncWriterInterface ()
 
virtual void Write (const W &msg, void *tag)=0
 Request the writing of msg with identifying tag tag. More...
 
virtual void Write (const W &msg, grpc::WriteOptions options, void *tag)=0
 Request the writing of msg using WriteOptions options with identifying tag tag. More...
 
void WriteLast (const W &msg, grpc::WriteOptions options, void *tag)
 Request the writing of msg and coalesce it with the writing of trailing metadata, using WriteOptions options with identifying tag tag. More...
 

Member Function Documentation

◆ Finish()

template<class W >
virtual void grpc::ServerAsyncWriterInterface< W >::Finish ( const grpc::Status status,
void *  tag 
)
pure virtual

Indicate that the stream is to be finished with a certain status code.

Request notification for when the server has sent the appropriate signals to the client to end the call. Should not be used concurrently with other operations.

It is appropriate to call this method when either:

  • all messages from the client have been received (either known implicitly, or explicitly because a previous AsyncReaderInterface::Read operation with a non-ok result (e.g., cq->Next(&read_tag, &ok) filled in 'ok' with 'false'.
  • it is desired to end the call early with some non-OK status code.

This operation will end when the server has finished sending out initial metadata (if not sent already), response message, and status, or if some failure occurred when trying to do so.

gRPC doesn't take ownership or a reference to status, so it is safe to to deallocate once Finish returns.

Parameters
[in]tagTag identifying this request.
[in]statusTo be sent to the client as the result of this call.

◆ WriteAndFinish()

template<class W >
virtual void grpc::ServerAsyncWriterInterface< W >::WriteAndFinish ( const W &  msg,
grpc::WriteOptions  options,
const grpc::Status status,
void *  tag 
)
pure virtual

Request the writing of msg and coalesce it with trailing metadata which contains status, using WriteOptions options with identifying tag tag.

WriteAndFinish is equivalent of performing WriteLast and Finish in a single step.

gRPC doesn't take ownership or a reference to msg and status, so it is safe to deallocate once WriteAndFinish returns.

Parameters
[in]msgThe message to be written.
[in]optionsThe WriteOptions to be used to write this message.
[in]statusThe Status that server returns to client.
[in]tagThe tag identifying the operation.

The documentation for this class was generated from the following file: