From d1e91dc51a0f5eb53817afdc01d0c01739c25799 Mon Sep 17 00:00:00 2001
From: tpylak <tpylak>
Date: Mon, 16 Aug 2010 09:27:38 +0000
Subject: [PATCH] LMS-1645 dynamix: add a flag to a dataset which says if any
 spot has timepoints/depth-stack

SVN: 17465
---
 .../openbis/dss/etl/HCSDatasetUploader.java   |  8 +--
 .../openbis/dss/etl/ImageDatasetInfo.java     | 58 +++++++++++++++++++
 .../dss/etl/ImagingDatabaseVersionHolder.java |  2 +-
 .../dss/etl/PlateStorageProcessor.java        | 26 ++++++---
 .../etl/ScreeningContainerDatasetInfo.java    | 22 -------
 .../ScreeningContainerDatasetInfoHelper.java  | 13 +++--
 .../featurevector/FeatureVectorUploader.java  |  2 +-
 .../application/detailviewers/WellImages.java |  9 +++
 .../logic/PlateImageParametersFactory.java    |  1 +
 .../basic/dto/PlateImageParameters.java       | 13 +++++
 .../shared/imaging/HCSDatasetLoader.java      |  5 ++
 .../shared/imaging/IHCSDatasetLoader.java     |  2 +
 .../imaging/dataaccess/IImagingQueryDAO.java  |  4 +-
 .../imaging/dataaccess/ImgDatasetDTO.java     | 17 +++++-
 .../genedata/FeatureStorageProcessorTest.java |  2 +-
 ...AnalysisMergedRowsReportingPluginTest.java |  2 +-
 .../server/DssServiceRpcScreeningTest.java    |  3 +-
 .../dataaccess/FeatureVectorDAOTest.java      |  2 +-
 .../dataaccess/ImagingQueryDAOTest.java       |  2 +-
 19 files changed, 144 insertions(+), 49 deletions(-)
 create mode 100644 screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageDatasetInfo.java

diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSDatasetUploader.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSDatasetUploader.java
index c71b2ddd3eb..5178e36ea11 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSDatasetUploader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSDatasetUploader.java
@@ -40,7 +40,7 @@ import ch.systemsx.cisd.openbis.plugin.screening.shared.imaging.dataaccess.ImgSp
  */
 public class HCSDatasetUploader
 {
-    public static void upload(IImagingQueryDAO dao, ScreeningContainerDatasetInfo info,
+    public static void upload(IImagingQueryDAO dao, ImageDatasetInfo info,
             List<AcquiredPlateImage> images, Set<HCSImageFileExtractionResult.Channel> channels)
     {
         new HCSDatasetUploader(dao).upload(info, images, channels);
@@ -53,7 +53,7 @@ public class HCSDatasetUploader
         this.dao = dao;
     }
 
-    private void upload(ScreeningContainerDatasetInfo info, List<AcquiredPlateImage> images,
+    private void upload(ImageDatasetInfo info, List<AcquiredPlateImage> images,
             Set<HCSImageFileExtractionResult.Channel> channels)
     {
         ExperimentWithChannelsAndContainer basicStruct =
@@ -360,8 +360,8 @@ public class HCSDatasetUploader
         }
     }
 
-    private long createDataset(long contId, ScreeningContainerDatasetInfo info)
+    private long createDataset(long contId, ImageDatasetInfo info)
     {
-        return ScreeningContainerDatasetInfoHelper.createDataset(dao, info, contId);
+        return ScreeningContainerDatasetInfoHelper.createImageDataset(dao, info, contId);
     }
 }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageDatasetInfo.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageDatasetInfo.java
new file mode 100644
index 00000000000..3dfcfd3014c
--- /dev/null
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageDatasetInfo.java
@@ -0,0 +1,58 @@
+/*
+ * Copyright 2010 ETH Zuerich, CISD
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package ch.systemsx.cisd.openbis.dss.etl;
+
+/**
+ * Describes one image dataset from imaging database.
+ * 
+ * @author Tomasz Pylak
+ */
+public class ImageDatasetInfo extends ScreeningContainerDatasetInfo
+{
+    private final int tileRows, tileColumns;
+
+    // has any well timepoints or depth stack images?
+    private final boolean hasImageSeries;
+
+    public ImageDatasetInfo(ScreeningContainerDatasetInfo info, int tileRows, int tileColumns,
+            boolean hasImageSeries)
+    {
+        super.setContainerRows(info.getContainerRows());
+        super.setContainerColumns(info.getContainerColumns());
+        super.setContainerPermId(info.getContainerPermId());
+        super.setDatasetPermId(info.getDatasetPermId());
+        super.setExperimentPermId(info.getExperimentPermId());
+        this.tileRows = tileRows;
+        this.tileColumns = tileColumns;
+        this.hasImageSeries = hasImageSeries;
+    }
+
+    public int getTileRows()
+    {
+        return tileRows;
+    }
+
+    public int getTileColumns()
+    {
+        return tileColumns;
+    }
+
+    public boolean hasImageSeries()
+    {
+        return hasImageSeries;
+    }
+}
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingDatabaseVersionHolder.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingDatabaseVersionHolder.java
index 16f79dcb957..17cd546d209 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingDatabaseVersionHolder.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingDatabaseVersionHolder.java
@@ -28,7 +28,7 @@ public class ImagingDatabaseVersionHolder implements IDatabaseVersionHolder
 
     public String getDatabaseVersion()
     {
-        return "004"; // changed in S86
+        return "005"; // changed in S88
     }
 
 }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateStorageProcessor.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateStorageProcessor.java
index f4be0d65f92..e82fc4ec2b9 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateStorageProcessor.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateStorageProcessor.java
@@ -205,16 +205,26 @@ public final class PlateStorageProcessor extends AbstractStorageProcessor
 
     // ---------------------------------
 
-    private ScreeningContainerDatasetInfo createScreeningDatasetInfo(Experiment experiment,
-            DataSetInformation dataSetInformation)
+    private ImageDatasetInfo createImageDatasetInfo(Experiment experiment,
+            DataSetInformation dataSetInformation, HCSImageFileExtractionResult extractionResult)
     {
         ScreeningContainerDatasetInfo info =
                 ScreeningContainerDatasetInfo.createScreeningDatasetInfo(dataSetInformation);
+        boolean hasImageSeries = hasImageSeries(extractionResult.getImages());
+        return new ImageDatasetInfo(info, spotGeometry.getRows(), spotGeometry.getColumns(),
+                hasImageSeries);
+    }
 
-        info.setTileRows(spotGeometry.getRows());
-        info.setTileColumns(spotGeometry.getColumns());
-
-        return info;
+    private boolean hasImageSeries(List<AcquiredPlateImage> images)
+    {
+        for (AcquiredPlateImage image : images)
+        {
+            if (image.tryGetTimePoint() != null || image.tryGetDepth() != null)
+            {
+                return true;
+            }
+        }
+        return false;
     }
 
     private PlateDimension getPlateGeometry(final DataSetInformation dataSetInformation)
@@ -506,8 +516,8 @@ public final class PlateStorageProcessor extends AbstractStorageProcessor
     private void storeInDatabase(Experiment experiment, DataSetInformation dataSetInformation,
             HCSImageFileExtractionResult extractionResult)
     {
-        ScreeningContainerDatasetInfo info =
-                createScreeningDatasetInfo(experiment, dataSetInformation);
+        ImageDatasetInfo info =
+                createImageDatasetInfo(experiment, dataSetInformation, extractionResult);
 
         if (currentTransaction != null)
         {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfo.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfo.java
index e2665aa68bb..202b9868ba8 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfo.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfo.java
@@ -39,8 +39,6 @@ public class ScreeningContainerDatasetInfo
 
     private int containerRows, containerColumns;
 
-    private int tileRows, tileColumns;
-
     public String getExperimentPermId()
     {
         return experimentPermId;
@@ -91,26 +89,6 @@ public class ScreeningContainerDatasetInfo
         this.containerColumns = containerColumns;
     }
 
-    public int getTileRows()
-    {
-        return tileRows;
-    }
-
-    public void setTileRows(int tileRows)
-    {
-        this.tileRows = tileRows;
-    }
-
-    public int getTileColumns()
-    {
-        return tileColumns;
-    }
-
-    public void setTileColumns(int tileColumns)
-    {
-        this.tileColumns = tileColumns;
-    }
-
     public static ScreeningContainerDatasetInfo createScreeningDatasetInfo(
             DataSetInformation dataSetInformation)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfoHelper.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfoHelper.java
index 1950bf52606..d8c418fc7c7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfoHelper.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ScreeningContainerDatasetInfoHelper.java
@@ -49,18 +49,21 @@ public class ScreeningContainerDatasetInfoHelper
         return getOrCreateExperimentAndContainer(dao, info);
     }
 
-    public long createDataset(long contId, ScreeningContainerDatasetInfo info)
+    public long createFeatureVectorDataset(long contId, ScreeningContainerDatasetInfo info)
     {
-        return createDataset(dao, info, contId);
+        boolean isMultidimensional = false;
+        ImgDatasetDTO dataset =
+                new ImgDatasetDTO(info.getDatasetPermId(), 0, 0, contId, isMultidimensional);
+        return dao.addDataset(dataset);
     }
 
     // Package-visible static methods
-    public static long createDataset(IImagingQueryDAO dao, ScreeningContainerDatasetInfo info,
-            long contId)
+
+    public static long createImageDataset(IImagingQueryDAO dao, ImageDatasetInfo info, long contId)
     {
         ImgDatasetDTO dataset =
                 new ImgDatasetDTO(info.getDatasetPermId(), info.getTileRows(), info
-                        .getTileColumns(), contId);
+                        .getTileColumns(), contId, info.hasImageSeries());
         return dao.addDataset(dataset);
     }
 
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorUploader.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorUploader.java
index 93a7ac8d55f..cf03d77e198 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorUploader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorUploader.java
@@ -49,7 +49,7 @@ public class FeatureVectorUploader
     {
         ScreeningContainerDatasetInfoHelper helper = new ScreeningContainerDatasetInfoHelper(dao);
         long contId = helper.getOrCreateExperimentAndContainer(info).getContainerId();
-        long dataSetId = helper.createDataset(contId, info);
+        long dataSetId = helper.createFeatureVectorDataset(contId, info);
 
         uploadFeatureVectors(dao, fvecs, dataSetId);
     }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellImages.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellImages.java
index a7903535a17..c8c722b2393 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellImages.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellImages.java
@@ -41,11 +41,15 @@ public class WellImages
 
     private final WellLocation location;
 
+    // has timepoints or depth stack?
+    private final boolean isMultidimensional;
+
     public WellImages(PlateImageParameters imageParams, String downloadUrl, WellLocation location)
     {
         this.tileRowsNum = imageParams.getTileRowsNum();
         this.tileColsNum = imageParams.getTileColsNum();
         this.channelsNames = imageParams.getChannelsNames();
+        this.isMultidimensional = imageParams.isMultidimensional();
         this.datasetCode = imageParams.getDatasetCode();
         this.downloadUrl = downloadUrl;
         this.location = location;
@@ -85,4 +89,9 @@ public class WellImages
     {
         return datasetCode;
     }
+
+    public boolean isMultidimensional()
+    {
+        return isMultidimensional;
+    }
 }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateImageParametersFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateImageParametersFactory.java
index 87f34c1e828..844206a7169 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateImageParametersFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateImageParametersFactory.java
@@ -45,6 +45,7 @@ public class PlateImageParametersFactory
         params.setColsNum(plateGeometry.getColumns());
         params.setTileRowsNum(wellGeometry.getRows());
         params.setTileColsNum(wellGeometry.getColumns());
+        params.setIsMultidimensional(loader.isMultidimensional());
         List<String> escapedChannelNames = new ArrayList<String>();
         for (String name : channelsNames)
         {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/PlateImageParameters.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/PlateImageParameters.java
index d220609c506..5f3dbc41fcd 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/PlateImageParameters.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/PlateImageParameters.java
@@ -40,6 +40,9 @@ public class PlateImageParameters implements IsSerializable
 
     private List<String> channelsNames;
 
+    // true if any well in the dataset has a time series (or depth stack) of images
+    private boolean isMultidimensional;
+
     public int getRowsNum()
     {
         return rowsNum;
@@ -105,4 +108,14 @@ public class PlateImageParameters implements IsSerializable
         return channelsNames.size();
     }
 
+    public boolean isMultidimensional()
+    {
+        return isMultidimensional;
+    }
+
+    public void setIsMultidimensional(boolean isMultidimensional)
+    {
+        this.isMultidimensional = isMultidimensional;
+    }
+
 }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSDatasetLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSDatasetLoader.java
index 5b27abff787..eb86a4ad9d1 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSDatasetLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSDatasetLoader.java
@@ -110,4 +110,9 @@ public class HCSDatasetLoader implements IHCSDatasetLoader
         }
         return channelNames;
     }
+
+    public boolean isMultidimensional()
+    {
+        return dataset.getIsMultidimensional();
+    }
 }
\ No newline at end of file
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/IHCSDatasetLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/IHCSDatasetLoader.java
index 14feaf5983a..c8c5c933b13 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/IHCSDatasetLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/IHCSDatasetLoader.java
@@ -37,4 +37,6 @@ public interface IHCSDatasetLoader
 
     List<String> getChannelsNames();
 
+    boolean isMultidimensional();
+
 }
\ No newline at end of file
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/IImagingQueryDAO.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/IImagingQueryDAO.java
index 3be6357d8d2..2215a84ca86 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/IImagingQueryDAO.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/IImagingQueryDAO.java
@@ -132,9 +132,9 @@ public interface IImagingQueryDAO extends TransactionQuery
             + "(?{1.permId}, ?{1.numberOfColumns}, ?{1.numberOfRows}, ?{1.experimentId}) returning ID")
     public long addContainer(ImgContainerDTO container);
 
-    @Select("insert into DATA_SETS (PERM_ID, FIELDS_WIDTH, FIELDS_HEIGHT, CONT_ID) values "
+    @Select("insert into DATA_SETS (PERM_ID, FIELDS_WIDTH, FIELDS_HEIGHT, CONT_ID, IS_MULTIDIMENSIONAL) values "
             + "(?{1.permId}, ?{1.fieldNumberOfColumns}, "
-            + "?{1.fieldNumberOfRows}, ?{1.containerId}) returning ID")
+            + "?{1.fieldNumberOfRows}, ?{1.containerId}, ?{1.isMultidimensional}) returning ID")
     public long addDataset(ImgDatasetDTO dataset);
 
     @Select("insert into SPOTS (X, Y, CONT_ID, PERM_ID) values "
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImgDatasetDTO.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImgDatasetDTO.java
index 58cf4871a10..0cdc5b7e641 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImgDatasetDTO.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImgDatasetDTO.java
@@ -41,6 +41,11 @@ public class ImgDatasetDTO extends AbstractHashable
     @ResultColumn("CONT_ID")
     private long containerId;
 
+    // a redundant information if there are timepoint or depth stack data for any spots in this
+    // dataset
+    @ResultColumn("IS_MULTIDIMENSIONAL")
+    private boolean isMultidimensional;
+
     @SuppressWarnings("unused")
     private ImgDatasetDTO()
     {
@@ -48,12 +53,13 @@ public class ImgDatasetDTO extends AbstractHashable
     }
 
     public ImgDatasetDTO(String permId, Integer fieldNumberOfRowsOrNull,
-            Integer fieldNumberOfColumnsOrNull, long containerId)
+            Integer fieldNumberOfColumnsOrNull, long containerId, boolean isMultidimensional)
     {
         this.permId = permId;
         this.fieldNumberOfColumnsOrNull = fieldNumberOfColumnsOrNull;
         this.fieldNumberOfRowsOrNull = fieldNumberOfRowsOrNull;
         this.containerId = containerId;
+        this.isMultidimensional = isMultidimensional;
     }
 
     public long getId()
@@ -106,4 +112,13 @@ public class ImgDatasetDTO extends AbstractHashable
         this.containerId = containerId;
     }
 
+    public boolean getIsMultidimensional()
+    {
+        return isMultidimensional;
+    }
+
+    public void setMultidimensional(boolean isMultidimensional)
+    {
+        this.isMultidimensional = isMultidimensional;
+    }
 }
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/etl/genedata/FeatureStorageProcessorTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/etl/genedata/FeatureStorageProcessorTest.java
index 6cfc05a3cce..bd5de1755f2 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/etl/genedata/FeatureStorageProcessorTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/etl/genedata/FeatureStorageProcessorTest.java
@@ -90,7 +90,7 @@ public class FeatureStorageProcessorTest extends AbstractFileSystemTestCase
                     one(dao).tryGetContainerIdPermId(CONTAINER_PERM_ID);
                     will(returnValue((long) 1));
 
-                    ImgDatasetDTO dataSetDTO = new ImgDatasetDTO(DATA_SET_PERM_ID, 3, 2, 1);
+                    ImgDatasetDTO dataSetDTO = new ImgDatasetDTO(DATA_SET_PERM_ID, 3, 2, 1, false);
                     dataSetDTO.setId(1);
                     one(dao).tryGetDatasetByPermId(DATA_SET_PERM_ID);
                     will(returnValue(dataSetDTO));
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPluginTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPluginTest.java
index 111f1106b35..3d90f3cad96 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPluginTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPluginTest.java
@@ -165,7 +165,7 @@ public class ImageAnalysisMergedRowsReportingPluginTest extends AssertJUnit
 
     private ImgDatasetDTO createDataSet(long id)
     {
-        ImgDatasetDTO datasetDTO = new ImgDatasetDTO("ds" + id, null, null, 100 + id);
+        ImgDatasetDTO datasetDTO = new ImgDatasetDTO("ds" + id, null, null, 100 + id, false);
         datasetDTO.setId(id);
         return datasetDTO;
     }
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningTest.java
index cfee975dad3..f04be63eec0 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningTest.java
@@ -196,7 +196,8 @@ public class DssServiceRpcScreeningTest extends AssertJUnit
                 {
                     String permID = "ds" + dataSetID;
                     one(dao).tryGetDatasetByPermId(permID);
-                    ImgDatasetDTO dataSet = new ImgDatasetDTO(permID, null, null, 100 + dataSetID);
+                    ImgDatasetDTO dataSet =
+                            new ImgDatasetDTO(permID, null, null, 100 + dataSetID, false);
                     dataSet.setId(dataSetID);
                     will(returnValue(dataSet));
 
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/FeatureVectorDAOTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/FeatureVectorDAOTest.java
index fdc7524e893..eafbf6a7be6 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/FeatureVectorDAOTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/FeatureVectorDAOTest.java
@@ -76,7 +76,7 @@ public class FeatureVectorDAOTest extends AbstractDBTest
         final Integer fieldsWidth = 1;
         final Integer fieldsHeight = 2;
         final ImgDatasetDTO ds =
-                new ImgDatasetDTO(DS_PERM_ID, fieldsHeight, fieldsWidth, containerId);
+                new ImgDatasetDTO(DS_PERM_ID, fieldsHeight, fieldsWidth, containerId, false);
         final long datasetId = imagingDao.addDataset(ds);
 
         ds.setId(datasetId);
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImagingQueryDAOTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImagingQueryDAOTest.java
index cebff7e0f88..e43394408cf 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImagingQueryDAOTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/ImagingQueryDAOTest.java
@@ -210,7 +210,7 @@ public class ImagingQueryDAOTest extends AbstractDBTest
         final Integer fieldsWidth = 1;
         final Integer fieldsHeight = 2;
         final ImgDatasetDTO dataset =
-                new ImgDatasetDTO(permId, fieldsHeight, fieldsWidth, containerId);
+                new ImgDatasetDTO(permId, fieldsHeight, fieldsWidth, containerId, false);
         final long datasetId = dao.addDataset(dataset);
 
         final ImgDatasetDTO loadedDataset = dao.tryGetDatasetByPermId(DS_PERM_ID);
-- 
GitLab