Completed
Pull Request — 2.0 (#945)
by Paweł
09:47
created

ResponseContext::setSerializationGroups()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 4

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
dl 0
loc 4
rs 10
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
declare(strict_types=1);
4
5
/*
6
 * This file is part of the Superdesk Web Publisher Core Bundle.
7
 *
8
 * Copyright 2016 Sourcefabric z.u. and contributors.
9
 *
10
 * For the full copyright and license information, please see the
11
 * AUTHORS and LICENSE files distributed with this source code.
12
 *
13
 * @copyright 2016 Sourcefabric z.ú
14
 * @license http://www.superdesk.org/license
15
 */
16
17
namespace SWP\Component\Common\Response;
18
19
class ResponseContext implements ResponseContextInterface
20
{
21
    protected $intention;
22
23
    protected $statusCode;
24
25
    protected $headers;
26
27
    protected $clearedCookies = [];
28
29
    protected $serializationGroups;
30
31
    public function __construct(
32
        int $statusCode = 200,
33
        string $intention = ResponseContextInterface::INTENTION_API,
34
        array $headers = [],
35
        array $serializationGroups = ['Default', 'api']
36
    ) {
37
        $this->intention = $intention;
38
        $this->statusCode = $statusCode;
39
        $this->headers = $headers;
40
        $this->serializationGroups = $serializationGroups;
41
    }
42
43
    public function getIntention(): string
44
    {
45
        return $this->intention;
46
    }
47
48
    public function getStatusCode(): int
49
    {
50
        return $this->statusCode;
51
    }
52
53
    public function getHeaders(): array
54
    {
55
        return $this->headers;
56
    }
57
58
    public function getClearedCookies(): array
59
    {
60
        return $this->clearedCookies;
61
    }
62
63
    public function clearCookie(string $key)
64
    {
65
        $this->clearedCookies[] = $key;
66
    }
67
68
    public function getSerializationGroups(): array
69
    {
70
        return $this->serializationGroups;
71
    }
72
73
    public function setSerializationGroups(array $serializationGroups): void
74
    {
75
        $this->serializationGroups = $serializationGroups;
76
    }
77
}
78