31 lines
846 B
PHP
31 lines
846 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
/**
|
|
* SPDX-FileCopyrightText: 2024 Nextcloud GmbH and Nextcloud contributors
|
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
*/
|
|
namespace OCP\Migration\Attributes;
|
|
|
|
use Attribute;
|
|
use OCP\AppFramework\Attribute\Consumable;
|
|
|
|
/**
|
|
* attribute on new column creation
|
|
*/
|
|
#[Attribute(Attribute::IS_REPEATABLE | Attribute::TARGET_CLASS)]
|
|
#[Consumable(since: '30.0.0')]
|
|
class AddColumn extends ColumnMigrationAttribute {
|
|
/**
|
|
* @return string
|
|
* @since 30.0.0
|
|
*/
|
|
public function definition(): string {
|
|
$type = is_null($this->getType()) ? '' : ' (' . $this->getType()->value . ')';
|
|
return empty($this->getName())
|
|
? 'Addition of a new column' . $type . ' to table \'' . $this->getTable() . '\''
|
|
: 'Addition of column \'' . $this->getName() . '\'' . $type . ' to table \'' . $this->getTable() . '\'';
|
|
}
|
|
}
|