summaryrefslogtreecommitdiffstats
path: root/library/Director/DirectorObject/Lookup/ServiceInfo.php
blob: 3c8c51b942cc3124df112544161e44db94b9ca53 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
<?php

namespace Icinga\Module\Director\DirectorObject\Lookup;

use gipfl\IcingaWeb2\Url;
use Icinga\Module\Director\Objects\IcingaHost;
use Ramsey\Uuid\UuidInterface;

interface ServiceInfo
{
    /**
     * The final Service name
     *
     * @return string
     */
    public function getName();

    /**
     * The host the final (rendered, processed) Service belongs to
     *
     * @return string
     */
    public function getHostName();

    /**
     * @return Url
     */
    public function getUrl();

    /**
     * @return UuidInterface
     */
    public function getUuid();

    /**
     * @return bool
     */
    public function requiresOverrides();

    /**
     * @param IcingaHost $host
     * @param $serviceName
     * @return ServiceInfo|false
     */
    public static function find(IcingaHost $host, $serviceName);
}