Passed
Pull Request — master (#3)
by
unknown
01:41
created

TimeColumn   A

Complexity

Total Complexity 1

Size/Duplication

Total Lines 14
Duplicated Lines 0 %

Importance

Changes 1
Bugs 0 Features 0
Metric Value
wmc 1
eloc 8
dl 0
loc 14
rs 10
c 1
b 0
f 0

1 Method

Rating   Name   Duplication   Size   Complexity  
A __construct() 0 11 1
1
<?php
2
/********************************************************************************
3
 *   Apache License, Version 2.0                                                *
4
 *                                                                              *
5
 *   Copyright [2020] [Nurlan Mukhanov <[email protected]>]                      *
6
 *                                                                              *
7
 *   Licensed under the Apache License, Version 2.0 (the "License");            *
8
 *   you may not use this file except in compliance with the License.           *
9
 *   You may obtain a copy of the License at                                    *
10
 *                                                                              *
11
 *       http://www.apache.org/licenses/LICENSE-2.0                             *
12
 *                                                                              *
13
 *   Unless required by applicable law or agreed to in writing, software        *
14
 *   distributed under the License is distributed on an "AS IS" BASIS,          *
15
 *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.   *
16
 *   See the License for the specific language governing permissions and        *
17
 *   limitations under the License.                                             *
18
 *                                                                              *
19
 ********************************************************************************/
20
21
declare(strict_types=1);
22
23
namespace DBD\Entity\Columns;
24
25
use Attribute;
26
use DBD\Entity\Column;
27
use DBD\Entity\Primitives\TimePrimitives;
28
29
/**
30
 * Class TimeColumn
31
 *
32
 * @package DBD\Entity\Columns
33
 */
34
#[Attribute(Attribute::TARGET_PROPERTY)]
35
class TimeColumn extends Column
36
{
37
    public function __construct(
38
        string $name,
39
        bool $nullable = false,
40
        ?string $defaultValue = null
41
    ) {
42
        parent::__construct([
43
            Column::NAME            => $name,
44
            Column::PRIMITIVE_TYPE  => TimePrimitives::Date,
45
            Column::ORIGIN_TYPE     => 'time',
46
            Column::NULLABLE        => $nullable,
47
            Column::DEFAULT         => $defaultValue,
48
        ]);
49
    }
50
}
51