ProducerRPCBackend
template<class ServiceType, typename RequestType, typename ResponseType>class ProducerRPCBackend : public RPCBackend<ServiceType, RequestType, ResponseType>, public IProducerBackendInterface<ResponseType>
Template Parameters
class ServiceType
typename RequestType
typename ResponseType
Dependencies: IProducerBackendInterface, ProducerRPCWorker, RPCBackend
Inherits from: public RPCBackend<ServiceType, RequestType, ResponseType>, public IProducerBackendInterface<ResponseType>
Public Interface
Constructor:
ProducerRPCBackend
inline ProducerRPCBackend(RPCBackend::AsyncRPCHandle TargetRPC, std::shared_ptr<ServiceType> Service, std::unique_ptr<ServerCompletionQueue> CQueue)
Parameters:
Name | Type | Default |
---|---|---|
TargetRPC | RPCBackend::AsyncRPCHandle | “ |
Service | std::shared_ptr<ServiceType> | “ |
CQueue | std::unique_ptr<ServerCompletionQueue> | “ |
Attributes: inline
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 132, column 1)
Destructor:
~ProducerRPCBackend
inline ~ProducerRPCBackend()
Attributes: inline
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 139, column 1)
Public Functions:
SendProtobufMessage
inline virtual void SendProtobufMessage(ResponseType *Response) override
Send a message to the client.
Parameters:
Msg
(ResponseType *
) – [in] The message to send to the client
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 146, column 6)
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: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 156, column 14)
Start
inline virtual void Start()
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 158, column 14)
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: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 163, column 14)
Shutdown
inline virtual void Shutdown() override
Close the external connection.
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 165, column 14)
Restart
inline virtual void Restart()
Reset the Communication backend.
Attributes: inline
, virtual
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 170, column 14)
Private Interface
Private Members:
int LocalID
int LocalID = = 0
Attributes: private
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 124, column 5)
int MsgID
int MsgID = = 0
Attributes: private
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 125, column 5)
ProducerRPCWorker<ServiceType, RequestType, ResponseType> * Worker
ProducerRPCWorker<ServiceType, RequestType, ResponseType> * Worker
Attributes: private
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 128, column 19)
Source: Schola/Source/Schola/Public/Communicator/ProducerRPCBackend.h
(line 121, column 1)