93 lines
1.8 KiB
PHP
93 lines
1.8 KiB
PHP
<?php
|
|
|
|
namespace Doctrine\DBAL\Event;
|
|
|
|
use Doctrine\DBAL\Connection;
|
|
use Doctrine\DBAL\Platforms\AbstractPlatform;
|
|
use Doctrine\DBAL\Schema\Index;
|
|
|
|
/**
|
|
* Event Arguments used when the portable index definition is generated inside Doctrine\DBAL\Schema\AbstractSchemaManager.
|
|
*/
|
|
class SchemaIndexDefinitionEventArgs extends SchemaEventArgs
|
|
{
|
|
/** @var Index|null */
|
|
private $index = null;
|
|
|
|
/**
|
|
* Raw index data as fetched from the database.
|
|
*
|
|
* @var mixed[]
|
|
*/
|
|
private $tableIndex;
|
|
|
|
/** @var string */
|
|
private $table;
|
|
|
|
/** @var Connection */
|
|
private $connection;
|
|
|
|
/**
|
|
* @param mixed[] $tableIndex
|
|
* @param string $table
|
|
*/
|
|
public function __construct(array $tableIndex, $table, Connection $connection)
|
|
{
|
|
$this->tableIndex = $tableIndex;
|
|
$this->table = $table;
|
|
$this->connection = $connection;
|
|
}
|
|
|
|
/**
|
|
* Allows to clear the index which means the index will be excluded from tables index list.
|
|
*
|
|
* @return SchemaIndexDefinitionEventArgs
|
|
*/
|
|
public function setIndex(?Index $index = null)
|
|
{
|
|
$this->index = $index;
|
|
|
|
return $this;
|
|
}
|
|
|
|
/**
|
|
* @return Index|null
|
|
*/
|
|
public function getIndex()
|
|
{
|
|
return $this->index;
|
|
}
|
|
|
|
/**
|
|
* @return mixed[]
|
|
*/
|
|
public function getTableIndex()
|
|
{
|
|
return $this->tableIndex;
|
|
}
|
|
|
|
/**
|
|
* @return string
|
|
*/
|
|
public function getTable()
|
|
{
|
|
return $this->table;
|
|
}
|
|
|
|
/**
|
|
* @return Connection
|
|
*/
|
|
public function getConnection()
|
|
{
|
|
return $this->connection;
|
|
}
|
|
|
|
/**
|
|
* @return AbstractPlatform
|
|
*/
|
|
public function getDatabasePlatform()
|
|
{
|
|
return $this->connection->getDatabasePlatform();
|
|
}
|
|
}
|