*/
+#include <config.h>
#include <libtest/common.h>
#include <libtest/gearmand.h>
private:
public:
Gearmand(const std::string& host_arg, in_port_t port_arg) :
- libtest::Server(host_arg, port_arg)
+ libtest::Server(host_arg, port_arg, GEARMAND_BINARY, true)
{
set_pid_file();
}
- pid_t get_pid(bool error_is_ok)
- {
- if (pid_file().empty() == false)
- {
- Wait wait(pid_file(), 0);
-
- if (error_is_ok and not wait.successful())
- {
- Error << "Pidfile was not found:" << pid_file();
- return -1;
- }
- }
-
- GetPid *get_instance_pid;
- util::Instance instance(hostname(), port());
- instance.set_finish(get_instance_pid= new GetPid);
-
- instance.push(new util::Operation(test_literal_param("getpid\r\n"), true));
-
- if (error_is_ok and instance.run() == false)
- {
- Error << "Failed to obtain pid of server";
- }
-
- return get_instance_pid->pid();
- }
-
bool ping()
{
gearman_client_st *client= gearman_client_create(NULL);
return "gearmand";
};
- const char *executable()
- {
- return GEARMAND_BINARY;
- }
-
- const char *daemon_file_option()
- {
- return "--daemon";
- }
-
void log_file_option(Application& app, const std::string& arg)
{
if (arg.empty() == false)