package com.constellio.app.modules.tasks.migrations; import com.constellio.app.entities.modules.MigrationResourcesProvider; import com.constellio.app.entities.modules.MigrationScript; import com.constellio.app.modules.tasks.model.wrappers.Task; import com.constellio.app.modules.tasks.model.wrappers.types.TaskStatus; import com.constellio.app.modules.tasks.services.TasksSchemasRecordsServices; import com.constellio.app.services.factories.AppLayerFactory; import com.constellio.model.services.schemas.MetadataSchemaTypesAlteration; import com.constellio.model.services.schemas.builders.MetadataSchemaBuilder; import com.constellio.model.services.schemas.builders.MetadataSchemaTypesBuilder; public class TasksMigrationTo7_2 implements MigrationScript { @Override public String getVersion() { return "7.2"; } @Override public void migrate(String collection, MigrationResourcesProvider migrationResourcesProvider, AppLayerFactory appLayerFactory) throws Exception { TasksSchemasRecordsServices tasks = new TasksSchemasRecordsServices(collection, appLayerFactory); final TaskStatus status = tasks.getTaskStatusWithCode(TaskStatus.STANDBY_CODE); appLayerFactory.getModelLayerFactory().getMetadataSchemasManager() .modify(collection, new MetadataSchemaTypesAlteration() { @Override public void alter(MetadataSchemaTypesBuilder types) { for (MetadataSchemaBuilder schema : types.getSchemaType(Task.SCHEMA_TYPE).getAllSchemas()) { schema.getMetadata(Task.STATUS).setDefaultValue(status.getId()); } } }); } }