userver: ugrpc::server::StreamingResult< Response > Class Template Reference
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages Concepts
ugrpc::server::StreamingResult< Response > Class Template Referencefinal

#include <userver/ugrpc/server/result.hpp>

Detailed Description

template<typename Response>
class ugrpc::server::StreamingResult< Response >

Special result type for server-streaming service handlers.

Provides a way to return one of:

  1. grpc::Status::OK;
  2. error grpc::Status;
  3. last response + grpc::Status::OK, sent in a single batch.

For non-server-streaming RPCs, see ugrpc::server::Result.

Definition at line 84 of file result.hpp.

Public Member Functions

 StreamingResult (grpc::Status &&status)
 Construct from grpc::Status (which can be OK or an error status).
 
 StreamingResult (const grpc::Status &status)
 Construct from grpc::Status (which can be OK or an error status).
 
 StreamingResult (Response &&last_response)
 Construct from last response. Allows to send last response and OK status coalesced in a single batch.
 
bool IsSuccess () const
 
grpc::Status && ExtractStatus ()
 
const grpc::Status & GetStatus () const
 
bool HasLastResponse () const
 
Response && ExtractLastResponse ()
 
const Response & GetLastResponse () const
 

Constructor & Destructor Documentation

◆ StreamingResult() [1/3]

template<typename Response>
ugrpc::server::StreamingResult< Response >::StreamingResult ( grpc::Status && status)
inline

Construct from grpc::Status (which can be OK or an error status).

Definition at line 87 of file result.hpp.

◆ StreamingResult() [2/3]

template<typename Response>
ugrpc::server::StreamingResult< Response >::StreamingResult ( const grpc::Status & status)
inline

Construct from grpc::Status (which can be OK or an error status).

Definition at line 90 of file result.hpp.

◆ StreamingResult() [3/3]

template<typename Response>
ugrpc::server::StreamingResult< Response >::StreamingResult ( Response && last_response)
inline

Construct from last response. Allows to send last response and OK status coalesced in a single batch.

Definition at line 93 of file result.hpp.

Member Function Documentation

◆ ExtractLastResponse()

template<typename Response>
Response && ugrpc::server::StreamingResult< Response >::ExtractLastResponse ( )
inline
Returns
the contained last response.
Precondition
HasLastResponse() == true.

Definition at line 109 of file result.hpp.

◆ ExtractStatus()

template<typename Response>
grpc::Status && ugrpc::server::StreamingResult< Response >::ExtractStatus ( )
inline
Returns
the contained status, which can be OK or an error status.

Definition at line 99 of file result.hpp.

◆ GetLastResponse()

template<typename Response>
const Response & ugrpc::server::StreamingResult< Response >::GetLastResponse ( ) const
inline
Returns
the contained last response.
Precondition
HasLastResponse() == true.

Definition at line 116 of file result.hpp.

◆ GetStatus()

template<typename Response>
const grpc::Status & ugrpc::server::StreamingResult< Response >::GetStatus ( ) const
inline
Returns
the contained status, which can be OK or an error status.

Definition at line 102 of file result.hpp.

◆ HasLastResponse()

template<typename Response>
bool ugrpc::server::StreamingResult< Response >::HasLastResponse ( ) const
inline
Returns
true iff the StreamingResult contains last response, which implies OK status.

Definition at line 105 of file result.hpp.

◆ IsSuccess()

template<typename Response>
bool ugrpc::server::StreamingResult< Response >::IsSuccess ( ) const
inline
Returns
true iff the StreamingResult contains OK status, possibly with a last response.

Definition at line 96 of file result.hpp.


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