From ecdd2181ad4de676a21db8d783819c0552cb5555 Mon Sep 17 00:00:00 2001 From: jakubs <jakubs> Date: Wed, 19 Sep 2012 14:58:12 +0000 Subject: [PATCH] BIS-195 provide listing samples and datasets in experiment adaptor SVN: 26683 --- .../calculator/ExperimentAdaptor.java | 29 +++++++++++++++++++ .../calculator/api/IExperimentAdaptor.java | 6 ++++ 2 files changed, 35 insertions(+) diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/ExperimentAdaptor.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/ExperimentAdaptor.java index b4c34377140..a783b017255 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/ExperimentAdaptor.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/ExperimentAdaptor.java @@ -16,10 +16,17 @@ package ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator; +import java.util.ArrayList; +import java.util.List; + import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.IDynamicPropertyEvaluator; +import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator.api.IDataAdaptor; import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator.api.IEntityAdaptor; import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator.api.IExperimentAdaptor; +import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator.api.ISampleAdaptor; +import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE; import ch.systemsx.cisd.openbis.generic.shared.dto.ExperimentPE; +import ch.systemsx.cisd.openbis.generic.shared.dto.SamplePE; /** * {@link IEntityAdaptor} implementation for {@link ExperimentPE}. @@ -48,4 +55,26 @@ public class ExperimentAdaptor extends AbstractEntityAdaptor implements IExperim return experimentPE(); } + @Override + public List<ISampleAdaptor> samples() + { + List<ISampleAdaptor> list = new ArrayList<ISampleAdaptor>(); + for (SamplePE sample : experimentPE.getSamples()) + { + list.add(EntityAdaptorFactory.create(sample, evaluator)); + } + return list; + } + + @Override + public List<IDataAdaptor> dataSets() + { + List<IDataAdaptor> list = new ArrayList<IDataAdaptor>(); + for (DataPE dataset : experimentPE.getDataSets()) + { + list.add(EntityAdaptorFactory.create(dataset, evaluator)); + } + return list; + } + } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/api/IExperimentAdaptor.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/api/IExperimentAdaptor.java index b6fa496c0a9..74f0b6efa25 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/api/IExperimentAdaptor.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/dataaccess/dynamic_property/calculator/api/IExperimentAdaptor.java @@ -16,6 +16,8 @@ package ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator.api; +import java.util.List; + import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calculator.INonAbstractEntityAdapter; /** @@ -23,5 +25,9 @@ import ch.systemsx.cisd.openbis.generic.server.dataaccess.dynamic_property.calcu */ public interface IExperimentAdaptor extends INonAbstractEntityAdapter { + /** Return the samples belonging to this experiment */ + List<ISampleAdaptor> samples(); + /** Return the datasets belonging to this experiment */ + List<IDataAdaptor> dataSets(); } -- GitLab