#ifndef SWIFTEN_IQRouter_H #define SWIFTEN_IQRouter_H #include #include #include "Swiften/Base/String.h" #include "Swiften/Elements/IQ.h" namespace Swift { class IQChannel; class IQHandler; class IQRouter { public: IQRouter(IQChannel* channel); void addHandler(IQHandler* handler); void removeHandler(IQHandler* handler); void sendIQ(boost::shared_ptr iq); String getNewIQID(); private: void handleIQ(boost::shared_ptr iq); private: IQChannel* channel_; std::vector handlers_; }; } #endif