SchemaDropTableEventArgs.php 1.28 KB
Newer Older
1 2 3 4
<?php

namespace Doctrine\DBAL\Event;

Benjamin Morel's avatar
Benjamin Morel committed
5 6
use Doctrine\DBAL\Platforms\AbstractPlatform;
use Doctrine\DBAL\Schema\Table;
7
use InvalidArgumentException;
8 9 10 11 12 13

/**
 * Event Arguments used when the SQL query for dropping tables are generated inside Doctrine\DBAL\Platform\AbstractPlatform.
 */
class SchemaDropTableEventArgs extends SchemaEventArgs
{
14
    /** @var string|Table */
15
    private $table;
16

17
    /** @var AbstractPlatform */
18
    private $platform;
19

20
    /** @var string|null */
21
    private $sql = null;
22 23

    /**
24
     * @param string|Table $table
Benjamin Morel's avatar
Benjamin Morel committed
25
     *
26
     * @throws InvalidArgumentException
27 28 29
     */
    public function __construct($table, AbstractPlatform $platform)
    {
30 31
        $this->table    = $table;
        $this->platform = $platform;
32 33 34
    }

    /**
35
     * @return string|Table
36 37 38
     */
    public function getTable()
    {
39
        return $this->table;
40 41 42
    }

    /**
43
     * @return AbstractPlatform
44 45 46
     */
    public function getPlatform()
    {
47
        return $this->platform;
48 49 50 51
    }

    /**
     * @param string $sql
Benjamin Morel's avatar
Benjamin Morel committed
52
     *
53
     * @return \Doctrine\DBAL\Event\SchemaDropTableEventArgs
54 55 56
     */
    public function setSql($sql)
    {
57
        $this->sql = $sql;
58 59 60 61 62

        return $this;
    }

    /**
Benjamin Morel's avatar
Benjamin Morel committed
63
     * @return string|null
64 65 66
     */
    public function getSql()
    {
67
        return $this->sql;
68 69
    }
}