Completed
Branch feature/pre-split (67216b)
by Anton
03:28
created

AddColumn::execute()   A

Complexity

Conditions 2
Paths 2

Size

Total Lines 13
Code Lines 6

Duplication

Lines 0
Ratio 0 %

Importance

Changes 0
Metric Value
cc 2
eloc 6
nc 2
nop 1
dl 0
loc 13
rs 9.4285
c 0
b 0
f 0
1
<?php
2
/**
3
 * Spiral Framework.
4
 *
5
 * @license   MIT
6
 * @author    Anton Titov (Wolfy-J)
7
 */
8
namespace Spiral\Migrations\Operations\Columns;
9
10
use Spiral\Migrations\CapsuleInterface;
11
use Spiral\Migrations\Exceptions\Operations\ColumnException;
12
use Spiral\Migrations\Operations\ColumnOperation;
13
14
class AddColumn extends ColumnOperation
15
{
16
    /**
17
     * {@inheritdoc}
18
     */
19
    public function execute(CapsuleInterface $capsule)
20
    {
21
        $schema = $capsule->getSchema($this->getTable(), $this->getDatabase());
22
23
        if ($schema->hasColumn($this->name)) {
24
            throw new ColumnException(
25
                "Unable to create column '{$schema->getName()}'.'{$this->name}', column already exists"
26
            );
27
        }
28
29
        //Declaring column
30
        $this->declareColumn($schema);
31
    }
32
}