Passed
Push — main ( 7189b9...23cbe4 )
by Vasil
03:17
created

CreateShipmentResponse::setId()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 5
Code Lines 2

Duplication

Lines 0
Ratio 0 %

Code Coverage

Tests 3
CRAP Score 1

Importance

Changes 0
Metric Value
cc 1
eloc 2
nc 1
nop 1
dl 0
loc 5
ccs 3
cts 3
cp 1
crap 1
rs 10
c 0
b 0
f 0
1
<?php
2
3
declare(strict_types=1);
4
5
namespace VasilDakov\Speedy\Service\Shipment;
6
7
use DateTime;
8
use JMS\Serializer\Annotation as Serializer;
9
10
/**
11
 * Class CreateShipmentResponse
12
 *
13
 * @Serializer\AccessType("public_method")
14
 * @author Vasil Dakov <[email protected]>
15
 * @copyright 2009-2022 Neutrino.bg
16
 * @version 1.0
17
 */
18
class CreateShipmentResponse
19
{
20
    /**
21
     * @var string
22
     * @Serializer\Type("string")
23
     * @Serializer\Accessor(getter="getId", setter="setId")
24
     */
25
    private string $id;
26
27
    /**
28
     * @var array
29
     * @Serializer\Type("array")
30
     */
31
    private array $parcels;
32
33
    /**
34
     * @var ShipmentPrice
35
     * @Serializer\Type("VasilDakov\Speedy\Service\Shipment\ShipmentPrice")
36
     * @Serializer\Accessor(getter="getPrice", setter="setPrice")
37
     */
38
    private ShipmentPrice $price;
39
40
    /**
41
     * @var DateTime
42
     * @Serializer\Type("DateTime<'Y-m-d'>")
43
     */
44
    private DateTime $pickupDate;
45
46
    /**
47
     * @var DateTime
48
     * @Serializer\Type("DateTime")
49
     */
50
    private DateTime $deliveryDeadline;
51
52
    /**
53
     * @var
54
     */
55
    private $error;
56
57
    /**
58
     * @param $id
59
     * @return $this
60
     */
61 4
    public function setId($id): self
62
    {
63 4
        $this->id = $id;
64
65 4
        return $this;
66
    }
67
68
    /**
69
     * @return string
70
     */
71
    public function getId(): string
72
    {
73
        return $this->id;
74
    }
75
76
    /**
77
     * @return array
78
     */
79 1
    public function getParcels(): array
80
    {
81 1
        return $this->parcels;
82
    }
83
84
    /**
85
     * @param array $parcels
86
     */
87 1
    public function setParcels(array $parcels = []): void
88
    {
89 1
        $this->parcels = $parcels;
90
    }
91
92
    /**
93
     * @return ShipmentPrice
94
     */
95 2
    public function getPrice(): ShipmentPrice
96
    {
97 2
        return $this->price;
98
    }
99
100
    /**
101
     * @param ShipmentPrice $price
102
     */
103 4
    public function setPrice(ShipmentPrice $price): void
104
    {
105 4
        $this->price = $price;
106
    }
107
108
    /**
109
     * @return DateTime
110
     */
111 1
    public function getPickupDate(): DateTime
112
    {
113 1
        return $this->pickupDate;
114
    }
115
116
    /**
117
     * @param DateTime $pickupDate
118
     */
119 4
    public function setPickupDate(DateTime $pickupDate): void
120
    {
121 4
        $this->pickupDate = $pickupDate;
122
    }
123
124
    /**
125
     * @return DateTime
126
     */
127 1
    public function getDeliveryDeadline(): DateTime
128
    {
129 1
        return $this->deliveryDeadline;
130
    }
131
132
    /**
133
     * @param DateTime $deliveryDeadline
134
     */
135 4
    public function setDeliveryDeadline(DateTime $deliveryDeadline): void
136
    {
137 4
        $this->deliveryDeadline = $deliveryDeadline;
138
    }
139
140
    /**
141
     * @return mixed
142
     */
143 1
    public function getError()
144
    {
145 1
        return $this->error;
146
    }
147
148
    /**
149
     * @param mixed $error
150
     */
151 1
    public function setError($error = null): void
152
    {
153 1
        $this->error = $error;
154
    }
155
}
156