📄 warclientsessiondata.h
字号:
/** */#ifndef WAR_CLIENT_SESSION_DATA_H#define WAR_CLIENT_SESSION_DATA_H/* SYSTEM INCLUDES *//* PROJECT INCLUDES */#ifndef WAR_NET_ADDRESS_H# include "WarNetAddress.h"#endif#ifndef WAR_TIME_H# include "WarTime.h"#endif/* LOCAL INCLUDES *//* FORWARD REFERENCES */#ifdef __cplusplusextern "C" {#endif/****************** BEGIN OLD STYLE C spesific ********//****************** END OLD STYLE C spesific **********/#ifdef __cplusplus }#endif/****************** BEGIN C++ spesific ****************/#ifdef __cplusplusclass WarClientSessionData {public: // LIFECYCLE /** * Default constructor. */ WarClientSessionData(const std::string& siteName, const std::string& userName, const WarNetAddress& fromHost, const war_uint64_t& fromSocketSeqId, const war_uint64_t seqNumber); /** * Destructor. */ virtual ~WarClientSessionData(); // OPERATORS WarClientSessionData& operator = (const WarClientSessionData& from); bool operator == (const WarClientSessionData& from) { return (mName == from.mName) && (mSite == from.mSite); } bool operator < (const WarClientSessionData& from) { int cmp_val = strcmp(mSite.c_str(), from.mSite.c_str()); if (0 > cmp_val) return true; if (0 < cmp_val) return false; return mName < from.mName; } // OPERATIONS // CALLBACK // ACCESS // INQUIRY war_uint64_t GetSeqNumber() const { return mSeqNumber; } war_uint64_t GetSocketSeqNumber() const { return mSocketSeqNumber; } const WarNetAddress& GetRemoteAddress() const { return mRemoteHost; } const std::string& GetNativeSiteName() const { return mSite; } const std::string& GetLoginName() const { return mName; } const WarTime& GetLoginTime() const { return mLoginTime; } std::string Explain() const;protected: WarClientSessionData(const std::string& siteName, const std::string& userName, const WarNetAddress& fromHost, const war_uint64_t& fromSocketSeqId); std::string mName; std::string mSite; WarNetAddress mRemoteHost; war_uint64_t mSocketSeqNumber; WarTime mLoginTime;private: static war_uint64_t sSeqCounter; war_uint64_t mSeqNumber; };/* INLINE METHODS *//* EXTERNAL REFERENCES */template <class charT>WarCollector<charT>& operator << (WarCollector<charT>& o, const WarClientSessionData& v){ return o << v.Explain();}#endif /* __cplusplus *//****************** END C++ spesific ******************/#endif /* WAR_CLIENT_SESSION_DATA_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -