30 #ifndef PT_REMOTING_SERVICEPROCEDURE_H
31 #define PT_REMOTING_SERVICEPROCEDURE_H
33 #include <Pt/Remoting/Api.h>
34 #include <Pt/Remoting/Responder.h>
35 #include <Pt/System/EventLoop.h>
36 #include <Pt/Decomposer.h>
37 #include <Pt/Composer.h>
56 { _responder->setReady(); }
60 {
return onBeginArgs(); }
64 { onBeginCall(loop); }
68 {
return onEndCall(); }
72 {
return onEndCall(); }
82 virtual Composer** onBeginArgs() = 0;
95 class ServiceProcedureDef
98 virtual ~ServiceProcedureDef()
101 ServiceProcedure* createProcedure(Responder& r)
const
102 {
return this->onCreateProcedure(r); }
105 ServiceProcedureDef()
108 virtual ServiceProcedure* onCreateProcedure(Responder& r)
const = 0;
115 #include <Pt/Remoting/BasicProcedure.h>
116 #include <Pt/Remoting/ActiveProcedure.h>
118 #endif // PT_REMOTING_SERVICEPROCEDURE_H
Core module.
Definition: Allocator.h:33
Manages the decomposition of types during serialization.
Definition: Decomposer.h:44
virtual ~ServiceProcedure()
Destructor.
Definition: ServiceProcedure.h:50
ServiceProcedure(Responder &r)
Constructor.
Definition: ServiceProcedure.h:77
Dispatches requests to a service procedure.
Definition: Responder.h:50
Service procedure.
Definition: ServiceProcedure.h:46
Thread-safe event loop supporting I/O multiplexing and Timers.
Definition: EventLoop.h:83
Composes types during serialization.
Definition: Composer.h:43
void setReady()
Indicates that the procedure has finished.
Definition: ServiceProcedure.h:55