X-Git-Url: http://wagnertech.de/gitweb/gitweb.cgi/kivitendo-erp.git/blobdiff_plain/ecb08b787b2d44e2158c4b0f47d3989bbfe11429..6f266e929ff3eaefc84c34b46fa452c50eecbcf4:/SL/System/TaskServer.pm diff --git a/SL/System/TaskServer.pm b/SL/System/TaskServer.pm index df67523ec..f5b412274 100644 --- a/SL/System/TaskServer.pm +++ b/SL/System/TaskServer.pm @@ -20,6 +20,8 @@ use constant { ERR_PROCESS => -2, }; +use constant PID_BASE => "users/pid"; + sub status { my ($self) = @_; @@ -41,6 +43,12 @@ sub start { return $self->_run_script_command('start'); } +sub start_if_not_running { + my ($self) = @_; + + $self->start unless $self->is_running; +} + sub stop { my ($self) = @_; @@ -65,8 +73,7 @@ sub _read_pid { my $exe_dir = SL::System::Process->exe_dir; foreach my $conf (qw(kivitendo.conf lx_office.conf kivitendo.conf.default)) { - my $pid_file_name = join '.', splitdir($exe_dir), "config.${conf}.pid"; - my $pid_file_path = catfile(catdir($exe_dir, 'users', 'pid'), $pid_file_name); + my $pid_file_path = catfile(catdir($exe_dir, splitdir(PID_BASE())), "config.${conf}.pid"); return join('', read_file($pid_file_path)) * 1 if -f $pid_file_path; }