X-Git-Url: https://git.m6w6.name/?a=blobdiff_plain;f=libtest%2Fserver.h;h=b50b0b2e6fe516a125b679a614e2e14eba9af19c;hb=70d0d339d06cbe6b35ef0efc4fd3d7e8f92b6a01;hp=01b2ce9a8a2c6c162b5c5f47daf61417ecf050a7;hpb=ee71b673a9ce3261cd81723262a8516949388be9;p=awesomized%2Flibmemcached diff --git a/libtest/server.h b/libtest/server.h index 01b2ce9a..b50b0b2e 100644 --- a/libtest/server.h +++ b/libtest/server.h @@ -36,6 +36,7 @@ struct Server { private: bool _is_socket; std::string _socket; + std::string _sasl; std::string _pid_file; std::string _log_file; std::string _base_command; // executable command which include libtool, valgrind, gdb, etc @@ -123,6 +124,11 @@ public: return (_port != 0); } + virtual bool has_syslog() const + { + return false; + } + // Reset a server if another process has killed the server void reset() { @@ -147,6 +153,8 @@ public: return (_pid > 1); } + bool wait_for_pidfile() const; + bool check_pid(pid_t pid_arg) const { return (pid_arg > 1); @@ -169,14 +177,13 @@ public: bool command(std::string& command_arg); protected: - void nap(); + bool set_pid_file(); private: bool is_helgrind() const; bool is_valgrind() const; bool is_debug() const; bool set_log_file(); - bool set_pid_file(); bool set_socket_file(); void rebuild_base_command(); void reset_pid(); @@ -184,55 +191,6 @@ private: std::ostream& operator<<(std::ostream& output, const libtest::Server &arg); -class server_startup_st -{ -private: - std::string server_list; - bool _socket; - -public: - - uint8_t udp; - std::vector servers; - - server_startup_st() : - _socket(false), - udp(0) - { } - - bool start_socket_server(const std::string& server_type, const in_port_t try_port, int argc, const char *argv[]); - - std::string option_string() const; - - size_t count() const - { - return servers.size(); - } - - bool is_debug() const; - bool is_helgrind() const; - bool is_valgrind() const; - - bool socket() - { - return _socket; - } - - void set_socket() - { - _socket= true; - } - - - void shutdown(bool remove= false); - void push_server(Server *); - Server *pop_server(); - - ~server_startup_st(); -}; - -bool server_startup(server_startup_st&, const std::string&, in_port_t try_port, int argc, const char *argv[]); - } // namespace libtest