DenyAcl::getTarget()   A
last analyzed

Complexity

Conditions 1
Paths 1

Size

Total Lines 4
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 2
CRAP Score 1

Importance

Changes 0
Metric Value
dl 0
loc 4
ccs 2
cts 2
cp 1
rs 10
c 0
b 0
f 0
cc 1
eloc 2
nc 1
nop 0
crap 1
1
<?php
2
declare(strict_types=1);
3
/**
4
 * Caridea
5
 *
6
 * Licensed under the Apache License, Version 2.0 (the "License"); you may not
7
 * use this file except in compliance with the License. You may obtain a copy of
8
 * the License at
9
 *
10
 * http://www.apache.org/licenses/LICENSE-2.0
11
 *
12
 * Unless required by applicable law or agreed to in writing, software
13
 * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
14
 * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
15
 * License for the specific language governing permissions and limitations under
16
 * the License.
17
 *
18
 * @copyright 2015-2018 LibreWorks contributors
19
 * @license   Apache-2.0
20
 */
21
namespace Caridea\Acl;
22
23
/**
24
 * An ACL that always denies. It's a no-op.
25
 *
26
 * @copyright 2015-2018 LibreWorks contributors
27
 * @license   Apache-2.0
28
 */
29
class DenyAcl implements Acl
30
{
31
    /**
32
     * @var \Caridea\Acl\Target The target
33
     */
34
    private $target;
35
36
    /**
37
     * Creates a new DenyAcl.
38
     *
39
     * @param \Caridea\Acl\Target $target The target
40
     */
41 3
    public function __construct(Target $target)
42
    {
43 3
        $this->target = $target;
44 3
    }
45
46
    /**
47
     * {@inheritDoc}
48
     */
49 1
    public function can(array $subjects, string $verb): bool
50
    {
51 1
        return false;
52
    }
53
54
    /**
55
     * {@inheritDoc}
56
     */
57 1
    public function getParent(): ?Acl
58
    {
59 1
        return null;
60
    }
61
62
    /**
63
     * {@inheritDoc}
64
     */
65 1
    public function getTarget(): Target
66
    {
67 1
        return $this->target;
68
    }
69
}
70