From 919ab056988c42a500c0577b66b84f2f7a5b09a9 Mon Sep 17 00:00:00 2001 From: cramakri <cramakri> Date: Mon, 3 May 2010 08:50:17 +0000 Subject: [PATCH] LMS-1153 Use collection versions of data set access predicate. SVN: 15714 --- .../server/DssServiceRpcScreening.java | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java index b9b656889e9..a05f5ce442b 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreening.java @@ -26,6 +26,7 @@ import java.util.ArrayList; import java.util.Arrays; import java.util.Collection; import java.util.List; +import java.util.Map; import com.csvreader.CsvReader; @@ -138,25 +139,23 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc implements public List<ImageDatasetMetadata> listImageMetadata(String sessionToken, List<? extends IImageDatasetIdentifier> imageDatasets) { - try + ArrayList<String> datasetCodes = new ArrayList<String>(); + for (IImageDatasetIdentifier dataset : imageDatasets) + { + datasetCodes.add(dataset.getDatasetCode()); + } + Map<String, File> datasetRoots = + checkAccessAndGetRootDirectories(sessionToken, datasetCodes); + List<ImageDatasetMetadata> result = new ArrayList<ImageDatasetMetadata>(); + for (IImageDatasetIdentifier dataset : imageDatasets) { - List<ImageDatasetMetadata> result = new ArrayList<ImageDatasetMetadata>(); - for (IImageDatasetIdentifier dataset : imageDatasets) + File rootDirectoryOrNull = datasetRoots.get(dataset.getDatasetCode()); + if (rootDirectoryOrNull != null) { - result.add(extractImageMetadata(sessionToken, dataset)); + result.add(extractImageMetadata(dataset, rootDirectoryOrNull)); } - return result; - } catch (IOException ex) - { - throw wrapIOException(ex); } - } - - private ImageDatasetMetadata extractImageMetadata(String sessionToken, - IImageDatasetIdentifier dataset) throws IOException - { - File datasetRoot = checkAccessAndGetRootDirectory(sessionToken, dataset.getDatasetCode()); - return extractImageMetadata(dataset, datasetRoot); + return result; } private static ImageDatasetMetadata extractImageMetadata(IImageDatasetIdentifier dataset, -- GitLab