Completed
Push — master ( 19732d...076741 )
by Paweł
11:47
created

Version20170818100707::down()   A

Complexity

Conditions 1
Paths 1

Size

Total Lines 10

Duplication

Lines 10
Ratio 100 %

Importance

Changes 0
Metric Value
dl 10
loc 10
rs 9.9332
c 0
b 0
f 0
cc 1
nc 1
nop 1
1
<?php
2
3
namespace SWP\Migrations;
4
5
use Doctrine\DBAL\Migrations\AbstractMigration;
6
use Doctrine\DBAL\Schema\Schema;
7
8
/**
9
 * Auto-generated Migration: Please modify to your needs!
10
 */
11 View Code Duplication
class Version20170818100707 extends AbstractMigration
0 ignored issues
show
Deprecated Code introduced by
The class Doctrine\DBAL\Migrations\AbstractMigration has been deprecated with message: Please use Doctrine\Migrations\AbstractMigration

This class, trait or interface has been deprecated. The supplier of the file has supplied an explanatory message.

The explanatory message should give you some clue as to whether and when the type will be removed from the class and what other constant to use instead.

Loading history...
Duplication introduced by
This class seems to be duplicated in your project.

Duplicated code is one of the most pungent code smells. If you need to duplicate the same code in three or more different places, we strongly encourage you to look into extracting the code into a single class or operation.

You can also find more detailed suggestions in the “Code” section of your repository.

Loading history...
12
{
13
    /**
14
     * @param Schema $schema
15
     */
16
    public function up(Schema $schema)
17
    {
18
        // this up() migration is auto-generated, please modify it to your needs
19
        $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.');
20
21
        $this->addSql('CREATE TABLE swp_article_sources (article_id INT NOT NULL, source_id INT NOT NULL, PRIMARY KEY(article_id, source_id))');
22
        $this->addSql('CREATE INDEX IDX_E38D33537294869C ON swp_article_sources (article_id)');
23
        $this->addSql('CREATE INDEX IDX_E38D3353953C1C61 ON swp_article_sources (source_id)');
24
        $this->addSql('CREATE TABLE swp_article_source (id SERIAL NOT NULL, name VARCHAR(255) NOT NULL, created_at TIMESTAMP(0) WITHOUT TIME ZONE NOT NULL, updated_at TIMESTAMP(0) WITHOUT TIME ZONE DEFAULT NULL, tenant_code VARCHAR(255) NOT NULL, PRIMARY KEY(id))');
25
        $this->addSql('ALTER TABLE swp_article_sources ADD CONSTRAINT FK_E38D33537294869C FOREIGN KEY (article_id) REFERENCES swp_article (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
26
        $this->addSql('ALTER TABLE swp_article_sources ADD CONSTRAINT FK_E38D3353953C1C61 FOREIGN KEY (source_id) REFERENCES swp_article_source (id) ON DELETE CASCADE NOT DEFERRABLE INITIALLY IMMEDIATE');
27
        $this->addSql('ALTER TABLE swp_article DROP source');
28
    }
29
30
    /**
31
     * @param Schema $schema
32
     */
33
    public function down(Schema $schema)
34
    {
35
        // this down() migration is auto-generated, please modify it to your needs
36
        $this->abortIf('postgresql' !== $this->connection->getDatabasePlatform()->getName(), 'Migration can only be executed safely on \'postgresql\'.');
37
38
        $this->addSql('ALTER TABLE swp_article_sources DROP CONSTRAINT FK_E38D3353953C1C61');
39
        $this->addSql('DROP TABLE swp_article_sources');
40
        $this->addSql('DROP TABLE swp_article_source');
41
        $this->addSql('ALTER TABLE swp_article ADD source VARCHAR(255) DEFAULT NULL');
42
    }
43
}
44