19 #ifndef INCLUDE_RCF_SESSIONTIMEOUTSERVICE_HPP
20 #define INCLUDE_RCF_SESSIONTIMEOUTSERVICE_HPP
24 #include <RCF/Export.hpp>
25 #include <RCF/PeriodicTimer.hpp>
26 #include <RCF/Service.hpp>
27 #include <RCF/Timer.hpp>
32 typedef boost::shared_ptr<NetworkSession> NetworkSessionPtr;
33 typedef boost::weak_ptr<NetworkSession> NetworkSessionWeakPtr;
35 class RCF_EXPORT SessionTimeoutService :
public I_Service
38 SessionTimeoutService();
42 void onServerStart(RcfServer & server);
43 void onServerStop(RcfServer & server);
49 std::vector<NetworkSessionWeakPtr> mSessionsTemp;
51 boost::uint32_t mSessionTimeoutMs;
52 boost::uint32_t mReapingIntervalMs;
53 RcfServer * mpRcfServer;
54 PeriodicTimer mPeriodicTimer;
57 typedef boost::shared_ptr<SessionTimeoutService> SessionTimeoutServicePtr;
61 #endif // ! INCLUDE_RCF_SESSIONTIMEOUTSERVICE_HPP