Code Duplication    Length = 90-97 lines in 2 locations

src/Models/Guild/Guildhall.php 1 location

@@ 10-99 (lines=90) @@
7
use Igorsgm\TibiaDataApi\Traits\ImmutableTrait;
8
use Igorsgm\TibiaDataApi\Traits\SerializableTrait;
9
10
class Guildhall
11
{
12
    use ImmutableTrait, SerializableTrait;
13
14
    /**
15
     * @var string
16
     */
17
    private $name;
18
19
    /**
20
     * @var string
21
     */
22
    private $town;
23
24
    /**
25
     * @var Carbon
26
     */
27
    private $paid;
28
29
    /**
30
     * @var string
31
     */
32
    private $world;
33
34
    /**
35
     * @var int
36
     */
37
    private $houseId;
38
39
    /**
40
     * Guildhall constructor.
41
     *
42
     * @param  string  $name
43
     * @param  string  $town
44
     * @param  Carbon  $paid
45
     * @param  string  $world
46
     * @param  int  $houseId
47
     * @throws ImmutableException
48
     */
49
    public function __construct(string $name, string $town, Carbon $paid, string $world, int $houseId)
50
    {
51
        $this->handleImmutableConstructor();
52
53
        $this->name = $name;
54
        $this->town = $town;
55
        $this->paid = $paid;
56
        $this->world = $world;
57
        $this->houseId = $houseId;
58
    }
59
60
    /**
61
     * @return string
62
     */
63
    public function getName(): string
64
    {
65
        return $this->name;
66
    }
67
68
    /**
69
     * @return string
70
     */
71
    public function getTown(): string
72
    {
73
        return $this->town;
74
    }
75
76
    /**
77
     * @return Carbon
78
     */
79
    public function getPaid(): Carbon
80
    {
81
        return $this->paid;
82
    }
83
84
    /**
85
     * @return string
86
     */
87
    public function getWorld(): string
88
    {
89
        return $this->world;
90
    }
91
92
    /**
93
     * @return int
94
     */
95
    public function getHouseId(): int
96
    {
97
        return $this->houseId;
98
    }
99
}
100

src/Models/Houses/House.php 1 location

@@ 9-105 (lines=97) @@
6
use Igorsgm\TibiaDataApi\Traits\ImmutableTrait;
7
use Igorsgm\TibiaDataApi\Traits\SerializableTrait;
8
9
class House
10
{
11
    use ImmutableTrait, SerializableTrait;
12
13
    /**
14
     * @var int
15
     */
16
    private $houseId;
17
18
    /**
19
     * @var string
20
     */
21
    private $name;
22
23
    /**
24
     * @var int
25
     */
26
    private $size;
27
28
    /**
29
     * @var int
30
     */
31
    private $rent;
32
33
    /**
34
     * @var string
35
     */
36
    private $status;
37
38
    /**
39
     * House constructor.
40
     * @param  int  $id
41
     * @param  string  $name
42
     * @param  int  $size
43
     * @param  int  $rent
44
     * @param  string  $status
45
     * @throws ImmutableException
46
     */
47
    public function __construct(int $id, string $name, int $size, int $rent, string $status)
48
    {
49
        $this->handleImmutableConstructor();
50
51
        $this->houseId = $id;
52
        $this->name = $name;
53
        $this->size = $size;
54
        $this->rent = $rent;
55
        $this->status = $status;
56
    }
57
58
    /**
59
     * @return int
60
     */
61
    public function getHouseId(): int
62
    {
63
        return $this->houseId;
64
    }
65
66
    /**
67
     * @return string
68
     */
69
    public function getName(): string
70
    {
71
        return $this->name;
72
    }
73
74
    /**
75
     * @return int
76
     */
77
    public function getSize(): int
78
    {
79
        return $this->size;
80
    }
81
82
    /**
83
     * @return int
84
     */
85
    public function getRent(): int
86
    {
87
        return $this->rent;
88
    }
89
90
    /**
91
     * @return string
92
     */
93
    public function getStatus(): string
94
    {
95
        return $this->status;
96
    }
97
98
    /**
99
     * @return bool
100
     */
101
    public function isRented()
102
    {
103
        return $this->status === 'rented';
104
    }
105
}
106