hostName = $hostName; $this->hostTemplateName = $hostTemplateName; $this->serviceName= $serviceName; } public static function find(IcingaHost $host, $serviceName) { foreach (IcingaTemplateRepository::instanceByObject($host)->getTemplatesFor($host, true) as $parent) { if (IcingaService::exists([ 'host_id' => $parent->get('id'), 'object_name' => $serviceName ], $host->getConnection())) { return new static( $host->getObjectName(), $parent->getObjectName(), $serviceName ); } } return false; } public function getHostName() { return $this->hostName; } /** * @return string */ public function getHostTemplateName() { return $this->hostTemplateName; } public function getName() { return $this->serviceName; } public function getUrl() { return Url::fromPath('director/host/inheritedservice', [ 'name' => $this->hostName, 'service' => $this->serviceName, 'inheritedFrom' => $this->hostTemplateName ]); } public function requiresOverrides() { return true; } }