Test Failed
Push — main ( 160197...ea0dc4 )
by Daniel
18:27
created

ResourceMetadata::setViolations()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 3
Code Lines 1

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 0
CRAP Score 2

Importance

Changes 0
Metric Value
cc 1
eloc 1
nc 1
nop 1
dl 0
loc 3
ccs 0
cts 2
cp 0
crap 2
rs 10
c 0
b 0
f 0
1
<?php
2
3
/*
4
 * This file is part of the Silverback API Components Bundle Project
5
 *
6
 * (c) Daniel West <[email protected]>
7
 *
8
 * For the full copyright and license information, please view the LICENSE
9
 * file that was distributed with this source code.
10
 */
11
12
declare(strict_types=1);
13
14
namespace Silverback\ApiComponentsBundle\Serializer\ResourceMetadata;
15
16
use Silverback\ApiComponentsBundle\Metadata\PageDataMetadata;
17
use Symfony\Component\Serializer\Annotation\Groups;
18
use Symfony\Component\Validator\ConstraintViolationListInterface;
19
20
class ResourceMetadata implements ResourceMetadataInterface
21
{
22
    // for page data
23
    #[Groups('cwa_resource:metadata')]
24
    private ?PageDataMetadata $pageDataMetadata = null;
25
26
    // for component position
27
    #[Groups('cwa_resource:metadata')]
28
    private ?string $staticComponent = null;
29
30
    // for component position
31
    #[Groups('cwa_resource:metadata')]
32
    private ?string $pageDataPath = null;
33
34
    // for component position
35
    #[Groups('cwa_resource:metadata')]
36
    private ?bool $isDynamicPosition = null;
37
38
    #[Groups('cwa_resource:metadata')]
39
    private ?bool $collection = null;
40
41
    #[Groups('cwa_resource:metadata')]
42
    private ?bool $persisted = null;
43
44
    #[Groups('cwa_resource:metadata')]
45
    private ?ResourcePublishableMetadata $publishable = null;
46
47
    #[Groups('cwa_resource:metadata')]
48
    private ?ConstraintViolationListInterface $violations;
49
50
    #[Groups('cwa_resource:metadata')]
51
    private ?array $mediaObjects = null;
52
53
    #[Groups('cwa_resource:metadata')]
54
    private ?array $mercureSubscribeTopics = null;
55
56
    public function getResourceMetadata(): ?ResourceMetadataInterface
57
    {
58
        return $this;
59
    }
60
61
    public function getPageDataMetadata(): ?PageDataMetadata
62
    {
63
        return $this->pageDataMetadata;
64
    }
65
66
    public function setPageDataMetadata(PageDataMetadata $pageDataMetadata): void
67
    {
68
        $this->pageDataMetadata = $pageDataMetadata;
69
    }
70
71
    public function getStaticComponent(): ?string
72
    {
73
        return $this->staticComponent;
74
    }
75
76
    public function setStaticComponent(string $staticComponentIri): void
77
    {
78
        $this->staticComponent = $staticComponentIri;
79
    }
80
81
    public function getPageDataPath(): ?string
82
    {
83
        return $this->pageDataPath;
84
    }
85
86
    public function setPageDataPath(?string $pageDataPath): void
87
    {
88
        $this->pageDataPath = $pageDataPath;
89
    }
90
91
    public function getIsDynamicPosition(): ?bool
92
    {
93
        return $this->isDynamicPosition;
94
    }
95
96
    public function setIsDynamicPosition(?bool $isDynamicPosition): void
97
    {
98
        $this->isDynamicPosition = $isDynamicPosition;
99
    }
100
101
    public function getCollection(): ?bool
102
    {
103
        return $this->collection;
104
    }
105
106
    public function setCollection(bool $collection): void
107
    {
108
        $this->collection = $collection;
109
    }
110
111 1
    public function getPersisted(): ?bool
112
    {
113 1
        return $this->persisted;
114
    }
115
116 1
    public function setPersisted(?bool $persisted): void
117
    {
118 1
        $this->persisted = $persisted;
119
    }
120
121
    public function getPublishable(): ?ResourcePublishableMetadata
122
    {
123
        return $this->publishable;
124
    }
125
126
    public function setPublishable(bool $published, string $publishedAt = null): void
127
    {
128
        if ($this->publishable) {
129
            $this->publishable->published = $published;
130
            $this->publishable->publishedAt = $publishedAt;
131
132
            return;
133
        }
134
        $this->publishable = new ResourcePublishableMetadata($published, $publishedAt);
135
    }
136
137
    public function getViolations(): ?ConstraintViolationListInterface
138
    {
139
        return $this->violations;
140
    }
141
142
    public function setViolations(?ConstraintViolationListInterface $violations): void
143
    {
144
        $this->violations = $violations;
145
    }
146
147
    public function getMediaObjects(): ?array
148
    {
149
        return $this->mediaObjects;
150
    }
151
152
    public function setMediaObjects(array $mediaObjects): void
153
    {
154
        $this->mediaObjects = $mediaObjects;
155
    }
156
157
    public function getMercureSubscribeTopics(): ?array
158
    {
159
        return $this->mercureSubscribeTopics;
160
    }
161
162
    public function setMercureSubscribeTopics(?array $mercureSubscribeTopics): void
163
    {
164
        $this->mercureSubscribeTopics = $mercureSubscribeTopics;
165
    }
166
}
167