diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java index 5218926dfd9720dd60faf8af0816656bd9481e5a..6989386d015439544b28fd465c3172f12ba96713 100644 --- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java +++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java @@ -92,8 +92,8 @@ public final class DataSet implements Serializable, IIdHolder private List<DataSet> containedDataSets = Collections.emptyList(); - private DataSet containerOrNull; - + private List<DataSet> containerDataSets = Collections.emptyList(); + private HashMap<String, String> properties = new HashMap<String, String>(); private List<Metaproject> metaprojects = new ArrayList<Metaproject>(); @@ -237,14 +237,15 @@ public final class DataSet implements Serializable, IIdHolder (null == containedDataSets) ? new ArrayList<DataSet>() : containedDataSets; } - public DataSet getContainerOrNull() + public List<DataSet> getContainerDataSets() { - return containerOrNull; + return containerDataSets; } - public void setContainerOrNull(DataSet containerOrNull) + public void setContainerDataSets(List<DataSet> containerDataSets) { - this.containerOrNull = containerOrNull; + this.containerDataSets = + (null == containerDataSets) ? new ArrayList<DataSet>() : containerDataSets; } public boolean isLinkDataSet() @@ -339,7 +340,7 @@ public final class DataSet implements Serializable, IIdHolder private List<DataSet> containedDataSets = Collections.emptyList(); - private DataSet containerOrNull; + private List<DataSet> containerDataSets = Collections.emptyList(); private EntityRegistrationDetails registrationDetails; @@ -384,7 +385,7 @@ public final class DataSet implements Serializable, IIdHolder "Unspecified entity registration details."); this.registrationDetails = initializer.getRegistrationDetails(); this.containerDataSet = initializer.isContainerDataSet(); - this.containerOrNull = initializer.getContainerOrNull(); + this.containerDataSets = initializer.getContainerDataSets(); this.containedDataSets = initializer.getContainedDataSets(); this.linkDataSet = initializer.isLinkDataSet(); this.externalDataSetCode = initializer.getExternalDataSetCode(); @@ -520,10 +521,20 @@ public final class DataSet implements Serializable, IIdHolder /** * @since 1.20 + * @deprecated Use {@link #getContainerDataSets()}. */ + @Deprecated public DataSet getContainerOrNull() { - return containerOrNull; + return containerDataSets.isEmpty() ? null : containerDataSets.get(0); + } + + /** + * @since 1.27 + */ + public List<DataSet> getContainerDataSets() + { + return containerDataSets; } public boolean isLinkDataSet() @@ -692,9 +703,9 @@ public final class DataSet implements Serializable, IIdHolder this.containerDataSet = containerDataSet; } - private void setContainerOrNull(DataSet containerOrNull) + private void setContainerDataSets(List<DataSet> containerDataSets) { - this.containerOrNull = containerOrNull; + this.containerDataSets = containerDataSets; } private void setLinkDataSet(boolean linkDataSet) diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSetFetchOption.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSetFetchOption.java index dd2caa4cbb977cbb8642fa557e27ef83e2cca504..36b44a8d721f5a47a084b04477c792540fc58a8f 100644 --- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSetFetchOption.java +++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSetFetchOption.java @@ -43,7 +43,7 @@ public enum DataSetFetchOption implements FetchOption PARENTS, /** The children of a dataset. */ CHILDREN, - /** The container of a dataset, if it is a contained dataset. */ + /** The containers of a dataset, if it is a contained dataset. */ CONTAINER, /** The contained datasets of a dataset, if it is a container. */ CONTAINED,