package com.constellio.app.services.migrations.scripts; import com.constellio.app.entities.modules.MetadataSchemasAlterationHelper; import com.constellio.app.entities.modules.MigrationResourcesProvider; import com.constellio.app.entities.modules.MigrationScript; import com.constellio.app.services.factories.AppLayerFactory; import com.constellio.model.entities.records.wrappers.User; import com.constellio.model.entities.schemas.MetadataValueType; import com.constellio.model.services.schemas.builders.MetadataSchemaTypesBuilder; public class CoreMigrationTo_5_0_4 implements MigrationScript { @Override public String getVersion() { return "5.0.4"; } @Override public void migrate(String collection, MigrationResourcesProvider migrationResourcesProvider, AppLayerFactory appLayerFactory) { new CoreSchemaAlterationFor5_0_4(collection, migrationResourcesProvider, appLayerFactory).migrate(); } class CoreSchemaAlterationFor5_0_4 extends MetadataSchemasAlterationHelper { protected CoreSchemaAlterationFor5_0_4(String collection, MigrationResourcesProvider migrationResourcesProvider, AppLayerFactory appLayerFactory) { super(collection, migrationResourcesProvider, appLayerFactory); } @Override protected void migrate(MetadataSchemaTypesBuilder typesBuilder) { addMetadataToUserSchema(typesBuilder); } private void addMetadataToUserSchema(MetadataSchemaTypesBuilder typesBuilder) { typesBuilder.getSchema(User.DEFAULT_SCHEMA).createUndeletable(User.DEFAULT_TAB_IN_FOLDER_DISPLAY).setType( MetadataValueType.STRING); } } }