From 2f6f494e0201c67ec10aa7f3d9bbf18104b45caa Mon Sep 17 00:00:00 2001 From: felmer <felmer> Date: Wed, 7 Oct 2009 12:14:07 +0000 Subject: [PATCH] LMS-1219 Extends IEncapsulatedOpenBISService with listSamples method SVN: 12875 --- .../server/EncapsulatedOpenBISService.java | 21 +++++++++++++++++++ .../shared/IEncapsulatedOpenBISService.java | 6 ++++++ 2 files changed, 27 insertions(+) diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java index ad69e0b4b8a..310414b01ed 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/EncapsulatedOpenBISService.java @@ -36,6 +36,7 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DeletedDataSet; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListSampleCriteria; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample; import ch.systemsx.cisd.openbis.generic.shared.dto.DataStoreServerInfo; import ch.systemsx.cisd.openbis.generic.shared.dto.DatastoreServiceDescriptions; @@ -182,6 +183,11 @@ public final class EncapsulatedOpenBISService implements IEncapsulatedOpenBISSer { return service.tryToGetExperiment(sessionToken, experimentIdentifier); } + + private List<Sample> primListSamples(ListSampleCriteria criteria) + { + return service.listSamples(sessionToken, criteria); + } private final Sample primTryGetSampleWithExperiment(final SampleIdentifier sampleIdentifier) { @@ -238,6 +244,21 @@ public final class EncapsulatedOpenBISService implements IEncapsulatedOpenBISSer } } + synchronized public List<Sample> listSamples(ListSampleCriteria criteria) + { + assert criteria != null : "Unspecifed criteria."; + + checkSessionToken(); + try + { + return primListSamples(criteria); + } catch (InvalidSessionException ex) + { + authenticate(); + return primListSamples(criteria); + } + } + synchronized public final Sample tryGetSampleWithExperiment( final SampleIdentifier sampleIdentifier) { diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java index ba481bd5e46..184400c222e 100644 --- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java +++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/IEncapsulatedOpenBISService.java @@ -26,6 +26,7 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DeletedDataSet; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Experiment; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty; +import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListSampleCriteria; import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample; import ch.systemsx.cisd.openbis.generic.shared.dto.ListSamplesByPropertyCriteria; import ch.systemsx.cisd.openbis.generic.shared.dto.NewExternalData; @@ -54,6 +55,11 @@ public interface IEncapsulatedOpenBISService public Experiment tryToGetExperiment(ExperimentIdentifier experimentIdentifier) throws UserFailureException; + /** + * Gets all sample in accordance to the specified criteria. + */ + public List<Sample> listSamples(final ListSampleCriteria criteria) throws UserFailureException; + /** * Gets a sample with the specified identifier. Sample is enriched with properties and the * experiment with properties. -- GitLab