Lookup: explain various kinds of Services

This commit is contained in:
Thomas Gelf 2021-01-18 17:52:01 +01:00
parent 3325512824
commit 234e68db31
5 changed files with 22 additions and 2 deletions

View File

@ -8,6 +8,10 @@ use Icinga\Module\Director\Db;
use Icinga\Module\Director\Objects\HostApplyMatches;
use Icinga\Module\Director\Objects\IcingaHost;
/**
* A Service Apply Rule matching this Host, generating a Service with the given
* name
*/
class AppliedServiceInfo implements ServiceInfo
{
/** @var string */

View File

@ -8,6 +8,10 @@ use Icinga\Module\Director\Db;
use Icinga\Module\Director\Objects\HostApplyMatches;
use Icinga\Module\Director\Objects\IcingaHost;
/**
* A Service that makes part of a Service Set Apply Rule matching this Host,
* generating a Service with the given name
*/
class AppliedServiceSetServiceInfo implements ServiceInfo
{
/** @var string */

View File

@ -7,6 +7,10 @@ use Icinga\Module\Director\Objects\IcingaHost;
use Icinga\Module\Director\Objects\IcingaService;
use Icinga\Module\Director\Repository\IcingaTemplateRepository;
/**
* A Service attached to a parent Service Template. This is a shortcut for
* 'assign where "Template Name" in templates'
*/
class InheritedServiceInfo implements ServiceInfo
{
/** @var string */

View File

@ -6,6 +6,10 @@ use gipfl\IcingaWeb2\Url;
use Icinga\Module\Director\Objects\IcingaHost;
use Icinga\Module\Director\Repository\IcingaTemplateRepository;
/**
* A service belonging to a Service Set, attached either directly to the given
* Host or to one of it's inherited Host Templates
*/
class ServiceSetServiceInfo implements ServiceInfo
{
/** @var string */

View File

@ -6,6 +6,10 @@ use gipfl\IcingaWeb2\Url;
use Icinga\Module\Director\Objects\IcingaHost;
use Icinga\Module\Director\Objects\IcingaService;
/**
* A single service, directly attached to a Host Object. Overrides might
* still be used when use_var_overrides is true.
*/
class SingleServiceInfo implements ServiceInfo
{
/** @var string */
@ -20,7 +24,7 @@ class SingleServiceInfo implements ServiceInfo
public function __construct($hostName, $serviceName, $useOverrides)
{
$this->hostName = $hostName;
$this->serviceName= $serviceName;
$this->serviceName = $serviceName;
$this->useOverrides = $useOverrides;
}
@ -33,7 +37,7 @@ class SingleServiceInfo implements ServiceInfo
$connection = $host->getConnection();
if (IcingaService::exists($keyParams, $connection)) {
$useOverrides = IcingaService::load($keyParams, $connection)
->getResolvedVar('use_var_overrides') === 'y';
->getResolvedVar('use_var_overrides') === 'y';
return new static($host->getObjectName(), $serviceName, $useOverrides);
}