mirror of
https://github.com/Icinga/icingadb-web.git
synced 2026-05-28 04:36:06 -04:00
Since PHP 8.4 implicitly nullable parameter types are deprecated. Normalize scoped PHPDoc for nullable-parameter updates: use `?Type` instead of `Type|null` and remove column alignment. Co-authored-by: "Eric Lippmann <eric.lippmann@icinga.com>"
141 lines
2.7 KiB
PHP
141 lines
2.7 KiB
PHP
<?php
|
|
|
|
// SPDX-FileCopyrightText: 2021 Icinga GmbH <https://icinga.com>
|
|
// SPDX-License-Identifier: GPL-3.0-or-later
|
|
|
|
namespace Icinga\Module\Icingadb\Command\Object;
|
|
|
|
/**
|
|
* Submit a passive check result for a host or service
|
|
*/
|
|
class ProcessCheckResultCommand extends ObjectsCommand
|
|
{
|
|
/**
|
|
* Host up
|
|
*/
|
|
public const HOST_UP = 0;
|
|
|
|
/**
|
|
* Host down
|
|
*/
|
|
public const HOST_DOWN = 1;
|
|
|
|
/**
|
|
* Service ok
|
|
*/
|
|
public const SERVICE_OK = 0;
|
|
|
|
/**
|
|
* Service warning
|
|
*/
|
|
public const SERVICE_WARNING = 1;
|
|
|
|
/**
|
|
* Service critical
|
|
*/
|
|
public const SERVICE_CRITICAL = 2;
|
|
|
|
/**
|
|
* Service unknown
|
|
*/
|
|
public const SERVICE_UNKNOWN = 3;
|
|
|
|
/**
|
|
* Status code of the host or service check result
|
|
*
|
|
* @var int
|
|
*/
|
|
protected $status;
|
|
|
|
/**
|
|
* Text output of the host or service check result
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $output;
|
|
|
|
/**
|
|
* Optional performance data of the host or service check result
|
|
*
|
|
* @var string
|
|
*/
|
|
protected $performanceData;
|
|
|
|
/**
|
|
* Set the status code of the host or service check result
|
|
*
|
|
* @param int $status
|
|
*
|
|
* @return $this
|
|
*/
|
|
public function setStatus(int $status): self
|
|
{
|
|
$this->status = $status;
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get the status code of the host or service check result
|
|
*
|
|
* @return int
|
|
*/
|
|
public function getStatus(): int
|
|
{
|
|
if ($this->status === null) {
|
|
throw new \LogicException(
|
|
'You are accessing an unset property. Please make sure to set it beforehand.'
|
|
);
|
|
}
|
|
|
|
return $this->status;
|
|
}
|
|
|
|
/**
|
|
* Set the text output of the host or service check result
|
|
*
|
|
* @param string $output
|
|
*
|
|
* @return $this
|
|
*/
|
|
public function setOutput(string $output): self
|
|
{
|
|
$this->output = $output;
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get the text output of the host or service check result
|
|
*
|
|
* @return ?string
|
|
*/
|
|
public function getOutput()
|
|
{
|
|
return $this->output;
|
|
}
|
|
|
|
/**
|
|
* Set the performance data of the host or service check result
|
|
*
|
|
* @param ?string $performanceData
|
|
*
|
|
* @return $this
|
|
*/
|
|
public function setPerformanceData(?string $performanceData = null): self
|
|
{
|
|
$this->performanceData = $performanceData;
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* Get the performance data of the host or service check result
|
|
*
|
|
* @return ?string
|
|
*/
|
|
public function getPerformanceData()
|
|
{
|
|
return $this->performanceData;
|
|
}
|
|
}
|