Template Class TExchangeRPCBackend
Template Class TExchangeRPCBackend
- Defined in File ExchangeRPCBackend.h
Inheritance Relationships
Base Types
-
public TRPCBackend< ServiceType, RequestType, ResponseType >(Template Class TRPCBackend) -
public IExchangeBackend< RequestType, ResponseType >(Template Class IExchangeBackend)
template <class ServiceType, typename RequestType, typename ResponseType>class TExchangeRPCBackend : public TRPCBackend<ServiceType, RequestType, ResponseType>, public IExchangeBackend<RequestType, ResponseType>Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Dependencies: CallData, ExchangeRPCWorker, TExchangeCallData, TRPCBackend
Public Functions
| Symbol | Details |
|---|---|
TExchangeRPCBackend | — |
~TExchangeRPCBackend | — |
Receive | Initiate an Exchange with the Client. |
Respond | Respond to a message from the client. |
Initialize | Perform any setup that happens prior to establishing any external connection. |
Start | — |
Establish | Perform any setup that involves handshakes with the external communication (e.g. |
Shutdown | Close the external connection. |
Restart | Reset the Communication backend. |
Reset | Reset the backend to clear any stale exchange state from previous connections. |
TExchangeRPCBackend
inline TExchangeRPCBackend(gRPCBackend::AsyncRPCHandle TargetRPC, std::shared_ptr<ServiceType> Service, std::unique_ptr<ServerCompletionQueue> CQueue)| # | Direction | Name | Type | Description |
|---|---|---|---|---|
| 1 | — | TargetRPC | gRPCBackend::AsyncRPCHandle | — |
| 2 | — | Service | std::shared_ptr< ServiceType > | — |
| 3 | — | CQueue | std::unique_ptr< ServerCompletionQueue > | — |
Attributes: inline
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
~TExchangeRPCBackend
inline ~TExchangeRPCBackend()Attributes: inline
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Receive
inline virtual TFuture<const RequestType *> Receive() overrideInitiate an Exchange with the Client.
Returns:
A future that will be fulfilled with the result of the exchange. The value ptr from the future is valid until the next time exchange is called.
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Respond
inline virtual void Respond(ResponseType *Response) overrideRespond to a message from the client.
Parameters
Response – [in] The message to send to the client
| # | Direction | Name | Type | Description |
|---|---|---|---|---|
| 1 | — | Response | ResponseType * | The message to send to the client |
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Initialize
inline virtual void Initialize()Perform any setup that happens prior to establishing any external connection.
this could include opening a socket and waiting for a connection.
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Start
inline virtual void Start()Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Establish
inline virtual void Establish()Perform any setup that involves handshakes with the external communication (e.g.
setting up serialization). Use after Initialize.
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Shutdown
inline virtual void Shutdown() overrideClose the external connection.
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Restart
inline virtual void Restart()Reset the Communication backend.
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h
Reset
inline virtual void Reset() overrideReset the backend to clear any stale exchange state from previous connections.
Attributes: inline, virtual
Source: Source/Schola/Protobuf/Public/ProtobufBackends/gRPC/ExchangeRPCBackend.h