📄 warsvrprotocolftpreply.h
字号:
/** */#ifndef WAR_SVR_PROTOCOL_FTP_REPLY_H#define WAR_SVR_PROTOCOL_FTP_REPLY_H/* SYSTEM INCLUDES */#ifndef WAR_STACK_INCLUDED# define WAR_STACK_INCLUDED# include <stack>#endif/* PROJECT INCLUDES */#ifndef WAR_TYPES_H# include "WarTypes.h"#endif#ifndef WAR_SVR_PROTOCOL_FTP_ENUMS_H# include "WarSvrProtocolFtpEnums.h"#endif#ifndef WAR_EXCEPTION_H# include "WarException.h"#endif#ifndef WAR_COLLECTOR_H# include "WarCollector.h"#endif#ifndef WAR_TEXT_MACRO_H# include "WarTextMacro.h"#endif#ifndef WAR_SVR_PATH_H# include "WarSvrPath.h"#endif#ifndef WAR_SVR_PROTOCOL_FTP_MSGS_H# include "WarSvrProtocolFtpMsgs.h"#endif/* LOCAL INCLUDES *//* FORWARD REFERENCES */class WarSvrProtocolFtp;#ifdef __cplusplusextern "C" {#endif/****************** BEGIN OLD STYLE C spesific ********//****************** END OLD STYLE C spesific **********/#ifdef __cplusplus }#endif/****************** BEGIN C++ spesific ****************/#ifdef __cplusplusclass WarSvrProtocolFtpReply : public WarSvrProtocolFtpEnums, public WarTextMacroEnums{public: typedef std::stack<ExpandModesE> modestack_t; // LIFECYCLE WarSvrProtocolFtpReply(); virtual ~WarSvrProtocolFtpReply() {}; // OPERATORS // OPERATIONS /** Installs a macro. * * @param macrp_ptr New macro * @param doReplace replaces the existing macro if it already exist. */ void InstallMacro(war_macro_ptr_t& macro_ptr, bool doReplace = true); // ACCESS // INQUIRY protected: WarFTPDReplyCodesE mReplyCode; WarSvrProtocolFtpMsgs mServerReplyMessages; WarError mErrorStatus; friend class WarSvrProtocolFtp; friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, war_ccstr_t from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const std::string& from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const char& from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const int& from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const war_flen_t& from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const WarFTPDReplyCodesE from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const FtpSvrMsgsE from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const war_svrpath_t& from); friend WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const WarError& from); void Expand(ExpandModesE expandMode, war_ccstr_t textString) throw(WarException); void ExpandMacro(ExpandModesE expandMode, war_ccstr_t macroName); void Flush(); void PreProcessOutput(); void AssignToServer(WarSvrProtocolFtp *pServer); WarSvrProtocolFtp& GetServer() { assert(mpServer != NULL); return *mpServer; }private: war_macro_set_t mMacros; WarSvrProtocolFtp *mpServer; std::string mOutBuf; modestack_t mModeStack;};/* INLINE METHODS *//* EXTERNAL REFERENCES */WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, war_ccstr_t from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const std::string& from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const war_svrpath_t& from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const char& from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const int& from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const war_flen_t& from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const WarSvrProtocolFtpReply::WarFTPDReplyCodesE from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const WarSvrProtocolFtpReply::FtpSvrMsgsE from);WarSvrProtocolFtpReply& operator << (WarSvrProtocolFtpReply& R, const WarError& from);#endif /* __cplusplus *//****************** END C++ spesific ******************/#endif /* WAR_SVR_PROTOCOL_FTP_REPLY_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -