diff options
Diffstat (limited to 'lib/public/Migration/Attributes/CreateTable.php')
-rw-r--r-- | lib/public/Migration/Attributes/CreateTable.php | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/lib/public/Migration/Attributes/CreateTable.php b/lib/public/Migration/Attributes/CreateTable.php new file mode 100644 index 00000000000..df0418fa4bc --- /dev/null +++ b/lib/public/Migration/Attributes/CreateTable.php @@ -0,0 +1,29 @@ +<?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; + +/** + * attribute on table creation + * + * @since 30.0.0 + */ +#[Attribute(Attribute::IS_REPEATABLE | Attribute::TARGET_CLASS)] +class CreateTable extends TableMigrationAttribute { + /** + * @return string + * @since 30.0.0 + */ + public function definition(): string { + $definition = 'Creation of new table \'' . $this->getTable() . '\''; + $definition .= empty($this->getColumns()) ? '' : ' with columns ' . implode(', ', $this->getColumns()); + return $definition; + } +} |