NAME
Ubic::Service::Common - common way to construct new service by specifying several callbacks
VERSION
version 1.60
SYNOPSIS
$service = Ubic::Service::Common->new({
start => sub {
# implementation-specific
},
stop => sub {
# implementation-specific
},
status => sub {
# implementation-specific
},
name => "my-service",
port => 1234,
});
$service->start;
DESCRIPTION
Each service should provide safe start(), stop() and status() methods.
CONSTRUCTOR
- Ubic::Service::Common->new($params)
-
Construct service object.
Possible parameters:
- start
-
Mandatory sub reference providing service start mechanism.
- stop
-
The same for stop.
- status
-
Mandatory sub reference checking if service is alive.
It should return one of
running,not running,brokenvalues.This code will be used as safety check against double start and in watchdog checks.
- name
-
Service's name.
Optional, will usually be set by upper-level multiservice. Don't set it unless you know what you're doing.
- user
-
User under which daemon will be started. Optional, default is
root. - group
-
Group under which daemon will be started. Optional, default is all user groups.
Value can be scalar or arrayref.
- port
-
Service's port.
AUTHOR
Vyacheslav Matyukhin <mmcleric@yandex-team.ru>
COPYRIGHT AND LICENSE
This software is copyright (c) 2016 by Yandex LLC.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.