#ifndef JSONRPCCLIENT_H #define JSONRPCCLIENT_H namespace icinga { struct I2_JSONRPC_API NewMessageEventArgs : public EventArgs { typedef shared_ptr Ptr; typedef weak_ptr WeakPtr; icinga::Message Message; }; class I2_JSONRPC_API JsonRpcClient : public TCPClient { private: int DataAvailableHandler(const EventArgs& ea); public: typedef shared_ptr Ptr; typedef weak_ptr WeakPtr; void SendMessage(const Message& message); virtual void Start(void); Event OnNewMessage; }; } #endif /* JSONRPCCLIENT_H */