📄 warifserver.h
字号:
/** Interface class to the configuration information about a service (typically WARSVR).*/#ifndef WAR_IF_SERVER_H#define WAR_IF_SERVER_H/* SYSTEM INCLUDES *//* PROJECT INCLUDES */#ifndef WAR_WIN32_REGISTRY_H# include "WarWin32Registry.h"#endif#ifndef WAR_LOG_EVENT_HANDLER_H# include "WarLogEventHandler.h"#endif#ifndef WAR_PTR_WRAPPER_H# include WarPtrWrapper#endif#ifndef WAR_SMART_POINTER_H# include WarSmartPointer#endif#ifndef WAR_THREAD_H# include "WarThread.h"#endif/* LOCAL INCLUDES *//* FORWARD REFERENCES */class WarIfLogModule;class WarIfSite;class WarIfRoot;class WarIfOptions;class WarIfWebadm;typedef WarPtrWrapper<WarIfLogModule> war_if_log_module_ptr_t;typedef WarPtrWrapper<WarIfRoot> war_if_root_ptr_t;typedef WarPtrWrapper<WarIfSite> war_if_site_ptr_t;typedef std::list<war_if_site_ptr_t> war_if_site_list_t;typedef WarPtrWrapper<WarIfOptions> war_if_options_ptr_t;typedef WarPtrWrapper<WarIfWebadm> war_if_webadm_ptr_t;#ifdef __cplusplusextern "C" {#endif/****************** BEGIN OLD STYLE C spesific ********//****************** END OLD STYLE C spesific **********/#ifdef __cplusplus }#endif/****************** BEGIN C++ spesific ****************/#ifdef __cplusplusclass WarIfServer : public WarSmartPointer{public: typedef std::basic_string<war_sysch_t> namestr_t; typedef std::list<namestr_t> strlist_t; typedef WarCollector<war_sysch_t> passwdstr_t; // LIFECYCLE // OPERATORS // OPERATIONS /** Start the administrative interface. * This is typically a built-in HTTP server * used to manage the server. * * @returns true if the interface was started, false * if it was disabled. * @execpion if the interface failed to start. */ /** Start the enabled log-modules */ void StartLogModules() const throw (WarException); war_if_log_module_ptr_t GetLogModule(war_ccsysstr_t logName) const throw (WarException); war_if_site_ptr_t GetSite(war_ccsysstr_t siteName) const throw (WarException); war_if_options_ptr_t GetOptions() throw (WarException); void CreateDirectories() throw(WarException); void CwdToServerDir() throw(WarException); void LoadOptions() throw(WarException); void UninstallNtService() throw(WarException); void InstallNtService(bool doAutoStart, war_ccsysstr_t userName, war_ccsysstr_t userPasswd); void SetPriority(const WarPrioritiesDefE newPriority); // Windows NT service start/stop commands void StartService() throw (WarException); void PauseService() throw (WarException); void StopService() throw (WarException); // CALLBACK // ACCESS const WarWin32Registry& GetRegKey() const { return mRegKey; } // INQUIRY war_ccsysstr_t GetName() const; /** Enumerate the installed log modules * * @Param logModuleList A std::list of log-module * names. Under Windows the string type is * std::basic_string<TCHAR> * * @Param hideDisabled Set to true to ignore * log-modules that are disabled. */ void EnumLogModules(strlist_t& logModuleList, bool hideDisabled = false) const throw (WarException); /** Enumerate the installed sites * * @Param siteList A std::list of log-module * names. Under Windows the string type is * std::basic_string<TCHAR> * * @Param hideDisabled Set to true to ignore * sites that are disabled. */ void EnumSites(war_if_site_list_t& siteList, bool hideDisabled = false) throw (WarException); void GetNtServiceStatus(SERVICE_STATUS& currentStatus) throw(WarException); bool mIsNtService() const; bool mIsAutoStartNtService() const; namestr_t GetLoginName() const; passwdstr_t GetLoginPasswd() const; WarPrioritiesDefE GetPriority() const; protected: ~WarIfServer(); WarWin32Registry mRegKey; std::basic_string<war_sysch_t> mName; friend class WarIfRoot; WarIfServer(war_if_root_ptr_t& rootInterface);private: war_if_root_ptr_t mRootPtr;};/* INLINE METHODS *//* EXTERNAL REFERENCES */typedef WarPtrWrapper<WarIfServer> war_if_server_ptr_t;#endif /* __cplusplus *//****************** END C++ spesific ******************/#endif /* WAR_IF_SERVER_H_ */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -