17 #ifndef DEFAULTOPERATIONLONGPOLLCHANNEL_HPP_
18 #define DEFAULTOPERATIONLONGPOLLCHANNEL_HPP_
23 #include <boost/cstdint.hpp>
24 #include <boost/asio.hpp>
25 #include <boost/thread.hpp>
40 virtual const std::string&
getId()
const {
return CHANNEL_ID; }
60 static const std::string CHANNEL_ID;
61 static const std::map<TransportType, ChannelDirection> SUPPORTED_TYPES;
65 boost::asio::io_service io_;
66 boost::asio::io_service::work work_;
67 boost::thread pollThread_;
69 bool connectionInProgress_;
78 boost::condition_variable waitCondition_;
79 boost::mutex channelGuard_;
std::pair< Botan::MemoryVector< boost::uint8_t >, std::string > KeyPair
virtual const std::map< TransportType, ChannelDirection > & getSupportedTransportTypes() const
virtual void setDemultiplexer(IKaaDataDemultiplexer *demultiplexer)
virtual ~DefaultOperationLongPollChannel()
virtual const std::string & getId() const
virtual void setConnectivityChecker(ConnectivityCheckerPtr checker)
virtual void setServer(IServerInfoPtr server)
boost::shared_ptr< HttpLPServerInfo > OperationServerLongPollInfoPtr
boost::shared_ptr< IServerInfo > IServerInfoPtr
virtual ServerType getServerType() const
virtual ChannelType getChannelType() const
virtual void sync(TransportType type)
virtual void setMultiplexer(IKaaDataMultiplexer *multiplexer)
DefaultOperationLongPollChannel(IKaaChannelManager *channelManager, const KeyPair &clientKeys)
virtual void syncAck(TransportType type)
boost::shared_ptr< IConnectivityChecker > ConnectivityCheckerPtr