From 6ece6b1252f507806477b775e3e8def5d3eceac6 Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Wed, 9 Sep 2009 13:39:18 +0000 Subject: [PATCH] LMS-1165 add getter/setter for parent data set codes. Deprecate getter/setter for single parent data set code. SVN: 12534 --- .../generic/shared/dto/ExtractableData.java | 22 +++++++++++++++---- .../business/bo/ExternalDataBOTest.java | 5 ++++- 2 files changed, 22 insertions(+), 5 deletions(-) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExtractableData.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExtractableData.java index 270196c547e..9555a0247cc 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExtractableData.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExtractableData.java @@ -18,7 +18,9 @@ package ch.systemsx.cisd.openbis.generic.shared.dto; import java.util.ArrayList; import java.util.Date; +import java.util.LinkedHashSet; import java.util.List; +import java.util.Set; import ch.systemsx.cisd.common.annotation.CollectionMapping; import ch.systemsx.cisd.openbis.generic.shared.IServer; @@ -38,8 +40,8 @@ public class ExtractableData extends Code<ExtractableData> private Date productionDate; private String dataProducerCode; - - private String parentDataSetCode; + + private Set<String> parentDataSetCodes = new LinkedHashSet<String>(); private List<NewProperty> dataSetProperties = new ArrayList<NewProperty>(); @@ -83,14 +85,26 @@ public class ExtractableData extends Code<ExtractableData> this.dataProducerCode = dataProducerCode; } + @Deprecated public final String getParentDataSetCode() { - return parentDataSetCode; + return parentDataSetCodes.isEmpty() ? null : parentDataSetCodes.iterator().next(); } + @Deprecated public final void setParentDataSetCode(String parentDataSetCode) { - this.parentDataSetCode = parentDataSetCode; + parentDataSetCodes.add(parentDataSetCode); + } + + public final Set<String> getParentDataSetCodes() + { + return parentDataSetCodes; + } + + public final void setParentDataSetCodes(Set<String> parentDataSetCodes) + { + this.parentDataSetCodes = parentDataSetCodes; } @CollectionMapping(collectionClass = ArrayList.class, elementClass = NewProperty.class) diff --git a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java index 31a56819cd7..5b06b0dafd8 100644 --- a/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java +++ b/openbis/sourceTest/java/ch/systemsx/cisd/openbis/generic/server/business/bo/ExternalDataBOTest.java @@ -591,7 +591,10 @@ public class ExternalDataBOTest extends AbstractBOTest { NewExternalData data = new NewExternalData(); data.setCode(DATA_SET_CODE); - data.setParentDataSetCode(parentDataSetCodeOrNull); + if (parentDataSetCodeOrNull != null) + { + data.setParentDataSetCodes(Collections.singleton(parentDataSetCodeOrNull)); + } data.setDataProducerCode(DATA_PRODUCER_CODE); data.setProductionDate(PRODUCTION_DATE); data.setComplete(BooleanOrUnknown.U); -- GitLab