#ifndef RPC_RPCCONTROLLER_H #define RPC_RPCCONTROLLER_H #include namespace Egametang { class RpcController: public google::protobuf::RpcController { private: bool failed; std::string reason; bool canceled; public: RpcController(); virtual ~RpcController(); // client virtual void Reset(); virtual bool Failed() const; virtual std::string ErrorText() const; virtual void StartCancel(); // server virtual void SetFailed(const std::string& reason); virtual bool IsCanceled() const; virtual void NotifyOnCancel(google::protobuf::Closure* callback); }; } // namespace Egametang #endif // RPC_RPCCONTROLLER_H