diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/ConversionUtils.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/ConversionUtils.java index 3d251dc2880405f70101a759d9589ce9efbb6579..1e58e371d740767e7d8ea7ae23159b4feba97fe1 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/ConversionUtils.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/ConversionUtils.java @@ -300,9 +300,11 @@ public class ConversionUtils public static ProjectUpdatesDTO convertToProjectUpdateDTO(Project apiProject) { final ProjectUpdatesDTO projectUpdate = new ProjectUpdatesDTO(); + projectUpdate.setIdentifier(apiProject.getProjectIdentifier()); projectUpdate.setTechId(new TechId(apiProject.getId())); projectUpdate.setDescription(apiProject.getDescription()); projectUpdate.setAttachments(apiProject.getNewAttachments()); + projectUpdate.setVersion(apiProject.getProject().getVersion()); return projectUpdate; } diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/ConversionUtils.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/ConversionUtils.java index 8df91857c14da2c7dd71902d1956f60f4c018eb7..e3f4dd84660f4a335a01dfa9c3ec5dcf882c41a4 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/ConversionUtils.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v2/impl/ConversionUtils.java @@ -300,9 +300,11 @@ public class ConversionUtils public static ProjectUpdatesDTO convertToProjectUpdateDTO(Project apiProject) { final ProjectUpdatesDTO projectUpdate = new ProjectUpdatesDTO(); + projectUpdate.setIdentifier(apiProject.getProjectIdentifier()); projectUpdate.setTechId(new TechId(apiProject.getId())); projectUpdate.setDescription(apiProject.getDescription()); projectUpdate.setAttachments(apiProject.getNewAttachments()); + projectUpdate.setVersion(apiProject.getProject().getVersion()); return projectUpdate; } diff --git a/datastore_server/sourceTest/core-plugins/generic-test/1/dss/drop-boxes/rich-test/rich-data-set-handler.py b/datastore_server/sourceTest/core-plugins/generic-test/1/dss/drop-boxes/rich-test/rich-data-set-handler.py index e22608586530eb0123ccaf88d61e6963b716599d..296d439148e6abdfbdea77e1235f60baeeda46e8 100644 --- a/datastore_server/sourceTest/core-plugins/generic-test/1/dss/drop-boxes/rich-test/rich-data-set-handler.py +++ b/datastore_server/sourceTest/core-plugins/generic-test/1/dss/drop-boxes/rich-test/rich-data-set-handler.py @@ -29,6 +29,9 @@ def create_project_if_needed(transaction): create_space_if_needed(transaction) project = transaction.createNewProject(PROJECT_ID) project.setDescription("A demo project") + f = open("%s/%s" % (transaction.getIncoming().getPath(), "set1.txt"), 'r') + project.addAttachment("attachment.txt", 'Source Import File', 'Source Import File ', f.read()) + f.close() def create_experiment_if_needed(transaction): exp = transaction.getExperiment(EXPERIMENT_ID) diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/datastoreserver/systemtests/FeatureRichDataSetImportSystemTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/datastoreserver/systemtests/FeatureRichDataSetImportSystemTest.java index 6dd5993169fe56a6eb1c87118e05a0874629f448..8736bf82e0df03105e497a65b23a92ca897154e6 100644 --- a/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/datastoreserver/systemtests/FeatureRichDataSetImportSystemTest.java +++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/openbis/datastoreserver/systemtests/FeatureRichDataSetImportSystemTest.java @@ -26,8 +26,11 @@ import org.testng.annotations.Test; import ch.systemsx.cisd.common.filesystem.FileUtilities; import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService; import ch.systemsx.cisd.openbis.dss.generic.shared.ServiceProvider; -import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; +import ch.systemsx.cisd.openbis.generic.shared.api.v1.IGeneralInformationService; +import ch.systemsx.cisd.openbis.generic.shared.api.v1.dto.Attachment; +import ch.systemsx.cisd.openbis.generic.shared.api.v1.dto.id.project.ProjectTechIdId; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.AbstractExternalData; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.LinkDataSet; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListMaterialCriteria; @@ -118,12 +121,19 @@ public class FeatureRichDataSetImportSystemTest extends SystemTestCase { List<Project> projects = openBISService.listProjects(); boolean notFound = true; + for (Project p : projects) { if (p.getIdentifier().equals("/RICH_SPACE/RICH_PROJECT")) { notFound = false; assertEquals("RICH_SPACE", p.getSpace().getCode()); + + IGeneralInformationService generalInformationService = ServiceProvider.getGeneralInformationService(); + String sessionToken = generalInformationService.tryToAuthenticateForAllServices("test", "test"); + List<Attachment> attachments = + generalInformationService.listAttachmentsForProject(sessionToken, new ProjectTechIdId(p.getId()), true); + assertEquals(1, attachments.size()); } } if (notFound)