PluginProbe ʕ •ᴥ•ʔ
Booking for Appointments and Events Calendar – Amelia / trunk
Booking for Appointments and Events Calendar – Amelia vtrunk
2.4.4 2.4.3 2.4.2 2.4.1 2.4 trunk 1.2.1 1.2.10 1.2.11 1.2.12 1.2.13 1.2.14 1.2.15 1.2.16 1.2.17 1.2.18 1.2.19 1.2.2 1.2.20 1.2.21 1.2.22 1.2.23 1.2.24 1.2.25 1.2.26 1.2.27 1.2.28 1.2.29 1.2.3 1.2.30 1.2.31 1.2.32 1.2.33 1.2.34 1.2.35 1.2.36 1.2.37 1.2.38 1.2.4 1.2.5 1.2.6 1.2.7 1.2.8 1.2.9 2.0 2.0.1 2.0.2 2.1 2.1.1 2.1.2 2.1.3 2.2 2.2.1 2.3
ameliabooking / src / Domain / ValueObjects / Number / Integer / PositiveInteger.php
ameliabooking / src / Domain / ValueObjects / Number / Integer Last commit date
Capacity.php 6 months ago DateRepeat.php 1 year ago Id.php 7 years ago IntegerValue.php 6 months ago LoginType.php 1 year ago PositiveInteger.php 6 months ago Status.php 1 year ago WholeNumber.php 6 months ago
PositiveInteger.php
40 lines
1 <?php
2
3 namespace AmeliaBooking\Domain\ValueObjects\Number\Integer;
4
5 use AmeliaBooking\Domain\Common\Exceptions\InvalidArgumentException;
6
7 /**
8 * Class PositiveInteger
9 *
10 * @package AmeliaBooking\Domain\ValueObjects\Number\Integer
11 */
12 final class PositiveInteger
13 {
14 private int $integer;
15
16 /**
17 * @param string $integer
18 *
19 * @throws InvalidArgumentException
20 */
21 public function __construct($integer)
22 {
23 if (filter_var($integer, FILTER_VALIDATE_INT, ['options' => ['min_range' => 1]]) === false) {
24 throw new InvalidArgumentException("Number '$integer' must be greater than zero");
25 }
26
27 $this->integer = (int)$integer;
28 }
29
30 /**
31 * Return the number from the value object
32 *
33 * @return int
34 */
35 public function getValue(): int
36 {
37 return $this->integer;
38 }
39 }
40