19 #ifndef GRPCXX_IMPL_CODEGEN_RPC_SERVICE_METHOD_H
20 #define GRPCXX_IMPL_CODEGEN_RPC_SERVICE_METHOD_H
38 class StreamContextInterface;
61 :
RpcMethod(name, type), server_tag_(nullptr), handler_(handler) {}
72 std::unique_ptr<MethodHandler> handler_;
77 #endif // GRPCXX_IMPL_CODEGEN_RPC_SERVICE_METHOD_H
void SetHandler(MethodHandler *handler)
Definition: rpc_service_method.h:68
Base class for running an RPC handler.
Definition: rpc_service_method.h:41
ServerContext * server_context
Definition: rpc_service_method.h:48
RpcType
Definition: rpc_method.h:31
Definition: grpc_types.h:41
Call * call
Definition: rpc_service_method.h:47
Server side rpc method class.
Definition: rpc_service_method.h:56
MethodHandler * handler() const
if MethodHandler is nullptr, then this is an async method
Definition: rpc_service_method.h:66
virtual void RunHandler(const HandlerParameter ¶m)=0
Straightforward wrapping of the C call object.
Definition: call.h:647
void ResetHandler()
Definition: rpc_service_method.h:67
virtual ~MethodHandler()
Definition: rpc_service_method.h:43
A ServerContext allows the person implementing a service handler to:
Definition: server_context.h:95
Descriptor of an RPC method.
Definition: rpc_method.h:29
void * server_tag() const
Definition: rpc_service_method.h:64
Definition: rpc_service_method.h:44
const char * name() const
Definition: rpc_method.h:47
HandlerParameter(Call *c, ServerContext *context, grpc_byte_buffer *req)
Definition: rpc_service_method.h:45
void set_server_tag(void *tag)
Definition: rpc_service_method.h:63
grpc_byte_buffer * request
Definition: rpc_service_method.h:50
RpcServiceMethod(const char *name, RpcMethod::RpcType type, MethodHandler *handler)
Takes ownership of the handler.
Definition: rpc_service_method.h:59