From b555836dc2d676ea019cc9ed00b2da600326bd4d Mon Sep 17 00:00:00 2001 From: tpylak <tpylak> Date: Tue, 8 Nov 2011 18:50:55 +0000 Subject: [PATCH] LMS-2562 allow to set null experiment for datasets SVN: 23601 --- .../cisd/etlserver/registrator/api/v1/impl/DataSet.java | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSet.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSet.java index 47322b0ad03..5a0e46b5f3e 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSet.java +++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSet.java @@ -28,6 +28,7 @@ import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.IDataSetImmut import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.IExperimentImmutable; import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.ISampleImmutable; import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.FileFormatType; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Space; import ch.systemsx.cisd.openbis.generic.shared.dto.NewProperty; @@ -111,7 +112,8 @@ public class DataSet<T extends DataSetInformation> implements IDataSet { this.experiment = experiment; ExperimentImmutable exp = (ExperimentImmutable) experiment; - setExperiment(exp.getExperiment()); + Experiment experimentToSet = (exp != null) ? exp.getExperiment() : null; + setExperiment(experimentToSet); } public ISampleImmutable getSample() @@ -190,7 +192,9 @@ public class DataSet<T extends DataSetInformation> implements IDataSet protected void setExperiment(ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment exp) { registrationDetails.getDataSetInformation().setExperiment(exp); - ExperimentIdentifier experimentId = ExperimentIdentifierFactory.parse(exp.getIdentifier()); + ExperimentIdentifier experimentId = + (exp != null && exp.getIdentifier() != null) ? ExperimentIdentifierFactory + .parse(exp.getIdentifier()) : null; registrationDetails.getDataSetInformation().setExperimentIdentifier(experimentId); } -- GitLab