summaryrefslogtreecommitdiffstats
path: root/core/Migrations
diff options
context:
space:
mode:
authorVincent Petry <vincent@nextcloud.com>2022-06-08 08:35:49 +0200
committerVincent Petry <vincent@nextcloud.com>2022-06-08 08:46:23 +0200
commit7f660674de3f2fedf4c63517e16ef67f448090f8 (patch)
tree5a9b1865a779a5262f90fcd2900b43a8ca266f72 /core/Migrations
parentc9bee7e3092e9c1365ec65368651912f478ed406 (diff)
downloadnextcloud-server-7f660674de3f2fedf4c63517e16ef67f448090f8.tar.gz
nextcloud-server-7f660674de3f2fedf4c63517e16ef67f448090f8.zip
Add new share attributes column
To store more extended permissions in the future. Signed-off-by: Vincent Petry <vincent@nextcloud.com>
Diffstat (limited to 'core/Migrations')
-rw-r--r--core/Migrations/Version25000Date20220515204012.php52
1 files changed, 52 insertions, 0 deletions
diff --git a/core/Migrations/Version25000Date20220515204012.php b/core/Migrations/Version25000Date20220515204012.php
new file mode 100644
index 00000000000..3483f0eabd9
--- /dev/null
+++ b/core/Migrations/Version25000Date20220515204012.php
@@ -0,0 +1,52 @@
+<?php
+/**
+ * @author Piotr Mrowczynski piotr@owncloud.com
+ *
+ * @copyright Copyright (c) 2019, ownCloud GmbH
+ * @license AGPL-3.0
+ *
+ * This code is free software: you can redistribute it and/or modify
+ * it under the terms of the GNU Affero General Public License, version 3,
+ * as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU Affero General Public License for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License, version 3,
+ * along with this program. If not, see <http://www.gnu.org/licenses/>
+ *
+ */
+
+namespace OC\Core\Migrations;
+
+use Closure;
+use OCP\DB\ISchemaWrapper;
+use OCP\DB\Types;
+use OCP\Migration\IOutput;
+use OCP\Migration\SimpleMigrationStep;
+
+class Version25000Date20220515204012 extends SimpleMigrationStep {
+ public function changeSchema(IOutput $output, Closure $schemaClosure, array $options): ?ISchemaWrapper {
+ /** @var ISchemaWrapper $schema */
+ $schema = $schemaClosure();
+
+ if ($schema->hasTable('share')) {
+ $shareTable = $schema->getTable('share');
+
+ if (!$shareTable->hasColumn('attributes')) {
+ $shareTable->addColumn(
+ 'attributes',
+ Types::JSON,
+ [
+ 'default' => null,
+ 'notnull' => false
+ ]
+ );
+ }
+ }
+
+ return $schema;
+ }
+}