Completed
Push — master ( 6eb58a...ff20ae )
by Jan-Petter
03:32
created

RootDirectiveHandler::sitemap()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
c 1
b 0
f 0
dl 0
loc 4
rs 10
cc 1
eloc 2
nc 1
nop 0
1
<?php
2
namespace vipnytt\RobotsTxtParser\Handler\Directives;
3
4
use vipnytt\RobotsTxtParser\Parser\Directives\CleanParamParser;
5
use vipnytt\RobotsTxtParser\Parser\Directives\HostParser;
6
use vipnytt\RobotsTxtParser\Parser\Directives\SitemapParser;
7
use vipnytt\RobotsTxtParser\Parser\Directives\UserAgentParser;
8
use vipnytt\RobotsTxtParser\RobotsTxtInterface;
9
10
/**
11
 * Class RootDirectiveHandler
12
 *
13
 * @package vipnytt\RobotsTxtParser\Parser\Directives
14
 */
15
class RootDirectiveHandler implements RobotsTxtInterface
16
{
17
    /**
18
     * Clean-param
19
     * @var CleanParamParser
20
     */
21
    private $cleanParam;
22
23
    /**
24
     * Host
25
     * @var HostParser
26
     */
27
    private $host;
28
29
    /**
30
     * Sitemap
31
     * @var SitemapParser
32
     */
33
    private $sitemap;
34
35
    /**
36
     * User-agent
37
     * @var UserAgentParser
38
     */
39
    private $userAgent;
40
41
    /**
42
     * RootDirectiveHandler constructor.
43
     *
44
     * @param string $base
45
     * @param string $effective
46
     */
47
    public function __construct($base, $effective)
48
    {
49
        $this->cleanParam = new CleanParamParser();
50
        $this->host = new HostParser($base, $effective);
51
        $this->sitemap = new SitemapParser();
52
        $this->userAgent = new UserAgentParser($base, $effective);
53
    }
54
55
    /**
56
     * Clean-param
57
     *
58
     * @return CleanParamParser
59
     */
60
    public function cleanParam()
61
    {
62
        return $this->cleanParam;
63
    }
64
65
    /**
66
     * Host
67
     *
68
     * @return HostParser
69
     */
70
    public function host()
71
    {
72
        return $this->host;
73
    }
74
75
    /**
76
     * Sitemap
77
     *
78
     * @return SitemapParser
79
     */
80
    public function sitemap()
81
    {
82
        return $this->sitemap;
83
    }
84
85
    /**
86
     * User-agent
87
     *
88
     * @return UserAgentParser
89
     */
90
    public function userAgent()
91
    {
92
        return $this->userAgent;
93
    }
94
}
95