mirror of
https://github.com/nextcloud/server.git
synced 2026-05-28 04:32:30 -04:00
fix(migration-attributes): psalm
Signed-off-by: Maxence Lange <maxence@artificial-owl.com>
This commit is contained in:
parent
ad490c963b
commit
a9e1dc6688
6 changed files with 46 additions and 14 deletions
|
|
@ -1,11 +1,11 @@
|
|||
<?php
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
/**
|
||||
* SPDX-FileCopyrightText: 2019 Nextcloud GmbH and Nextcloud contributors
|
||||
* SPDX-License-Identifier: AGPL-3.0-or-later
|
||||
*/
|
||||
|
||||
namespace OCA\Testing\Migration;
|
||||
|
||||
use Closure;
|
||||
|
|
@ -21,19 +21,19 @@ use OCP\Migration\Attributes\ModifyColumn;
|
|||
use OCP\Migration\IOutput;
|
||||
use OCP\Migration\SimpleMigrationStep;
|
||||
|
||||
#[DropTable('old_table')]
|
||||
#[CreateTable('new_table', description: 'Table is used to store things, but also to get more things', notes: ['this is a notice', 'and another one, if really needed'])]
|
||||
#[AddColumn('my_table')]
|
||||
#[AddColumn('my_table', 'another_field')]
|
||||
#[AddColumn('other_table', 'last_one', ColumnType::DATE)]
|
||||
#[AddIndex('my_table')]
|
||||
#[AddIndex('my_table', IndexType::PRIMARY)]
|
||||
#[DropColumn('other_table')]
|
||||
#[DropColumn('other_table', 'old_column', description: 'field is not used anymore and replaced by \'last_one\'')]
|
||||
#[DropIndex('other_table')]
|
||||
#[ModifyColumn('other_table')]
|
||||
#[ModifyColumn('other_table', 'this_field')]
|
||||
#[ModifyColumn('other_table', 'this_field', ColumnType::BIGINT)]
|
||||
#[DropTable(table: 'old_table')]
|
||||
#[CreateTable(table: 'new_table', description: 'Table is used to store things, but also to get more things', notes: ['this is a notice', 'and another one, if really needed'])]
|
||||
#[AddColumn(table: 'my_table')]
|
||||
#[AddColumn(table: 'my_table', name: 'another_field')]
|
||||
#[AddColumn(table: 'other_table', name: 'last_one', type: ColumnType::DATE)]
|
||||
#[AddIndex(table: 'my_table')]
|
||||
#[AddIndex(table: 'my_table', type: IndexType::PRIMARY)]
|
||||
#[DropColumn(table: 'other_table')]
|
||||
#[DropColumn(table: 'other_table', name: 'old_column', description: 'field is not used anymore and replaced by \'last_one\'')]
|
||||
#[DropIndex(table: 'other_table')]
|
||||
#[ModifyColumn(table: 'other_table')]
|
||||
#[ModifyColumn(table: 'other_table', name: 'this_field')]
|
||||
#[ModifyColumn(table: 'other_table', name: 'this_field', type: ColumnType::BIGINT)]
|
||||
class Version30000Date20240102030405 extends SimpleMigrationStep {
|
||||
public function changeSchema(IOutput $output, Closure $schemaClosure, array $options) {
|
||||
return null;
|
||||
|
|
|
|||
|
|
@ -16,6 +16,14 @@ use JsonSerializable;
|
|||
* @since 30.0.0
|
||||
*/
|
||||
class ColumnMigrationAttribute extends MigrationAttribute implements JsonSerializable {
|
||||
/**
|
||||
* @param string $table name of the database table
|
||||
* @param string $name name of the column
|
||||
* @param ColumnType|null $type type of the column
|
||||
* @param string $description description of the migration
|
||||
* @param array $notes notes about the migration/column
|
||||
* @since 30.0.0
|
||||
*/
|
||||
public function __construct(
|
||||
string $table,
|
||||
private string $name = '',
|
||||
|
|
|
|||
|
|
@ -17,6 +17,10 @@ use JsonSerializable;
|
|||
* @since 30.0.0
|
||||
*/
|
||||
class GenericMigrationAttribute extends MigrationAttribute implements JsonSerializable {
|
||||
/**
|
||||
* @param array $details
|
||||
* @since 30.0.0
|
||||
*/
|
||||
public function __construct(
|
||||
private readonly array $details = []
|
||||
) {
|
||||
|
|
|
|||
|
|
@ -16,6 +16,13 @@ use JsonSerializable;
|
|||
* @since 30.0.0
|
||||
*/
|
||||
class IndexMigrationAttribute extends MigrationAttribute implements JsonSerializable {
|
||||
/**
|
||||
* @param string $table name of the database table
|
||||
* @param IndexType|null $type type of the index
|
||||
* @param string $description description of the migration
|
||||
* @param array $notes notes abour the migration/index
|
||||
* @since 30.0.0
|
||||
*/
|
||||
public function __construct(
|
||||
string $table,
|
||||
private ?IndexType $type = null,
|
||||
|
|
|
|||
|
|
@ -14,6 +14,12 @@ use JsonSerializable;
|
|||
* @since 30.0.0
|
||||
*/
|
||||
class MigrationAttribute implements JsonSerializable {
|
||||
/**
|
||||
* @param string $table name of the database table
|
||||
* @param string $description description of the migration
|
||||
* @param array $notes notes about the migration
|
||||
* @since 30.0.0
|
||||
*/
|
||||
public function __construct(
|
||||
private string $table,
|
||||
private string $description = '',
|
||||
|
|
|
|||
|
|
@ -16,6 +16,13 @@ use JsonSerializable;
|
|||
* @since 30.0.0
|
||||
*/
|
||||
class TableMigrationAttribute extends MigrationAttribute implements JsonSerializable {
|
||||
/**
|
||||
* @param string $table name of the database table
|
||||
* @param array $columns list of columns
|
||||
* @param string $description description of the migration
|
||||
* @param array $notes notes about the migration/table
|
||||
* @since 30.0.0
|
||||
*/
|
||||
public function __construct(
|
||||
string $table,
|
||||
private array $columns = [],
|
||||
|
|
|
|||
Loading…
Reference in a new issue