diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java index 843528a8ee46a617140faa1f3e00c3e2628e279b..c2a1e36ab48cf129aab133e11e0c5741bd067663 100644 --- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java +++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageStorageProcessor.java @@ -285,10 +285,7 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im extractionResultWithConfig.getExtractionResult() .getDatasetRelativeImagesFolderPath(); - ImageDataSetInformation imageDataSetInformation = - (ImageDataSetInformation) dataSetInformation; - - if (false == imageDataSetInformation.getRegisterAsOverviewImageDataSet()) + if (false == getRegisterAsOverviewImageDataSet(dataSetInformation)) { processImages(plateImages, datasetRelativeImagesFolderPath, imageStorageConfiguraton); @@ -296,15 +293,24 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im shouldDeleteOriginalDataOnCommit = imageStorageConfiguraton.getOriginalDataStorageFormat().isHdf5() - && false == imageDataSetInformation.getRegisterAsOverviewImageDataSet(); + && false == getRegisterAsOverviewImageDataSet(dataSetInformation); dbTransaction = processor.createQuery(); processor.storeInDatabase(dbTransaction, extractionResultWithConfig.getImageDatasetOwner(), extractionResult, - imageDataSetInformation.getRegisterAsOverviewImageDataSet()); + getRegisterAsOverviewImageDataSet(dataSetInformation)); return rootDirectory; } + + private boolean getRegisterAsOverviewImageDataSet(DataSetInformation dataSetInfo) + { + if (dataSetInfo instanceof ImageDataSetInformation == false) + { + return false; + } + return ((ImageDataSetInformation) dataSetInfo).getRegisterAsOverviewImageDataSet(); + } private void processImages(List<AcquiredSingleImage> images, File datasetRelativeImagesFolderPath,