11 #ifndef __SANDESH_SERVER_H__
12 #define __SANDESH_SERVER_H__
14 #include <boost/asio.hpp>
15 #include <boost/asio/ip/tcp.hpp>
16 #include <boost/ptr_container/ptr_map.hpp>
17 #include <boost/scoped_ptr.hpp>
18 #include <boost/dynamic_bitset.hpp>
20 #include <sandesh/sandesh.h>
36 virtual bool Initialize(
short port,
const std::string &ip=
"0.0.0.0");
51 bool rsc) {
return true; }
78 typedef boost::ptr_map<boost::asio::ip::tcp::endpoint,
80 typedef boost::ptr_container_detail::ref_pair<
81 boost::asio::ip::basic_endpoint<boost::asio::ip::tcp>,
98 #endif // __SANDESH_SERVER_H__
DISALLOW_COPY_AND_ASSIGN(SandeshServer)
void RemoveConnection(SandeshConnection *connection)
static bool task_policy_set_
boost::scoped_ptr< LifetimeManager > lifetime_manager_
virtual TcpSession * CreateSession()
SandeshServer(EventManager *evm, const SandeshConfig &config)
SandeshConnectionMap connection_
int session_reader_task_id_
virtual bool DisableSandeshLogMessages() const
virtual bool ReceiveSandeshCtrlMsg(SandeshStateMachine *state_machine, SandeshSession *session, const Sandesh *sandesh)
int AllocConnectionIndex()
virtual void DisconnectSession(SandeshSession *session)
static const std::string kSessionReaderTask
virtual SslSession * AllocSession(SslSocket *socket)
static const int kMaxInitRetries
boost::dynamic_bitset conn_bmap_
virtual bool AcceptSession(TcpSession *session)
virtual bool ReceiveSandeshMsg(SandeshSession *session, const SandeshMessage *msg, bool resource)=0
virtual bool ReceiveResourceUpdate(SandeshSession *session, bool rsc)
boost::asio::ssl::stream< boost::asio::ip::tcp::socket > SslSocket
boost::scoped_ptr< DeleteActor > deleter_
SandeshConnection * FindConnection(const Endpoint &peer_addr)
boost::ptr_container_detail::ref_pair< boost::asio::ip::basic_endpoint< boost::asio::ip::tcp >, SandeshConnection *const > SandeshConnectionPair
int session_writer_task_id() const
LifetimeActor * deleter()
int lifetime_mgr_task_id()
boost::ptr_map< boost::asio::ip::tcp::endpoint, SandeshConnection > SandeshConnectionMap
static const std::string kLifetimeMgrTask
size_t ConnectionsCount()
int lifetime_mgr_task_id_
virtual bool Initialize(short port, const std::string &ip="0.0.0.0")
bool Compare(const Endpoint &peer_addr, const SandeshConnectionPair &) const
LifetimeManager * lifetime_manager()
virtual void SessionShutdown()
boost::asio::ip::tcp::endpoint Endpoint
void FreeConnectionIndex(int)
int session_reader_task_id() const
static const std::string kStateMachineTask