#ifndef I2_CONNECTIONMANAGER_H #define I2_CONNECTIONMANAGER_H namespace icinga { using std::map; class ConnectionManager : public Object { list m_Servers; list m_Clients; map< string, event > m_Methods; int NewClientHandler(NewClientEventArgs::RefType ncea); int CloseClientHandler(EventArgs::RefType ea); int NewMessageHandler(NewMessageEventArgs::RefType nmea); public: typedef shared_ptr RefType; typedef weak_ptr WeakRefType; void BindServer(JsonRpcServer::RefType server); void UnbindServer(JsonRpcServer::RefType server); void BindClient(JsonRpcClient::RefType client); void UnbindClient(JsonRpcClient::RefType client); void RegisterMethod(string method, function function); void UnregisterMethod(string method, function function); }; } #endif /* I2_CONNECTIONMANAGER_H */