diff --git a/screening/source/java/OpenBISScreeningML.java b/screening/source/java/OpenBISScreeningML.java
index ee6488377451b94e172645e5fba86e3f5ef878b2..91b39e967696d4209d63f480de11109b94f64f16 100644
--- a/screening/source/java/OpenBISScreeningML.java
+++ b/screening/source/java/OpenBISScreeningML.java
@@ -1123,6 +1123,7 @@ public class OpenBISScreeningML
         TableMap<String, DataSet> dataSetMap =
                 new TableMap<String, DataSet>(dataSets, new IKeyExtractor<String, DataSet>()
                     {
+                        @Override
                         public String getKey(DataSet e)
                         {
                             return e.getCode();
@@ -1442,32 +1443,38 @@ public class OpenBISScreeningML
             {
                 private int maximumNumberOfTiles;
 
+                @Override
                 public void setMaximumNumberOfTiles(int numberOfTiles)
                 {
                     this.maximumNumberOfTiles = numberOfTiles;
                 }
 
+                @Override
                 public int getMaximumNumberOfTiles()
                 {
                     return maximumNumberOfTiles;
                 }
 
+                @Override
                 public Iterator<Integer> iterator()
                 {
                     return new Iterator<Integer>()
                         {
                             private int index;
 
+                            @Override
                             public boolean hasNext()
                             {
                                 return index < maximumNumberOfTiles;
                             }
 
+                            @Override
                             public Integer next()
                             {
                                 return index++;
                             }
 
+                            @Override
                             public void remove()
                             {
                                 throw new UnsupportedOperationException();
@@ -1537,6 +1544,7 @@ public class OpenBISScreeningML
     {
         return new ITileNumberIterable()
             {
+                @Override
                 public void setMaximumNumberOfTiles(int numberOfTiles)
                 {
                     if (tile >= numberOfTiles)
@@ -1546,28 +1554,33 @@ public class OpenBISScreeningML
                     }
                 }
 
+                @Override
                 public int getMaximumNumberOfTiles()
                 {
                     return 1;
                 }
 
+                @Override
                 public Iterator<Integer> iterator()
                 {
                     return new Iterator<Integer>()
                         {
                             private boolean delivered;
 
+                            @Override
                             public boolean hasNext()
                             {
                                 return delivered == false;
                             }
 
+                            @Override
                             public Integer next()
                             {
                                 delivered = true;
                                 return tile;
                             }
 
+                            @Override
                             public void remove()
                             {
                                 throw new UnsupportedOperationException();
@@ -1755,6 +1768,7 @@ public class OpenBISScreeningML
         {
             openbis.loadImages(imageReferences, new IImageOutputStreamProvider()
                 {
+                    @Override
                     public OutputStream getOutputStream(PlateImageReference imageReference)
                             throws IOException
                     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageDatasetUploader.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageDatasetUploader.java
index 8a0c585507b090a2ed125cef6d80afe3a56c0aa1..8d641d38e806f8c73f4d351469c254e08058f249 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageDatasetUploader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageDatasetUploader.java
@@ -324,6 +324,7 @@ abstract class AbstractImageDatasetUploader
         {
             return new Comparator<ImgChannelStackDTO>()
                 {
+                    @Override
                     public int compare(ImgChannelStackDTO o1, ImgChannelStackDTO o2)
                     {
                         int cmp = compareNullable(o1.getRow(), o2.getRow());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageFileExtractor.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageFileExtractor.java
index c8ccb28a8c75d4915a6b46a8a6dca7065028d232..517facb2e2ecf3de2fd15c0c1e2f376551dcda02 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageFileExtractor.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/AbstractImageFileExtractor.java
@@ -215,6 +215,7 @@ abstract public class AbstractImageFileExtractor implements IImageFileExtractor
         }
     }
 
+    @Override
     public ch.systemsx.cisd.openbis.dss.etl.ImageFileExtractionResult extract(
             File incomingDataSetDirectory, DataSetInformation dataSetInformation)
     {
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 67099adfe536b82c8cd2dc69af6d195239c70d5b..94edd676740bbcaa452155df18ff95444effea0d 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
@@ -390,6 +390,7 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im
             }
         }
 
+        @Override
         public final File tryGetProprietaryData()
         {
             return tryGetSingleChild(storedDataDirectory);
@@ -491,6 +492,7 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im
 
     }
 
+    @Override
     public final IStorageProcessorTransaction createTransaction(
             StorageProcessorTransactionParameters parameters)
     {
@@ -600,6 +602,7 @@ abstract class AbstractImageStorageProcessor extends AbstractStorageProcessor im
      * @return true if the dataset has been enriched before and already contains all the information
      *         about images.
      */
+    @Override
     public boolean accepts(DataSetInformation dataSetInformation, File incomingDataSet)
     {
         String dataSetTypeCode = dataSetInformation.getDataSetType().getCode().toUpperCase();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageCheckList.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageCheckList.java
index 83c84220ca19998fc900f99b50a63e6a60ab902d..97cb368c60174c5db27a47723c3129ce681f7833 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageCheckList.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageCheckList.java
@@ -260,6 +260,7 @@ public final class HCSImageCheckList extends AbstractImageChecklist
         /**
          * Orders locations by wellRow, wellCol, tileRow, tileCol, channelCode
          */
+        @Override
         public int compareTo(FullLocation o)
         {
             int wellRowCompare = new Integer(wellRow).compareTo(new Integer(o.wellRow));
@@ -308,6 +309,7 @@ public final class HCSImageCheckList extends AbstractImageChecklist
         /**
          * Order by full location, then time, depth, series.
          */
+        @Override
         public int compareTo(FullLocationImageSeriesPoint o)
         {
             int locationCompare = location.compareTo(o.location);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageDatasetUploader.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageDatasetUploader.java
index d3ab70f1a760a7837d10cfee81dd5a68214f9e62..49fc454a8415edc07e79d166b6200613f6cd7ec2 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageDatasetUploader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/HCSImageDatasetUploader.java
@@ -99,6 +99,7 @@ public class HCSImageDatasetUploader extends AbstractImageDatasetUploader
     {
         return new ISpotProvider()
             {
+                @Override
                 public Long tryGetSpotId(AcquiredSingleImage image)
                 {
                     return findSpotId(image, spotIds);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/Hdf5ThumbnailGenerator.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/Hdf5ThumbnailGenerator.java
index 3a5c3daa77438b2b3e701fbaf03b5a1f981c5622..b1394b6ada1d0a7d5aaab9291b245b1ba9eef794 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/Hdf5ThumbnailGenerator.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/Hdf5ThumbnailGenerator.java
@@ -523,6 +523,7 @@ public class Hdf5ThumbnailGenerator implements IHDF5WriterClient
                                 }
                             };
 
+                @Override
                 public Status execute(ImageFileInfo image)
                 {
                     // each thread will get its own buffer to avoid allocating memory for the
@@ -534,6 +535,7 @@ public class Hdf5ThumbnailGenerator implements IHDF5WriterClient
             };
     }
 
+    @Override
     public void runWithSimpleWriter(IHDF5ContainerWriter writer)
     {
         final String thumbnailsName = " (" + thumbnailsStorageFormat.getThumbnailsFileName() + ")";
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageSizeFeedingMaintenanceTask.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageSizeFeedingMaintenanceTask.java
index 6d397da18b1e3b720bd3bd1e6343904d2ad54f84..67f6803cd3ff38a9ec11528b19767b3e9f35371e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageSizeFeedingMaintenanceTask.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImageSizeFeedingMaintenanceTask.java
@@ -75,11 +75,13 @@ public class ImageSizeFeedingMaintenanceTask implements IDataStoreLockingMainten
         this.contentProvider = contentProvider;
     }
 
+    @Override
     public boolean requiresDataStoreLock()
     {
         return true;
     }
     
+    @Override
     public void setUp(String pluginName, Properties properties)
     {
         DataSource dataSource = ServiceProvider.getDataSourceProvider().getDataSource(properties);
@@ -89,6 +91,7 @@ public class ImageSizeFeedingMaintenanceTask implements IDataStoreLockingMainten
         contentProvider = ServiceProvider.getHierarchicalContentProvider();
     }
 
+    @Override
     public void execute()
     {
         List<SimpleDataSetInformationDTO> dataSets = service.listDataSets();
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 155e5c760b9f3f36b148fde104d63ddcf2a58327..949036400c582cfd69d71a8d7a880d315ffe183c 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
@@ -25,6 +25,7 @@ import ch.systemsx.cisd.openbis.dss.generic.shared.IDatabaseVersionHolder;
  */
 public class ImagingDatabaseVersionHolder implements IDatabaseVersionHolder
 {
+    @Override
     public String getDatabaseVersion()
     {
         return "022"; // changed in S129
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingLoaderStrategyFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingLoaderStrategyFactory.java
index bdcd247549df44d3defb06f790a7ebdc9b01388c..bacc108b641d08fbc653d4bd8c6c1817952efd03 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingLoaderStrategyFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/ImagingLoaderStrategyFactory.java
@@ -39,11 +39,13 @@ public class ImagingLoaderStrategyFactory
             this.imageAccessor = imageAccessor;
         }
 
+        @Override
         public ImageDatasetParameters getImageParameters()
         {
             return imageAccessor.getImageParameters();
         }
 
+        @Override
         public List<ImageChannelStack> listImageChannelStacks(WellLocation wellLocationOrNull)
         {
             return imageAccessor.listImageChannelStacks(wellLocationOrNull);
@@ -55,6 +57,7 @@ public class ImagingLoaderStrategyFactory
     {
         return new AbstractLoaderStrategy(imageAccessor)
             {
+                @Override
                 public AbsoluteImageReference tryGetImage(String channelCode,
                         ImageChannelStackReference channelStackReference,
                         RequestedImageSize imageSize)
@@ -63,6 +66,7 @@ public class ImagingLoaderStrategyFactory
                             imageSize);
                 }
 
+                @Override
                 public AbsoluteImageReference tryGetRepresentativeImage(String channelCode,
                         Location wellLocationOrNull, RequestedImageSize imageSize)
                 {
@@ -78,6 +82,7 @@ public class ImagingLoaderStrategyFactory
     {
         return new AbstractLoaderStrategy(imageAccessor)
             {
+                @Override
                 public AbsoluteImageReference tryGetImage(String channelCode,
                         ImageChannelStackReference channelStackReference,
                         RequestedImageSize imageSize)
@@ -86,6 +91,7 @@ public class ImagingLoaderStrategyFactory
                             imageSize);
                 }
 
+                @Override
                 public AbsoluteImageReference tryGetRepresentativeImage(String channelCode,
                         Location wellLocationOrNull, RequestedImageSize imageSize)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyBlackboxSeriesStorageProcessor.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyBlackboxSeriesStorageProcessor.java
index 92de6dc08cd3ea2563a9e3e72b335722c78bf0b2..18729026fda658b0862543df6886ebe92fe1cb42 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyBlackboxSeriesStorageProcessor.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyBlackboxSeriesStorageProcessor.java
@@ -113,6 +113,7 @@ public class MicroscopyBlackboxSeriesStorageProcessor extends AbstractImageStora
     {
         return new Comparator<AcquiredSingleImage>()
             {
+                @Override
                 public int compare(AcquiredSingleImage o1, AcquiredSingleImage o2)
                 {
                     return getPath(o1).compareTo(getPath(o2));
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageChecklist.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageChecklist.java
index 06ec4ef0d878fb5190626250f82ead98f35dfbb0..f31f142beed9c4e198d9c8df3c8c364bad6e6635 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageChecklist.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageChecklist.java
@@ -239,6 +239,7 @@ public final class MicroscopyImageChecklist extends AbstractImageChecklist
         /**
          * Orders locations by wellRow, wellCol, tileRow, tileCol, channelCode
          */
+        @Override
         public int compareTo(FullLocation o)
         {
             int tileRowCompare = new Integer(tileRow).compareTo(new Integer(o.tileRow));
@@ -276,6 +277,7 @@ public final class MicroscopyImageChecklist extends AbstractImageChecklist
         /**
          * Order by full location, then time, depth, series.
          */
+        @Override
         public int compareTo(FullLocationImageSeriesPoint o)
         {
             int locationCompare = location.compareTo(o.location);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageDatasetUploader.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageDatasetUploader.java
index 605a1d4a8b99af9ba8f6d4438ff560456a0fb388..e10669f9e260a25b48035ed08085a78a61bfce14 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageDatasetUploader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/MicroscopyImageDatasetUploader.java
@@ -76,6 +76,7 @@ public class MicroscopyImageDatasetUploader extends AbstractImageDatasetUploader
     {
         return new ISpotProvider()
             {
+                @Override
                 public Long tryGetSpotId(AcquiredSingleImage image)
                 {
                     return null;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateGeometryOracle.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateGeometryOracle.java
index a21dc332659828718fbac6e47e1836366d619037..6ad0623023aae6b19482c07e45bd0baece76d2c9 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateGeometryOracle.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/PlateGeometryOracle.java
@@ -75,6 +75,7 @@ public class PlateGeometryOracle
         Collections.sort(geometries, new Comparator<Geometry>()
             {
 
+                @Override
                 public int compare(Geometry a, Geometry b)
                 {
                     return a.getHeight() * a.getWidth() - b.getHeight() * b.getWidth();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/ImagingDatasetLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/ImagingDatasetLoader.java
index d3bce184a5aa3928a188abe8dd0ac7e26551dad1..60662bfa361bce92756287bd3611752e1623950f 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/ImagingDatasetLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/ImagingDatasetLoader.java
@@ -89,6 +89,7 @@ public class ImagingDatasetLoader extends HCSDatasetLoader implements IImagingDa
      * @param chosenChannelCode
      * @return image (with absolute path, page and color)
      */
+    @Override
     public AbsoluteImageReference tryGetImage(String chosenChannelCode,
             ImageChannelStackReference channelStackReference, RequestedImageSize imageSize)
     {
@@ -494,6 +495,7 @@ public class ImagingDatasetLoader extends HCSDatasetLoader implements IImagingDa
         return checkAccessability("", "", image);
     }
 
+    @Override
     public AbsoluteImageReference tryFindAnyOriginalImage()
     {
         List<ImgSpotDTO> wells = query.listWellsWithAnyImages(dataset.getId());
@@ -516,6 +518,7 @@ public class ImagingDatasetLoader extends HCSDatasetLoader implements IImagingDa
         return null;
     }
 
+    @Override
     public AbsoluteImageReference tryGetRepresentativeImage(String channelCode,
             Location wellLocationOrNull, RequestedImageSize imageSize)
     {
@@ -554,6 +557,7 @@ public class ImagingDatasetLoader extends HCSDatasetLoader implements IImagingDa
         return checkAccessability(pathPrefixAndSuffix[0], pathPrefixAndSuffix[1], image);
     }
 
+    @Override
     public AbsoluteImageReference tryFindAnyThumbnail()
     {
         List<ImgSpotDTO> wells = query.listWellsWithAnyThumbnails(dataset.getId());
@@ -574,6 +578,7 @@ public class ImagingDatasetLoader extends HCSDatasetLoader implements IImagingDa
         return null;
     }
 
+    @Override
     public AbsoluteImageReference tryGetRepresentativeThumbnail(String channelCode,
             Location wellLocationOrNull, RequestedImageSize imageSize)
     {
@@ -593,6 +598,7 @@ public class ImagingDatasetLoader extends HCSDatasetLoader implements IImagingDa
                 Size.NULL_SIZE, false), true);
     }
 
+    @Override
     public AbsoluteImageReference tryGetThumbnail(String channelCode,
             ImageChannelStackReference channelStackReference, RequestedImageSize imageSize)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/migration/MigrationStepFrom003To004.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/migration/MigrationStepFrom003To004.java
index 581be0964f84f1c73ed9c5ff4456d4f1ce560952..da60769141c9bcd1a0f4c27f9f3a34af01b40f05 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/migration/MigrationStepFrom003To004.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dataaccess/migration/MigrationStepFrom003To004.java
@@ -34,11 +34,13 @@ import ch.systemsx.cisd.dbmigration.java.IMigrationStep;
 public class MigrationStepFrom003To004 implements IMigrationStep
 {
 
+    @Override
     public void performPostMigration(SimpleJdbcTemplate jdbc, DataSource dataSource)
             throws DataAccessException
     {
     }
 
+    @Override
     public void performPreMigration(SimpleJdbcTemplate simpleJdbcTemplate, DataSource dataSource)
             throws DataAccessException
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/ImageSeriesPoint.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/ImageSeriesPoint.java
index a1565f1eca78545d4f426c2d30a269e60cfb8a2a..e127e88335470d068d2961fadca47ea5d61b2c28 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/ImageSeriesPoint.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/ImageSeriesPoint.java
@@ -94,6 +94,7 @@ public final class ImageSeriesPoint implements Comparable<ImageSeriesPoint>
         return true;
     }
 
+    @Override
     public int compareTo(ImageSeriesPoint o)
     {
         int depthCompare = compareConstituent(depthOrNull, o.depthOrNull);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeatureDefinition.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeatureDefinition.java
index 9e842f120498ffac5830ade38ce84e2199790f75..409ba08141fc91ba5d19f0efa5164aa3e64abaf0 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeatureDefinition.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeatureDefinition.java
@@ -64,6 +64,7 @@ public class FeatureDefinition implements IFeatureDefinition, Serializable
         this.currentFeatureVector = currentFeatureVector;
     }
 
+    @Override
     public void changeSeries(Double timeOrNull, Double depthOrNull)
     {
         flushCurrent();
@@ -80,12 +81,14 @@ public class FeatureDefinition implements IFeatureDefinition, Serializable
     }
 
     /** Optional. Sets the label of a feature. */
+    @Override
     public void setFeatureLabel(String label)
     {
         this.imgFeatureDefDTO.setLabel(label);
     }
 
     /** Optional. Sets description of a feature. */
+    @Override
     public void setFeatureDescription(String description)
     {
         this.imgFeatureDefDTO.setDescription(description);
@@ -95,6 +98,7 @@ public class FeatureDefinition implements IFeatureDefinition, Serializable
      * @param well code of the well, e.g. A1
      * @param value value of the feature in the specified well
      */
+    @Override
     public void addValue(String well, String value)
     {
         WellLocation wellPos = WellLocation.parseLocationStr(well);
@@ -106,6 +110,7 @@ public class FeatureDefinition implements IFeatureDefinition, Serializable
      * @param wellColumn column coordinate of the well, top-left well has (1,1) coordinates.
      * @param value value of the feature in the specified well
      */
+    @Override
     public void addValue(int wellRow, int wellColumn, String value)
     {
         WellLocation wellPos = new WellLocation(wellRow, wellColumn);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeaturesBuilder.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeaturesBuilder.java
index 2db162e5c215d8c5660c330dc704fd77eb8ea256..30cd7b2b500231838210ed62601f169fc8b14600 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeaturesBuilder.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/FeaturesBuilder.java
@@ -39,6 +39,7 @@ public class FeaturesBuilder implements IFeaturesBuilder
     }
 
     /** Defines a container to which values of the feature for each well can be added. */
+    @Override
     public IFeatureDefinition defineFeature(String featureCode)
     {
         assert StringUtils.isBlank(featureCode) == false : "Feature code is blank " + featureCode;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/ImageContainerDataSet.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/ImageContainerDataSet.java
index dc459bba81739d7216885cd547b9e77ba72fc5f0..8d47609679f34d8cc5adc4926eb9780a4a64899e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/ImageContainerDataSet.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/impl/ImageContainerDataSet.java
@@ -50,11 +50,13 @@ public class ImageContainerDataSet extends DataSet<DataSetInformation> implement
         super(registrationDetails, dataSetFolder, service);
     }
 
+    @Override
     public void setAnalysisProcedure(String analysisProcedure)
     {
         setPropertyValue(ScreeningConstants.ANALYSIS_PROCEDURE, analysisProcedure);
     }
 
+    @Override
     public void establishSampleLinkForContainedDataSets()
     {
         establishSampleLinkForContainedDataSets = true;
@@ -65,6 +67,7 @@ public class ImageContainerDataSet extends DataSet<DataSetInformation> implement
         return establishSampleLinkForContainedDataSets;
     }
 
+    @Override
     public DataSet<ImageDataSetInformation> getOriginalDataset()
     {
         return originalDataset;
@@ -75,6 +78,7 @@ public class ImageContainerDataSet extends DataSet<DataSetInformation> implement
         this.originalDataset = originalDataset;
     }
 
+    @Override
     public List<IDataSet> getThumbnailDatasets()
     {
         return thumbnailDatasets;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/ImageIdentifier.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/ImageIdentifier.java
index 8699b2189ff1f2f424cc4418b45c808b4f657d0a..ce63badb1431b49939cc5d02fec6c3c2fc68228c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/ImageIdentifier.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/ImageIdentifier.java
@@ -80,6 +80,7 @@ public class ImageIdentifier implements Comparable<ImageIdentifier>, Serializabl
                 getColorChannelIndex()).getID();
     }
 
+    @Override
     public int compareTo(ImageIdentifier that)
     {
         int diff = seriesIndex - that.seriesIndex;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/thumbnails/AbstractThumbnailsConfiguration.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/thumbnails/AbstractThumbnailsConfiguration.java
index 5e867ee0b1c321c6c7263376e13e15d638a20bdb..17d5b26af79006542092b8e1dc701d1f47d04c89 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/thumbnails/AbstractThumbnailsConfiguration.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/thumbnails/AbstractThumbnailsConfiguration.java
@@ -33,6 +33,7 @@ public abstract class AbstractThumbnailsConfiguration implements IThumbnailsConf
 
     private Map<String, String> transformations = new HashMap<String, String>();
 
+    @Override
     public ThumbnailsStorageFormat getThumbnailsStorageFormat(SimpleImageDataConfig config)
     {
         ThumbnailsStorageFormat thumbnailsStorageFormat = new ThumbnailsStorageFormat();
@@ -53,6 +54,7 @@ public abstract class AbstractThumbnailsConfiguration implements IThumbnailsConf
 
     protected abstract String getDefaultFileName();
 
+    @Override
     public void setFileName(String fileName)
     {
         this.fileName = fileName;
@@ -69,6 +71,7 @@ public abstract class AbstractThumbnailsConfiguration implements IThumbnailsConf
         }
     }
 
+    @Override
     public void setFileFormat(String fileFormat)
     {
         this.fileFormat = fileFormat;
@@ -90,6 +93,7 @@ public abstract class AbstractThumbnailsConfiguration implements IThumbnailsConf
         }
     }
 
+    @Override
     public String setTransformation(String channelCode, String transformationCode)
     {
         return transformations.put(channelCode.toUpperCase(), transformationCode);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/AutoRescaleIntensityImageTransformerFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/AutoRescaleIntensityImageTransformerFactory.java
index 8b8dc8d3942e83b6126ced2cdbfe636f86056df9..fa5b8cba044597275159b834df3a795b879e4077 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/AutoRescaleIntensityImageTransformerFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/AutoRescaleIntensityImageTransformerFactory.java
@@ -48,10 +48,12 @@ public class AutoRescaleIntensityImageTransformerFactory implements IImageTransf
         this.threshold = threshold;
     }
 
+    @Override
     public IImageTransformer createTransformer()
     {
         return new IImageTransformer()
             {
+                @Override
                 public BufferedImage transform(BufferedImage image)
                 {
                     if (IntensityRescaling.isNotGrayscale(image))
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/BitShiftingImageTransformerFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/BitShiftingImageTransformerFactory.java
index c63ca136753b8ba7ad708ba8962c2d96bdc93923..1209dc120ac0d3d86637977cc6247a90bc6fa951 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/BitShiftingImageTransformerFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/BitShiftingImageTransformerFactory.java
@@ -30,10 +30,12 @@ final class BitShiftingImageTransformerFactory implements IImageTransformerFacto
         this.shiftBits = shiftBits;
     }
 
+    @Override
     public IImageTransformer createTransformer()
     {
         return new IImageTransformer()
             {
+                @Override
                 public BufferedImage transform(BufferedImage image)
                 {
                     if (IntensityRescaling.isNotGrayscale(image))
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformer.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformer.java
index dc165b41fccaefaaf2a04366eface172644a3921..fd2eeac9d7f87488e9623a7bd30c81e721e7976b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformer.java
@@ -123,6 +123,7 @@ public class ConvertToolImageTransformer implements IStreamingImageTransformer
         }
     }
 
+    @Override
     public BufferedImage transform(BufferedImage image)
     {
         try
@@ -136,11 +137,13 @@ public class ConvertToolImageTransformer implements IStreamingImageTransformer
         }
     }
 
+    @Override
     public BufferedImage transform(InputStream input)
     {
         return toBufferedImage(transformToPNG(input));
     }
 
+    @Override
     public byte[] transformToPNG(InputStream input)
     {
         final ByteArrayOutputStream bos = new ByteArrayOutputStream();
@@ -148,6 +151,7 @@ public class ConvertToolImageTransformer implements IStreamingImageTransformer
         return bos.toByteArray();
     }
 
+    @Override
     public void transformToPNGStream(InputStream input, OutputStream output)
     {
         try
@@ -207,6 +211,7 @@ public class ConvertToolImageTransformer implements IStreamingImageTransformer
         return ProcessIOStrategy.createCustom(new IProcessIOHandler()
             {
 
+                @Override
                 public void handle(AtomicBoolean processRunning, OutputStream stdin,
                         InputStream stdout, InputStream stderr) throws IOException
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformerFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformerFactory.java
index f214e97231eaf033b21e1ed0dbf3c91a8faf0c66..99377947d6d0dafe04b4c710c8e3d103b267c158 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformerFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/ConvertToolImageTransformerFactory.java
@@ -59,6 +59,7 @@ public class ConvertToolImageTransformerFactory implements IStreamingImageTransf
         this.choice = choice;
     }
 
+    @Override
     public ConvertToolImageTransformer createTransformer()
     {
         return new ConvertToolImageTransformer(convertCliArguments, choice);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/IntensityRangeImageTransformerFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/IntensityRangeImageTransformerFactory.java
index 32932f046536d0a0db1ba30ad13a217422733ff3..4768bce7a40b0bfabb63e5f91ba52bda2a4f0dfc 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/IntensityRangeImageTransformerFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dto/api/v1/transformations/IntensityRangeImageTransformerFactory.java
@@ -51,10 +51,12 @@ public class IntensityRangeImageTransformerFactory implements IImageTransformerF
         this.whitePointIntensity = whitePointIntensity;
     }
 
+    @Override
     public IImageTransformer createTransformer()
     {
         return new IImageTransformer()
             {
+                @Override
                 public BufferedImage transform(BufferedImage image)
                 {
                     if (IntensityRescaling.isNotGrayscale(image))
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dynamix/IntensityRangeReductionFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dynamix/IntensityRangeReductionFactory.java
index 82b3a4c97079a9eeca15d1a4d17758cd967a0c36..75a203033931f188b30c73b93fb58eb611e41478 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dynamix/IntensityRangeReductionFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/dynamix/IntensityRangeReductionFactory.java
@@ -57,10 +57,12 @@ public class IntensityRangeReductionFactory implements IImageTransformerFactory
         }
     }
 
+    @Override
     public IImageTransformer createTransformer()
     {
         return new IImageTransformer()
             {
+                @Override
                 public BufferedImage transform(BufferedImage image)
                 {
                     return reduceIntensityRange(image);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessor.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessor.java
index eb5aa52cd5cb174a1600512e12945464ab96ea0d..cf90695f80048ae4dfd4fd8799297bc3796e2f71 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessor.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessor.java
@@ -75,6 +75,7 @@ public class FeatureVectorStorageProcessor extends AbstractDelegatingStorageProc
      * Accepts all non-image datasets (and assumes they are single CSV files or
      * FeatureVectorDataSetInformation).
      */
+    @Override
     public boolean accepts(DataSetInformation dataSetInformation, File incomingDataSet)
     {
         return dataSetInformation instanceof ImageDataSetInformation == false
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessorConfiguration.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessorConfiguration.java
index e1a2ed592a0c4f8e74ac3917f9f7042bf7b183c7..79e54a641b4acd751f9c55eef0d486e6baa9d5f5 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessorConfiguration.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/featurevector/FeatureVectorStorageProcessorConfiguration.java
@@ -76,21 +76,25 @@ class FeatureVectorStorageProcessorConfiguration implements
                         DEFAULT_COLUMNS_TO_BE_IGNORED).split(", *")));
     }
 
+    @Override
     public char getColumnDelimiter()
     {
         return columnDelimiter;
     }
 
+    @Override
     public char getCommentDelimiter()
     {
         return comment;
     }
 
+    @Override
     public boolean isIgnoreComments()
     {
         return ignoreComments;
     }
 
+    @Override
     public boolean isSkipEmptyRecords()
     {
         return true;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/ImagingDataSetRegistrationTransaction.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/ImagingDataSetRegistrationTransaction.java
index 1a59857e9d5f0bab1dd18334a070d4cbad8dbbac..6ca752092bd6b73967216d136416a3d9956e6514 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/ImagingDataSetRegistrationTransaction.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/ImagingDataSetRegistrationTransaction.java
@@ -95,6 +95,7 @@ public class ImagingDataSetRegistrationTransaction extends DataSetRegistrationTr
         this.originalDirName = originalDirName;
     }
 
+    @Override
     public IImageDataSet createNewImageDataSet(SimpleImageDataConfig imageDataSet,
             File incomingFolderWithImages)
     {
@@ -114,6 +115,7 @@ public class ImagingDataSetRegistrationTransaction extends DataSetRegistrationTr
      * 
      * @return container dataset.
      */
+    @Override
     public IImageDataSet createNewImageDataSet(
             DataSetRegistrationDetails<ImageDataSetInformation> imageRegistrationDetails)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/JythonPlateDatasetFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/JythonPlateDatasetFactory.java
index a093f00ccab4bf6b358a738df82e67f58a2356cb..5e6a0ae29d64aa62114707255d95264956bd5e5e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/JythonPlateDatasetFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/JythonPlateDatasetFactory.java
@@ -89,6 +89,7 @@ public class JythonPlateDatasetFactory extends JythonObjectFactory<DataSetInform
         return new DataSetInformation();
     }
 
+    @Override
     public DataSetRegistrationDetails<ImageDataSetInformation> createImageRegistrationDetails(
             SimpleImageDataConfig imageDataSet, File incomingDatasetFolder)
     {
@@ -97,6 +98,7 @@ public class JythonPlateDatasetFactory extends JythonObjectFactory<DataSetInform
     }
 
     /** a simple method to register the described image dataset in a separate transaction */
+    @Override
     public boolean registerImageDataset(SimpleImageDataConfig imageDataSet,
             File incomingDatasetFolder, DataSetRegistrationService<ImageDataSetInformation> service)
     {
@@ -105,6 +107,7 @@ public class JythonPlateDatasetFactory extends JythonObjectFactory<DataSetInform
         return registerImageDataset(imageDatasetDetails, incomingDatasetFolder, service);
     }
 
+    @Override
     public boolean registerImageDataset(
             DataSetRegistrationDetails<ImageDataSetInformation> imageDatasetDetails,
             File incomingDatasetFolder, DataSetRegistrationService<ImageDataSetInformation> service)
@@ -123,6 +126,7 @@ public class JythonPlateDatasetFactory extends JythonObjectFactory<DataSetInform
      * @throws UserFailureException if all available geometries in openBIS are too small (there is a
      *             well outside).
      */
+    @Override
     public String figureGeometry(
             DataSetRegistrationDetails<ImageDataSetInformation> registrationDetails)
     {
@@ -158,11 +162,13 @@ public class JythonPlateDatasetFactory extends JythonObjectFactory<DataSetInform
 
     // ----
 
+    @Override
     public IFeaturesBuilder createFeaturesBuilder()
     {
         return new FeaturesBuilder();
     }
 
+    @Override
     public DataSetRegistrationDetails<FeatureVectorDataSetInformation> createFeatureVectorDatasetDetails(
             IFeaturesBuilder featureBuilder)
     {
@@ -189,6 +195,7 @@ public class JythonPlateDatasetFactory extends JythonObjectFactory<DataSetInform
      * 
      * @throws IOException if file cannot be parsed
      */
+    @Override
     public DataSetRegistrationDetails<FeatureVectorDataSetInformation> createFeatureVectorDatasetDetails(
             String csvFilePath, Properties properties) throws IOException
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/SimpleImageDataSetRegistrator.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/SimpleImageDataSetRegistrator.java
index 6fa62bb2c3d84741a1b77a427ec24b5e4f606f67..b945d108c8781f96db7d34260b7c911cfae93d0a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/SimpleImageDataSetRegistrator.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/jython/SimpleImageDataSetRegistrator.java
@@ -115,11 +115,13 @@ public class SimpleImageDataSetRegistrator
         return createImageDatasetDetails(simpleImageConfig, incoming, factory,
                 new IImageReaderFactory()
                     {
+                        @Override
                         public IImageReader tryGetReaderForFile(String libraryName, String fileName)
                         {
                             return ImageReaderFactory.tryGetReaderForFile(libraryName, fileName);
                         }
 
+                        @Override
                         public IImageReader tryGetReader(String libraryName, String readerName)
                         {
                             return ImageReaderFactory.tryGetReader(libraryName, readerName);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/postregistration/RedoSegmentationOnFailureTask.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/postregistration/RedoSegmentationOnFailureTask.java
index a33660cf3da2d5590559c168c457b8f10d4abc86..73bae9f81005cfb655e2e13ac6d841bc47afcedd 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/postregistration/RedoSegmentationOnFailureTask.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/etl/postregistration/RedoSegmentationOnFailureTask.java
@@ -77,11 +77,13 @@ public class RedoSegmentationOnFailureTask extends AbstractPostRegistrationTask
     /**
      * @see IDataStoreLockingMaintenanceTask#requiresDataStoreLock()
      */
+    @Override
     public boolean requiresDataStoreLock()
     {
         return true;
     }
 
+    @Override
     public IPostRegistrationTaskExecutor createExecutor(String dataSetCode, boolean container)
     {
         return new Executor(dataSetCode);
@@ -109,6 +111,7 @@ public class RedoSegmentationOnFailureTask extends AbstractPostRegistrationTask
             return null;
         }
 
+        @Override
         public void execute()
         {
             ExternalData data = service.tryGetDataSet(dataSetCode);
@@ -205,6 +208,7 @@ public class RedoSegmentationOnFailureTask extends AbstractPostRegistrationTask
             return linkWasMade;
         }
 
+        @Override
         public ICleanupTask createCleanupTask()
         {
             return new NoCleanupTask();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ImageGenerationDescriptionFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ImageGenerationDescriptionFactory.java
index 38c3aee6c83de4a8be39351c27b2189d01b4b0fd..43788e690bed986f87af7f2a2e065edd5486bee3 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ImageGenerationDescriptionFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ImageGenerationDescriptionFactory.java
@@ -131,10 +131,10 @@ class ImageGenerationDescriptionFactory
     private static Size tryGetSize(HttpServletRequest request)
     {
         String displayModeText =
-                request.getParameter(AbstractImagesDownloadServlet.DISPLAY_MODE_PARAM);
+                request.getParameter(AbstractDatasetDownloadServlet.DISPLAY_MODE_PARAM);
         String displayMode = displayModeText == null ? "" : displayModeText;
         Size thumbnailSizeOrNull =
-                AbstractImagesDownloadServlet.tryAsThumbnailDisplayMode(displayMode);
+                AbstractDatasetDownloadServlet.tryAsThumbnailDisplayMode(displayMode);
         return thumbnailSizeOrNull;
     }
 
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MergingImagesDownloadServlet.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MergingImagesDownloadServlet.java
index 6c87f2de57359891fe18a1e7e9dd4479ef0d6b1e..a7e1177fb0e5b615d7b0056cda8a0ab4b88c266d 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MergingImagesDownloadServlet.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MergingImagesDownloadServlet.java
@@ -63,6 +63,7 @@ public class MergingImagesDownloadServlet extends AbstractImagesDownloadServlet
     private static final Size DEFAULT_THUMBNAIL_SIZE = new Size(200, 120);
 
     /** Provides overview of microscopy datasets. */
+    @Override
     public ResponseContentStream createImageOverview(String datasetCode, String datasetTypeCode,
             IHierarchicalContent datasetRoot, ImageResolutionKind resolution)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/TabularDataGraphServlet.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/TabularDataGraphServlet.java
index 070c188e593a659fc4442d62d72ca1ae7fb8b6a4..ad6ff5131dc4f32df16403f3f9f91ca993b25375 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/TabularDataGraphServlet.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/TabularDataGraphServlet.java
@@ -149,16 +149,19 @@ public class TabularDataGraphServlet extends AbstractTabularDataGraphServlet
             }
         }
 
+        @Override
         public List<String[]> getDataLines()
         {
             return lines;
         }
 
+        @Override
         public String[] getHeaderLabels()
         {
             return headerLabels;
         }
 
+        @Override
         public String[] getHeaderCodes()
         {
             return headerCodes;
@@ -202,6 +205,7 @@ public class TabularDataGraphServlet extends AbstractTabularDataGraphServlet
         final IEncapsulatedOpenBISService openBISService = ServiceProvider.getOpenBISService();
         return new IMetadataProvider()
             {
+                @Override
                 public SampleIdentifier tryGetSampleIdentifier(String samplePermId)
                 {
                     return openBISService.tryToGetSampleIdentifier(samplePermId);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/AbstractSpotImagesTransformerProcessingPlugin.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/AbstractSpotImagesTransformerProcessingPlugin.java
index d22056150b5e33b8add1582ac777b75a6da3a4d5..ed48f45469dd2dbeea39ef7b7e2f877d29e2d09e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/AbstractSpotImagesTransformerProcessingPlugin.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/AbstractSpotImagesTransformerProcessingPlugin.java
@@ -50,6 +50,7 @@ abstract public class AbstractSpotImagesTransformerProcessingPlugin extends Abst
     protected static final IImageTransformerFactoryProvider NO_TRANSFORMATION_PROVIDER =
             new IImageTransformerFactoryProvider()
                 {
+                    @Override
                     public IImageTransformerFactory tryGetTransformationFactory(
                             ImgImageEnrichedDTO image)
                     {
@@ -71,6 +72,7 @@ abstract public class AbstractSpotImagesTransformerProcessingPlugin extends Abst
         this.channelCode = PropertyUtils.getMandatoryProperty(properties, CHANNEL_CODE_PROPERTY);
     }
 
+    @Override
     public ProcessingStatus process(List<DatasetDescription> dataSets,
             DataSetProcessingContext context)
     {
@@ -143,6 +145,7 @@ abstract public class AbstractSpotImagesTransformerProcessingPlugin extends Abst
         GroupByMap<Long, ImgImageEnrichedDTO> imagesBySpot =
                 GroupByMap.create(allImages, new IGroupKeyExtractor<Long, ImgImageEnrichedDTO>()
                     {
+                        @Override
                         public Long getKey(ImgImageEnrichedDTO image)
                         {
                             return image.getSpotId();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/DynamixWellBrightnessEqualizerProcessingPlugin.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/DynamixWellBrightnessEqualizerProcessingPlugin.java
index 115c5eb6c3e8c4b6698a1d327c3c7969226937dd..17677118acb3417e915ef5a189cbf7e85bc818a6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/DynamixWellBrightnessEqualizerProcessingPlugin.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/DynamixWellBrightnessEqualizerProcessingPlugin.java
@@ -101,6 +101,7 @@ public class DynamixWellBrightnessEqualizerProcessingPlugin extends
                 ColorRangeCalculator.calculateOverlapRange(rangeMap.values());
         return new IImageTransformerFactoryProvider()
             {
+                @Override
                 public IImageTransformerFactory tryGetTransformationFactory(
                         ImgImageEnrichedDTO image)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ExampleImageTransformationProcessingPlugin.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ExampleImageTransformationProcessingPlugin.java
index 2a0b2e55565a2ed18e0093bac73f73a4423fd693..b50017c2908183d3dd0d0b7dcbe9c531ca17d491 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ExampleImageTransformationProcessingPlugin.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ExampleImageTransformationProcessingPlugin.java
@@ -43,6 +43,7 @@ public class ExampleImageTransformationProcessingPlugin extends
 
         private static final long serialVersionUID = 1L;
 
+        @Override
         public IImageTransformerFactory tryGetTransformationFactory(ImgImageEnrichedDTO image)
         {
             return new ExampleImageTransformerFactory(colorPattern, brightnessDelta);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisGraphReportingPlugin.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisGraphReportingPlugin.java
index 936d1f65bdca3284a95d325f4348573a2ec3639f..625780192edd00f38152c364325f3814de7ebf22 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisGraphReportingPlugin.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisGraphReportingPlugin.java
@@ -71,6 +71,7 @@ public class ImageAnalysisGraphReportingPlugin extends AbstractDataMergingReport
                 TabularDataGraphCollectionConfiguration.getConfiguration(propertiesFilePath);
     }
 
+    @Override
     public TableModel createReport(List<DatasetDescription> datasets, DataSetProcessingContext context)
     {
         SimpleTableModelBuilder builder = new SimpleTableModelBuilder();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPlugin.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPlugin.java
index 4eaaaaabaa0bd3e1ea2ccab6faa7ec8bbe84f540..6528c6efd0bf65ac04f84314cbfdcbf0864ba95b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPlugin.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/generic/server/plugins/ImageAnalysisMergedRowsReportingPlugin.java
@@ -83,6 +83,7 @@ public class ImageAnalysisMergedRowsReportingPlugin extends AbstractTableModelRe
         this.dao = dao;
     }
 
+    @Override
     public TableModel createReport(List<DatasetDescription> datasets, DataSetProcessingContext context)
     {
         List<String> datasetCodes = extractDatasetCodes(datasets);
@@ -189,6 +190,7 @@ public class ImageAnalysisMergedRowsReportingPlugin extends AbstractTableModelRe
         final IEncapsulatedOpenBISService openBISService = ServiceProvider.getOpenBISService();
         return new IMetadataProvider()
             {
+                @Override
                 public SampleIdentifier tryGetSampleIdentifier(String samplePermId)
                 {
                     return openBISService.tryToGetSampleIdentifier(samplePermId);
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 018716e72861d1f23762cf949e9624a0d8ee620c..27e32e49eea12512a2b3bfdad451ed297fe492ce 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
@@ -176,17 +176,20 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
 
     // ------------------ impl -----------------
 
+    @Override
     public List<String> listAvailableFeatureNames(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
         return listAvailableFeatureCodes(sessionToken, featureDatasets);
     }
 
+    @Override
     public IDssServiceRpcScreening createLogger(IInvocationLoggerContext context)
     {
         return new DssServiceRpcScreeningLogger(context);
     }
 
+    @Override
     public List<String> listAvailableFeatureCodes(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -205,6 +208,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return result;
     }
 
+    @Override
     public List<FeatureInformation> listAvailableFeatures(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -225,6 +229,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return result;
     }
 
+    @Override
     public List<ImageDatasetMetadata> listImageMetadata(String sessionToken,
             List<? extends IImageDatasetIdentifier> imageDatasets)
     {
@@ -463,6 +468,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         throw new IllegalStateException("Cannot find any image in a dataset: " + dataset);
     }
 
+    @Override
     public List<FeatureVectorDataset> loadFeatures(String sessionToken,
             List<FeatureVectorDatasetReference> featureDatasets, List<String> featureNames)
     {
@@ -527,6 +533,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return codes;
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForDatasetWellReferences(
             String sessionToken, List<FeatureVectorDatasetWellReference> datasetWellReferences,
             List<String> featureNames)
@@ -542,6 +549,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         final IEncapsulatedOpenBISService openBISService = getOpenBISService();
         return new IMetadataProvider()
             {
+                @Override
                 public SampleIdentifier tryGetSampleIdentifier(String samplePermId)
                 {
                     return openBISService.tryToGetSampleIdentifier(samplePermId);
@@ -570,12 +578,14 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
                 getFloatFeaturesAsDouble(featureTableRow));
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             boolean convertToPng)
     {
         return loadImages(sessionToken, imageReferences, null, null, convertToPng);
     }
     
+    @Override
     public List<String> loadImagesBase64(String sessionToken, List<PlateImageReference> imageReferences, boolean convertToPng) {
 
         InputStream stream = loadImages(sessionToken, imageReferences, convertToPng);
@@ -605,12 +615,14 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
     }
     
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             ImageSize thumbnailSizeOrNull)
     {
         return loadImages(sessionToken, imageReferences, tryAsSize(thumbnailSizeOrNull), null, true);
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             LoadImageConfiguration configuration)
     {
@@ -622,6 +634,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
                 configuration.isOpenBisImageTransformationApplied(), imageLoadersMap);
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             final ImageRepresentationFormat format)
     {
@@ -649,6 +662,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return loadImages(sessionToken, imageReferences, criterion);
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             IImageRepresentationFormatSelectionCriterion... criteria)
     {
@@ -762,11 +776,13 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return new ConcatenatedContentInputStream(true, imageContents);
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences)
     {
         return loadImages(sessionToken, imageReferences, true);
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, IDatasetIdentifier dataSetIdentifier,
             List<WellPosition> wellPositions, String channel, ImageSize thumbnailSizeOrNull)
     {
@@ -783,6 +799,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return loadImages(imageReferences, size, null, true, false, imageLoadersMap);
     }
 
+    @Override
     public InputStream loadThumbnailImages(String sessionToken,
             List<PlateImageReference> imageReferences)
     {
@@ -792,6 +809,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return loadThumbnailImages(imageReferences, imageLoadersMap);
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, IDatasetIdentifier dataSetIdentifier,
             String channel, ImageSize thumbnailSizeOrNull)
     {
@@ -816,6 +834,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return new ConcatenatedContentInputStream(true, imageContents);
     }
 
+    @Override
     public InputStream loadThumbnailImages(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<String> channels)
     {
@@ -841,6 +860,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return new ConcatenatedContentInputStream(true, imageContents);
     }
 
+    @Override
     public List<MicroscopyImageReference> listImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, String channel)
     {
@@ -848,6 +868,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return listImageReferences(dataSetIdentifier, channel, imageAccessor);
     }
 
+    @Override
     public List<MicroscopyImageReference> listImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<String> channels)
     {
@@ -885,6 +906,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return imageReferences;
     }
 
+    @Override
     public List<PlateImageReference> listPlateImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions, String channel)
     {
@@ -892,6 +914,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return createPlateImageReferences(imageAccessor, dataSetIdentifier, wellPositions, channel);
     }
 
+    @Override
     public List<PlateImageReference> listPlateImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions,
             List<String> channels)
@@ -900,6 +923,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return createPlateImageReferences(imageAccessor, dataSetIdentifier, wellPositions, channels);
     }
 
+    @Override
     public List<DatasetImageRepresentationFormats> listAvailableImageRepresentationFormats(
             String sessionToken, List<? extends IDatasetIdentifier> imageDatasets)
     {
@@ -1017,6 +1041,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return createImageLoader(datasetCode);
     }
 
+    @Override
     public void saveImageTransformerFactory(String sessionToken,
             List<IDatasetIdentifier> dataSetIdentifiers, String channel,
             IImageTransformerFactory transformerFactory)
@@ -1131,6 +1156,7 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         }
     }
 
+    @Override
     public IImageTransformerFactory getImageTransformerFactoryOrNull(String sessionToken,
             List<IDatasetIdentifier> dataSetIdentifiers, String channel)
     {
@@ -1511,11 +1537,13 @@ public class DssServiceRpcScreening extends AbstractDssServiceRpc<IDssServiceRpc
         return dao;
     }
 
+    @Override
     public int getMajorVersion()
     {
         return MAJOR_VERSION;
     }
 
+    @Override
     public int getMinorVersion()
     {
         return MINOR_VERSION;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningJson.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningJson.java
index 5eac16c9535868a6beb448dbd5f72fe89c33360a..ad161238bb870941601e07952c1eaa02b6355b54 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningJson.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningJson.java
@@ -59,16 +59,19 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
         this.service = service;
     }
 
+    @Override
     public int getMajorVersion()
     {
         return service.getMajorVersion();
     }
 
+    @Override
     public int getMinorVersion()
     {
         return service.getMinorVersion();
     }
 
+    @Override
     @SuppressWarnings("deprecation")
     public List<String> listAvailableFeatureNames(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
@@ -76,12 +79,14 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
         return service.listAvailableFeatureNames(sessionToken, featureDatasets);
     }
 
+    @Override
     public List<String> listAvailableFeatureCodes(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
         return service.listAvailableFeatureCodes(sessionToken, featureDatasets);
     }
 
+    @Override
     public List<FeatureInformation> listAvailableFeatures(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -89,6 +94,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 featureDatasets));
     }
 
+    @Override
     public List<FeatureVectorDataset> loadFeatures(String sessionToken,
             List<FeatureVectorDatasetReference> featureDatasets, List<String> featureCodes)
     {
@@ -96,6 +102,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 featureCodes));
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForDatasetWellReferences(
             String sessionToken, List<FeatureVectorDatasetWellReference> datasetWellReferences,
             List<String> featureCodes)
@@ -104,6 +111,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 sessionToken, datasetWellReferences, featureCodes));
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             boolean convertToPng)
     {
@@ -111,63 +119,74 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
     }
     
     
+    @Override
     public List<String> loadImagesBase64(String sessionToken, List<PlateImageReference> imageReferences, boolean convertToPng) {
         return service.loadImagesBase64(sessionToken, imageReferences, convertToPng);       
     }
 
+    @Override
     public InputStream loadThumbnailImages(String sessionToken,
             List<PlateImageReference> imageReferences)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             ImageSize size)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, IDatasetIdentifier dataSetIdentifier,
             List<WellPosition> wellPositions, String channel, ImageSize thumbnailSizeOrNull)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, IDatasetIdentifier dataSetIdentifier,
             String channel, ImageSize thumbnailSizeOrNull)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             LoadImageConfiguration configuration)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             ImageRepresentationFormat format)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             IImageRepresentationFormatSelectionCriterion... criteria)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public InputStream loadThumbnailImages(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<String> channels)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public List<PlateImageReference> listPlateImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions, String channel)
     {
@@ -175,6 +194,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 dataSetIdentifier, wellPositions, channel));
     }
 
+    @Override
     public List<PlateImageReference> listPlateImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions,
             List<String> channels)
@@ -183,6 +203,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 dataSetIdentifier, wellPositions, channels));
     }
 
+    @Override
     public List<MicroscopyImageReference> listImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, String channel)
     {
@@ -190,6 +211,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 dataSetIdentifier, channel));
     }
 
+    @Override
     public List<MicroscopyImageReference> listImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<String> channels)
     {
@@ -197,6 +219,7 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
                 dataSetIdentifier, channels));
     }
 
+    @Override
     public void saveImageTransformerFactory(String sessionToken,
             List<IDatasetIdentifier> dataSetIdentifiers, String channel,
             IImageTransformerFactory transformerFactory)
@@ -204,18 +227,21 @@ public class DssServiceRpcScreeningJson implements IDssServiceRpcScreening
         handleNotSupportedMethod();
     }
 
+    @Override
     public IImageTransformerFactory getImageTransformerFactoryOrNull(String sessionToken,
             List<IDatasetIdentifier> dataSetIdentifiers, String channel)
     {
         return handleNotSupportedMethod();
     }
 
+    @Override
     public List<ImageDatasetMetadata> listImageMetadata(String sessionToken,
             List<? extends IImageDatasetIdentifier> imageDatasets)
     {
         return new ImageDatasetMetadataList(service.listImageMetadata(sessionToken, imageDatasets));
     }
 
+    @Override
     public List<DatasetImageRepresentationFormats> listAvailableImageRepresentationFormats(
             String sessionToken, List<? extends IDatasetIdentifier> imageDatasets)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningLogger.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningLogger.java
index 10a72ce44c8c3ca3aeb3e1c53b15ee976c8d0cb5..ac5ccd81a832eb33ff1b28f4dc63ab90d34cd1b7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningLogger.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/server/DssServiceRpcScreeningLogger.java
@@ -54,16 +54,19 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         super(null, context);
     }
 
+    @Override
     public int getMajorVersion()
     {
         return 0;
     }
 
+    @Override
     public int getMinorVersion()
     {
         return 0;
     }
 
+    @Override
     public List<String> listAvailableFeatureNames(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -72,6 +75,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<String> listAvailableFeatureCodes(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -80,6 +84,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<FeatureInformation> listAvailableFeatures(String sessionToken,
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -88,6 +93,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<FeatureVectorDataset> loadFeatures(String sessionToken,
             List<FeatureVectorDatasetReference> featureDatasets, List<String> featureCodes)
     {
@@ -96,6 +102,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForDatasetWellReferences(
             String sessionToken, List<FeatureVectorDatasetWellReference> datasetWellReferences,
             List<String> featureCodes)
@@ -105,6 +112,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             boolean convertToPng)
     {
@@ -113,11 +121,13 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<String> loadImagesBase64(String sessionToken, List<PlateImageReference> references, boolean convertToPng) {
         logAccess(sessionToken, "load_images_base64", "IMAGE_REFERENCES(%s) CONVERT(%s)", references);
         return null;
     }
     
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             ImageSize thumbnailSizeOrNull)
     {
@@ -126,12 +136,14 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences)
     {
         logAccess(sessionToken, "load_images", "IMAGE_REFERENCES(%s)", imageReferences);
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, IDatasetIdentifier dataSetIdentifier,
             List<WellPosition> wellPositions, String channel, ImageSize thumbnailSizeOrNull)
     {
@@ -140,6 +152,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, IDatasetIdentifier dataSetIdentifier,
             String channel, ImageSize thumbnailSizeOrNull)
     {
@@ -149,6 +162,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<MicroscopyImageReference> listImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, String channel)
     {
@@ -157,6 +171,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<MicroscopyImageReference> listImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<String> channels)
     {
@@ -165,6 +180,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<PlateImageReference> listPlateImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions, String channel)
     {
@@ -173,6 +189,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<PlateImageReference> listPlateImageReferences(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions,
             List<String> channels)
@@ -182,6 +199,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public void saveImageTransformerFactory(String sessionToken,
             List<IDatasetIdentifier> dataSetIdentifiers, String channel,
             IImageTransformerFactory transformerFactory)
@@ -191,6 +209,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
                 transformerFactory);
     }
 
+    @Override
     public IImageTransformerFactory getImageTransformerFactoryOrNull(String sessionToken,
             List<IDatasetIdentifier> dataSetIdentifiers, String channel)
     {
@@ -199,6 +218,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<ImageDatasetMetadata> listImageMetadata(String sessionToken,
             List<? extends IImageDatasetIdentifier> imageDatasets)
     {
@@ -221,6 +241,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadThumbnailImages(String sessionToken,
             List<PlateImageReference> imageReferences)
     {
@@ -228,6 +249,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadThumbnailImages(String sessionToken,
             IDatasetIdentifier dataSetIdentifier, List<String> channels)
     {
@@ -236,6 +258,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             LoadImageConfiguration configuration)
     {
@@ -244,6 +267,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             ImageRepresentationFormat format)
     {
@@ -252,6 +276,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public InputStream loadImages(String sessionToken, List<PlateImageReference> imageReferences,
             IImageRepresentationFormatSelectionCriterion... criteria)
     {
@@ -260,6 +285,7 @@ public class DssServiceRpcScreeningLogger extends AbstractServerLogger implement
         return null;
     }
 
+    @Override
     public List<DatasetImageRepresentationFormats> listAvailableImageRepresentationFormats(
             String sessionToken, List<? extends IDatasetIdentifier> imageDatasets)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/DatasetIdentifierPredicate.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/DatasetIdentifierPredicate.java
index efc4e5f19dacfca034184a0acbc2338eb0493406..3fd54edab3b810a60a7ba640ae3541a85f2150a4 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/DatasetIdentifierPredicate.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/DatasetIdentifierPredicate.java
@@ -34,6 +34,7 @@ public class DatasetIdentifierPredicate extends
         AbstractDataSetAccessPredicate<IDssServiceRpcScreening, List<? extends IDatasetIdentifier>>
 {
 
+    @Override
     public List<String> getDataSetCodes(List<? extends IDatasetIdentifier> datasetIdentifiers)
     {
         final List<String> result = new ArrayList<String>();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/SingleDataSetIdentifierPredicate.java b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/SingleDataSetIdentifierPredicate.java
index 76a5958e0f57da28150dee0edb02630498edb34d..794ec604cb2d478ba4460fadec4b8c61ebef1e1b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/SingleDataSetIdentifierPredicate.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/dss/screening/shared/api/internal/authorization/SingleDataSetIdentifierPredicate.java
@@ -33,6 +33,7 @@ import ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.IDatasetIdent
 public class SingleDataSetIdentifierPredicate extends
         AbstractDataSetAccessPredicate<IDssServiceRpcScreening, IDatasetIdentifier>
 {
+    @Override
     public List<String> getDataSetCodes(IDatasetIdentifier argument)
     {
         return Arrays.asList(argument.getDatasetCode());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ExampleImageTransformerFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ExampleImageTransformerFactory.java
index 80e48bbb785576dfe9e9fe59aa5972cb046fd191..862bad440886ddb8f3cefad5586842aa66080b63 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ExampleImageTransformerFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ExampleImageTransformerFactory.java
@@ -83,10 +83,12 @@ public class ExampleImageTransformerFactory implements IImageTransformerFactory
         this.brightnessDelta = brightnessDelta;
     }
 
+    @Override
     public IImageTransformer createTransformer()
     {
         return new IImageTransformer()
             {
+                @Override
                 public BufferedImage transform(BufferedImage input)
                 {
                     int width = input.getWidth();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ImageViewer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ImageViewer.java
index 487e68c5905f64918e353f4c001ca3dba6e2c91a..d86a7fb772976c0544f9a23db49d522638c5a05a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ImageViewer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ImageViewer.java
@@ -27,6 +27,7 @@ import javax.swing.ImageIcon;
 import javax.swing.JFrame;
 import javax.swing.JLabel;
 import javax.swing.JPanel;
+import javax.swing.WindowConstants;
 
 import ch.systemsx.cisd.base.image.IImageTransformerFactory;
 import ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.DataSetCodeAndWellPositions;
@@ -56,7 +57,7 @@ public class ImageViewer
         }
 
         JFrame frame = new JFrame("Image Viewer");
-        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+        frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
         Container contentPane = frame.getContentPane();
         JPanel content = new JPanel();
         content.setLayout(new BoxLayout(content, BoxLayout.Y_AXIS));
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadEmptyImagesTest.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadEmptyImagesTest.java
index f14c3e9ec814a3149337776c434914827a485c24..9156702f3a08e7ba4bf08520034d1b9c21e2cd92 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadEmptyImagesTest.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadEmptyImagesTest.java
@@ -165,6 +165,7 @@ public class LoadEmptyImagesTest
     {
         facade.loadImages(imageReferences, config, new IPlateImageHandler()
             {
+                @Override
                 public void handlePlateImage(PlateImageReference plateImageReference,
                         byte[] imageFileBytes)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesScreeningClientApiTest.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesScreeningClientApiTest.java
index dda1ea07f76083b59e6ed6957e2beecc3e2e3fb2..bfcb96e6f76ed854d96efcb3964ba4e462379c8c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesScreeningClientApiTest.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesScreeningClientApiTest.java
@@ -133,6 +133,7 @@ public class LoadImagesScreeningClientApiTest
         {
             facade.loadImages(Arrays.asList(imageReference), new IImageOutputStreamProvider()
                 {
+                    @Override
                     public OutputStream getOutputStream(PlateImageReference imageRef)
                             throws IOException
                     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesWithTransformationTest.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesWithTransformationTest.java
index 10cac36b4137bc05a9fa2032083090587b0de50c..8b583ce1f03617d60b87c155fe4e4aababc8c325 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesWithTransformationTest.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadImagesWithTransformationTest.java
@@ -114,6 +114,7 @@ public class LoadImagesWithTransformationTest
     {
         facade.loadImages(imageReferences, config, new IPlateImageHandler()
             {
+                @Override
                 public void handlePlateImage(PlateImageReference plateImageReference,
                         byte[] imageFileBytes)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadThumbnailsPerformanceTest.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadThumbnailsPerformanceTest.java
index dffd28fe8d7043f43409d470ba3b0cfa1c634cd0..79b187c330a0212360d9dc03a71c09a0f22bef08 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadThumbnailsPerformanceTest.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/LoadThumbnailsPerformanceTest.java
@@ -143,6 +143,7 @@ public class LoadThumbnailsPerformanceTest
     {
         facade.loadThumbnailImages(imageReferences, new IPlateImageHandler()
             {
+                @Override
                 public void handlePlateImage(PlateImageReference plateImageReference,
                         byte[] imageFileBytes)
                 {
@@ -157,6 +158,7 @@ public class LoadThumbnailsPerformanceTest
     {
         facade.loadImages(imageReferences, config, new IPlateImageHandler()
             {
+                @Override
                 public void handlePlateImage(PlateImageReference plateImageReference,
                         byte[] imageFileBytes)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTest.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTest.java
index 724c8b27ae8ba12e1afa70423e0ed363a18be759..27cb00676e36cd276b42f7f3ff27323ed3a113d9 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTest.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTest.java
@@ -130,6 +130,7 @@ public class ScreeningClientApiTest
         List<ImageDatasetReference> imageDatasets = facade.listImageDatasets(plates);
         Collections.sort(imageDatasets, new Comparator<ImageDatasetReference>()
             {
+                @Override
                 public int compare(ImageDatasetReference r1, ImageDatasetReference r2)
                 {
                     return r2.getPlate().getPlateCode().compareTo(r1.getPlate().getPlateCode());
@@ -141,6 +142,7 @@ public class ScreeningClientApiTest
                 facade.listFeatureVectorDatasets(plates, null);
         Collections.sort(featureVectorDatasets, new Comparator<FeatureVectorDatasetReference>()
             {
+                @Override
                 public int compare(FeatureVectorDatasetReference r1,
                         FeatureVectorDatasetReference r2)
                 {
@@ -157,6 +159,7 @@ public class ScreeningClientApiTest
                 facade.loadFeatures(featureVectorDatasets, featureCodes);
         Collections.sort(features, new Comparator<FeatureVectorDataset>()
             {
+                @Override
                 public int compare(FeatureVectorDataset f1, FeatureVectorDataset f2)
                 {
                     return f2.getDataset().getPlate().getPlateCode()
@@ -367,6 +370,7 @@ public class ScreeningClientApiTest
         {
             facade.loadImages(imageReferences, new IImageOutputStreamProvider()
                 {
+                    @Override
                     public OutputStream getOutputStream(PlateImageReference imageReference)
                             throws IOException
                     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTester.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTester.java
index e06795706dab071b7c8cf90c4f4d96f1f8bad758..a8bc1ecf8d070cb166bb60ed00272b3582c09468 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTester.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningClientApiTester.java
@@ -48,6 +48,8 @@ import javax.swing.JPasswordField;
 import javax.swing.JScrollPane;
 import javax.swing.JTextArea;
 import javax.swing.JTextField;
+import javax.swing.SwingConstants;
+import javax.swing.WindowConstants;
 import javax.swing.text.JTextComponent;
 
 import org.apache.log4j.PropertyConfigurator;
@@ -141,6 +143,7 @@ public class ScreeningClientApiTester
             JMenuItem loadPlatesMenuItem = new JMenuItem("List Plates");
             loadPlatesMenuItem.addActionListener(new ActionListener()
                 {
+                    @Override
                     public void actionPerformed(ActionEvent e)
                     {
                         loadPlates();
@@ -151,6 +154,7 @@ public class ScreeningClientApiTester
             callApiMenu.add(loadImagesByDataSetMenu);
             loadImagesByDataSetMenu.addActionListener(new ActionListener()
                 {
+                    @Override
                     public void actionPerformed(ActionEvent e)
                     {
                         loadImagesByDataSetCode();
@@ -160,6 +164,7 @@ public class ScreeningClientApiTester
             callApiMenu.add(overlayItem);
             overlayItem.addActionListener(new ActionListener()
                 {
+                    @Override
                     public void actionPerformed(ActionEvent e)
                     {
                         loadOverlays();
@@ -169,6 +174,7 @@ public class ScreeningClientApiTester
             callApiMenu.add(listAnalysisProceduresMenuItem);
             listAnalysisProceduresMenuItem.addActionListener(new ActionListener()
                 {
+                    @Override
                     public void actionPerformed(ActionEvent e)
                     {
                         listAnalysisProcedures();
@@ -178,6 +184,7 @@ public class ScreeningClientApiTester
             callApiMenu.add(listPlatesMenuItem);
             listPlatesMenuItem.addActionListener(new ActionListener()
             {
+                @Override
                 public void actionPerformed(ActionEvent e)
                 {
                     listPlates();
@@ -224,13 +231,13 @@ public class ScreeningClientApiTester
             textArea.setEditable(false);
             content.add(textArea, BorderLayout.CENTER);
             List<Plate> plates = facade.listPlates();
-            panel.add(new JLabel(plates.size() + " plates", JLabel.LEFT));
+            panel.add(new JLabel(plates.size() + " plates", SwingConstants.LEFT));
             validate(panel);
             List<ImageDatasetReference> rawImageDatasets = facade.listRawImageDatasets(plates);
-            panel.add(new JLabel(rawImageDatasets.size() + " raw image data sets", JLabel.LEFT));
+            panel.add(new JLabel(rawImageDatasets.size() + " raw image data sets", SwingConstants.LEFT));
             validate(panel);
             List<ImageDatasetReference> overlays = facade.listSegmentationImageDatasets(plates, null);
-            panel.add(new JLabel(overlays.size() + " overlay data sets:", JLabel.LEFT));
+            panel.add(new JLabel(overlays.size() + " overlay data sets:", SwingConstants.LEFT));
             StringBuilder builder = new StringBuilder();
             for (ImageDatasetReference overlay : overlays)
             {
@@ -258,6 +265,7 @@ public class ScreeningClientApiTester
                 JButton button = new JButton(plate.toString() + " " + listPlateWells.size() + " wells");
                 button.addActionListener(new ActionListener()
                     {
+                        @Override
                         public void actionPerformed(ActionEvent e)
                         {
                             if (listPlateWells.isEmpty())
@@ -345,6 +353,7 @@ public class ScreeningClientApiTester
                 final ImageSize imageSize = getImageSize(sizeField);
                 new Thread(new Runnable()
                     {
+                        @Override
                         public void run()
                         {
                             final long t0 = System.currentTimeMillis();
@@ -358,6 +367,7 @@ public class ScreeningClientApiTester
                                 EventQueue.invokeLater(new Runnable()
                                     {
 
+                                        @Override
                                         public void run()
                                         {
                                             JOptionPane.showMessageDialog(TesterFrame.this,
@@ -378,6 +388,7 @@ public class ScreeningClientApiTester
         {
             new Thread(new Runnable()
                 {
+                    @Override
                     public void run()
                     {
                         final ByteArrayOutputStream outputStream = new ByteArrayOutputStream();
@@ -386,6 +397,7 @@ public class ScreeningClientApiTester
                             facade.loadImages(Collections.singletonList(plateImageReference),
                                     new IImageOutputStreamProvider()
                                         {
+                                            @Override
                                             public OutputStream getOutputStream(
                                                     PlateImageReference imageReference)
                                                     throws IOException
@@ -395,6 +407,7 @@ public class ScreeningClientApiTester
                                         }, true);
                             EventQueue.invokeLater(new Runnable()
                                 {
+                                    @Override
                                     public void run()
                                     {
                                         ImageIcon image = new ImageIcon(outputStream.toByteArray());
@@ -405,7 +418,7 @@ public class ScreeningClientApiTester
                                         JFrame frame = new JFrame(plateImageReference.toString());
                                         frame.getContentPane().add(scrollPane);
                                         frame.setSize(800, 600);
-                                        frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
+                                        frame.setDefaultCloseOperation(WindowConstants.DISPOSE_ON_CLOSE);
                                         frame.setVisible(true);
                                     }
                                 });
@@ -442,6 +455,7 @@ public class ScreeningClientApiTester
         {
             return new IPlateImageHandler()
                 {
+                    @Override
                     public void handlePlateImage(final PlateImageReference plateImageReference,
                             final byte[] imageFileBytes)
                     {
@@ -450,6 +464,7 @@ public class ScreeningClientApiTester
                         EventQueue.invokeLater(new Runnable()
                             {
 
+                                @Override
                                 public void run()
                                 {
                                     JButton image =
@@ -458,6 +473,7 @@ public class ScreeningClientApiTester
                                     image.addActionListener(new ActionListener()
                                         {
 
+                                            @Override
                                             public void actionPerformed(ActionEvent e)
                                             {
                                                 showFullImage(plateImageReference);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java
index b9acff98e2223b21e198656ad65688816a652a15..ccf4a91517f242934f4ead6e727d1e46d60f06c6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacade.java
@@ -107,6 +107,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
 
     private static final IDssServiceFactory DSS_SERVICE_FACTORY = new IDssServiceFactory()
         {
+            @Override
             public DssServiceRpcScreeningHolder createDssService(String serverUrl)
             {
                 return new DssServiceRpcScreeningHolder(serverUrl);
@@ -271,6 +272,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                 private final Map<String/* url */, DssServiceRpcScreeningHolder> cache =
                         new HashMap<String, DssServiceRpcScreeningHolder>();
 
+                @Override
                 public DssServiceRpcScreeningHolder createDssService(String serverUrl)
                 {
                     DssServiceRpcScreeningHolder dssServiceHolder = cache.get(serverUrl);
@@ -296,18 +298,21 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
     /**
      * Return the session token for this authenticated user.
      */
+    @Override
     public String getSessionToken()
     {
         return sessionToken;
     }
 
     /** Closes connection with the server. After calling this method this facade cannot be used. */
+    @Override
     public void logout()
     {
         checkASMinimalMinorVersion("logoutScreening");
         openbisScreeningServer.logoutScreening(sessionToken);
     }
 
+    @Override
     public void clearWellImageCache()
     {
         imageCache.clear();
@@ -317,12 +322,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * Return the list of all visible plates assigned to any experiment, along with their
      * hierarchical context (space, project, experiment).
      */
+    @Override
     public List<Plate> listPlates()
     {
         checkASMinimalMinorVersion("listPlates");
         return openbisScreeningServer.listPlates(sessionToken);
     }
 
+    @Override
     public List<PlateMetadata> getPlateMetadataList(List<? extends PlateIdentifier> plateIdentifiers)
     {
         checkASMinimalMinorVersion("getPlateMetadataList", List.class);
@@ -332,6 +339,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
     /**
      * Return the list of all plates for the given <var>experiment</var>.
      */
+    @Override
     public List<Plate> listPlates(ExperimentIdentifier experiment)
     {
         if (hasASMethod("listPlates", ExperimentIdentifier.class))
@@ -354,6 +362,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         }
     }
 
+    @Override
     public List<Plate> listPlates(ExperimentIdentifier experiment, String analysisProcedure)
     {
         SearchCriteria searchCriteria = new SearchCriteria();
@@ -400,12 +409,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return plates;
     }
 
+    @Override
     public List<ExperimentIdentifier> listExperiments()
     {
         checkASMinimalMinorVersion("listExperiments");
         return openbisScreeningServer.listExperiments(sessionToken);
     }
 
+    @Override
     public List<ExperimentIdentifier> listExperiments(String userId)
     {
         checkASMinimalMinorVersion("listExperiments", String.class);
@@ -416,6 +427,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * For a given set of plates provides the list of all connected data sets containing feature
      * vectors.
      */
+    @Override
     public List<FeatureVectorDatasetReference> listFeatureVectorDatasets(
             List<? extends PlateIdentifier> plates)
     {
@@ -423,6 +435,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return openbisScreeningServer.listFeatureVectorDatasets(sessionToken, plates);
     }
 
+    @Override
     public List<FeatureVectorDatasetReference> listFeatureVectorDatasets(
             List<? extends PlateIdentifier> plates, String analysisProcedureOrNull)
     {
@@ -454,6 +467,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * 
      * @deprecated Use {@link #listRawImageDatasets(List)} instead.
      */
+    @Override
     @Deprecated
     public List<ImageDatasetReference> listImageDatasets(List<? extends PlateIdentifier> plates)
     {
@@ -464,6 +478,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
     /**
      * For a given set of plates provides the list of all connected data sets containing raw images.
      */
+    @Override
     public List<ImageDatasetReference> listRawImageDatasets(List<? extends PlateIdentifier> plates)
     {
         if (hasASMethod("listRawImageDatasets", List.class))
@@ -479,6 +494,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
     /**
      * For a given set of plates provides the list of all connected data sets containing images.
      */
+    @Override
     public List<ImageDatasetReference> listSegmentationImageDatasets(
             List<? extends PlateIdentifier> plates)
     {
@@ -489,6 +505,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return Collections.emptyList();
     }
 
+    @Override
     public List<ImageDatasetReference> listSegmentationImageDatasets(
             List<? extends PlateIdentifier> plates, String analysisProcedureOrNull)
     {
@@ -501,6 +518,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * the specified <var>materialIdentifier</var>. If <code>findDatasets == true</code>, find also
      * the connected image and image analysis data sets for the relevant plates.
      */
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(
             ExperimentIdentifier experimentIdentifer, MaterialIdentifier materialIdentifier,
             boolean findDatasets)
@@ -516,6 +534,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * it. If <code>findDatasets == true</code>, find also the connected image and image analysis
      * data sets for the relevant plates.
      */
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(
             MaterialIdentifier materialIdentifier, boolean findDatasets)
     {
@@ -527,12 +546,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
     /**
      * For the given <var>plateIdentifier</var> find all wells that are connected to it.
      */
+    @Override
     public List<WellIdentifier> listPlateWells(PlateIdentifier plateIdentifier)
     {
         checkASMinimalMinorVersion("listPlateWells", PlateIdentifier.class);
         return openbisScreeningServer.listPlateWells(sessionToken, plateIdentifier);
     }
 
+    @Override
     public Map<String, String> getWellProperties(WellIdentifier wellIdentifier)
     {
         Sample wellSample = openbisScreeningServer.getWellSample(sessionToken, wellIdentifier);
@@ -540,6 +561,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return properties;
     }
 
+    @Override
     public void updateWellProperties(WellIdentifier wellIdentifier, Map<String, String> properties)
     {
         Sample wellSample = openbisScreeningServer.getWellSample(sessionToken, wellIdentifier);
@@ -554,6 +576,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * @throws EnvironmentFailureException Thrown in cases where it is not possible to connect to
      *             the server.
      */
+    @Override
     public List<IDataSetDss> getDataSets(WellIdentifier wellIdentifier,
             String datasetTypeCodePattern) throws IllegalStateException,
             EnvironmentFailureException
@@ -561,6 +584,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return getDataSets(wellIdentifier, new TypeBasedDataSetFilter(datasetTypeCodePattern));
     }
 
+    @Override
     public List<IDataSetDss> getDataSets(WellIdentifier wellIdentifier, IDataSetFilter dataSetFilter)
             throws IllegalStateException, EnvironmentFailureException
     {
@@ -568,6 +592,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return getDataSets(wellSample, dataSetFilter);
     }
 
+    @Override
     public IDataSetDss getDataSet(String dataSetCode) throws IllegalStateException,
             EnvironmentFailureException
     {
@@ -581,6 +606,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * @throws EnvironmentFailureException Thrown in cases where it is not possible to connect to
      *             the server.
      */
+    @Override
     public List<IDataSetDss> getDataSets(PlateIdentifier plateIdentifier,
             final String datasetTypeCodePattern) throws IllegalStateException,
             EnvironmentFailureException
@@ -588,6 +614,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return getDataSets(plateIdentifier, new TypeBasedDataSetFilter(datasetTypeCodePattern));
     }
 
+    @Override
     public List<IDataSetDss> getDataSets(PlateIdentifier plateIdentifier,
             IDataSetFilter dataSetFilter) throws IllegalStateException, EnvironmentFailureException
     {
@@ -612,6 +639,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<ch.systemsx.cisd.openbis.dss.client.api.v1.DataSet> getFullDataSets(
             PlateIdentifier plateIdentifier, IDataSetFilter dataSetFilter)
             throws IllegalStateException, EnvironmentFailureException
@@ -643,6 +671,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<IDataSetDss> getDataSets(final ExperimentIdentifier experimentIdentifier,
             IDataSetFilter filter)
     {
@@ -666,6 +695,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<ch.systemsx.cisd.openbis.dss.client.api.v1.DataSet> getFullDataSets(
             ExperimentIdentifier experimentIdentifier, IDataSetFilter dataSetFilter)
             throws IllegalStateException, EnvironmentFailureException
@@ -703,6 +733,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<ch.systemsx.cisd.openbis.dss.client.api.v1.DataSet> getDataSetMetaData(
             List<String> dataSetCodes)
     {
@@ -733,6 +764,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      *             the server.
      * @throws IOException when accessing the data set file or folder fails
      */
+    @Override
     public IDataSetDss putDataSet(WellIdentifier wellIdentifier, File dataSetFile,
             NewDataSetMetadataDTO dataSetMetadataOrNull) throws IllegalStateException,
             EnvironmentFailureException, IOException
@@ -747,6 +779,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return openbisScreeningServer.getWellSample(sessionToken, wellIdentifier);
     }
 
+    @Override
     public IDataSetDss putDataSet(PlateIdentifier plateIdentifier, File dataSetFile,
             NewDataSetMetadataDTO dataSetMetadataOrNull) throws IllegalStateException,
             EnvironmentFailureException, IOException
@@ -755,6 +788,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return createDataSetDss(sample, dataSetMetadataOrNull, dataSetFile);
     }
 
+    @Override
     public IDataSetDss putDataSet(ExperimentIdentifier experimentIdentifier, File dataSetFile,
             NewDataSetMetadataDTO dataSetMetadataOrNull) throws IllegalStateException,
             EnvironmentFailureException, IOException
@@ -815,12 +849,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * Converts a given list of dataset codes to dataset identifiers which can be used in other API
      * calls.
      */
+    @Override
     public List<IDatasetIdentifier> getDatasetIdentifiers(List<String> datasetCodes)
     {
         checkASMinimalMinorVersion("getDatasetIdentifiers", List.class);
         return openbisScreeningServer.getDatasetIdentifiers(sessionToken, datasetCodes);
     }
 
+    @Override
     public List<String> listAvailableFeatureNames(
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -832,6 +868,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * is just the code of the feature. If for different data sets different sets of features are
      * available, provides the union of the feature names of all data sets.
      */
+    @Override
     public List<String> listAvailableFeatureCodes(
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -839,6 +876,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         featureVectorDataSetIdentifierMultiplexer.process(featureDatasets,
                 new IReferenceHandler<IFeatureVectorDatasetIdentifier>()
                     {
+                        @Override
                         @SuppressWarnings("deprecation")
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<IFeatureVectorDatasetIdentifier> references)
@@ -859,6 +897,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * sets of features are available, provide the union of the features of all data sets. Only
      * available when all data store services have minor version 9 or newer.
      */
+    @Override
     public List<FeatureInformation> listAvailableFeatures(
             List<? extends IFeatureVectorDatasetIdentifier> featureDatasets)
     {
@@ -866,6 +905,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         featureVectorDataSetIdentifierMultiplexer.process(featureDatasets,
                 new IReferenceHandler<IFeatureVectorDatasetIdentifier>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<IFeatureVectorDatasetIdentifier> references)
                         {
@@ -902,6 +942,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * @return The list of {@link FeatureVectorDataset}s, each element corresponds to one of the
      *         <var>featureDatasets</var>.
      */
+    @Override
     public List<FeatureVectorDataset> loadFeaturesForPlates(List<? extends PlateIdentifier> plates,
             final List<String> featureCodesOrNull)
     {
@@ -909,6 +950,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return loadFeatures(datasets, featureCodesOrNull);
     }
 
+    @Override
     public List<FeatureVectorDataset> loadFeaturesForPlates(List<? extends PlateIdentifier> plates,
             List<String> featureCodesOrNull, String analysisProcedureOrNull)
     {
@@ -927,6 +969,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * @return The list of {@link FeatureVectorDataset}s, each element corresponds to one of the
      *         <var>featureDatasets</var>.
      */
+    @Override
     public List<FeatureVectorDataset> loadFeatures(
             List<FeatureVectorDatasetReference> featureDatasets,
             final List<String> featureCodesOrNull)
@@ -939,6 +982,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         featureVectorDataSetReferenceMultiplexer.process(featureDatasets,
                 new IReferenceHandler<FeatureVectorDatasetReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<FeatureVectorDatasetReference> references)
                         {
@@ -951,6 +995,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<FeatureVectorDatasetWellReference> convertToFeatureVectorDatasetWellIdentifier(
             List<PlateWellReferenceWithDatasets> plateWellReferenceWithDataSets)
     {
@@ -977,6 +1022,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                 fvdr.getProperties(), wellPosition);
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForDatasetWellReferences(
             final List<FeatureVectorDatasetWellReference> datasetWellReferences,
             final List<String> featureCodesOrNull)
@@ -990,6 +1036,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         featureVectorDataSetWellReferenceMultiplexer.process(datasetWellReferences,
                 new IReferenceHandler<FeatureVectorDatasetWellReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<FeatureVectorDatasetWellReference> references)
                         {
@@ -1008,6 +1055,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return featureCodeOrNull == null || featureCodeOrNull.isEmpty();
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForPlateWells(
             ExperimentIdentifier experimentIdentifer, MaterialIdentifier materialIdentifier,
             List<String> featureCodesOrNull)
@@ -1016,6 +1064,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                 featureCodesOrNull);
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForPlateWells(
             ExperimentIdentifier experimentIdentifer, MaterialIdentifier materialIdentifier,
             String analysisProcedureOrNull, List<String> featureCodesOrNull)
@@ -1025,12 +1074,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return loadFeatureVectors(featureCodesOrNull, analysisProcedureOrNull, plateWellRefs);
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForPlateWells(
             MaterialIdentifier materialIdentifier, List<String> featureCodesOrNull)
     {
         return loadFeaturesForPlateWells(materialIdentifier, null, featureCodesOrNull);
     }
 
+    @Override
     public List<FeatureVectorWithDescription> loadFeaturesForPlateWells(
             MaterialIdentifier materialIdentifier, String analysisProcedureOrNull,
             List<String> featureCodesOrNull)
@@ -1082,6 +1133,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         OutputStream getOutputStream(PlateImageReference imageReference) throws IOException;
     }
 
+    @Override
     public List<WellPosition> convertToWellPositions(List<WellIdentifier> wellIds)
     {
         final List<WellPosition> result = new ArrayList<WellPosition>(wellIds.size());
@@ -1092,12 +1144,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<PlateImageReference> createPlateImageReferences(
             ImageDatasetReference imageDatasetRef)
     {
         return createPlateImageReferences(imageDatasetRef, null, null, null);
     }
 
+    @Override
     public List<PlateImageReference> createPlateImageReferences(
             ImageDatasetReference imageDatasetRef, List<String> channelCodesOrNull,
             List<WellPosition> wellsOrNull)
@@ -1105,6 +1159,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return createPlateImageReferences(imageDatasetRef, null, channelCodesOrNull, wellsOrNull);
     }
 
+    @Override
     public List<PlateImageReference> createPlateImageReferences(
             ImageDatasetReference imageDatasetRef, ImageDatasetMetadata metadataOrNull,
             List<String> channelCodesOrNull, List<WellPosition> wellsOrNull)
@@ -1116,6 +1171,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                 metadataOrNull, channelCodesOrNull, wellsToUse);
     }
 
+    @Override
     public List<PlateImageReference> createPlateImageReferences(
             IImageDatasetIdentifier imageDatasetId, List<String> channeldCodesOrNull,
             List<WellPosition> wellsToUse)
@@ -1123,6 +1179,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return createPlateImageReferences(imageDatasetId, null, channeldCodesOrNull, wellsToUse);
     }
 
+    @Override
     public List<PlateImageReference> createPlateImageReferences(
             IImageDatasetIdentifier imageDatasetId, ImageDatasetMetadata metadataOrNull,
             List<String> channelCodesOrNull, List<WellPosition> wellsToUse)
@@ -1189,6 +1246,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * @throws IOException when reading images from the server or writing them to the output streams
      *             fails
      */
+    @Override
     public void loadImages(List<PlateImageReference> imageReferences,
             final IImageOutputStreamProvider outputStreamProvider) throws IOException
     {
@@ -1211,6 +1269,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
      * @throws IOException when reading images from the server or writing them to the output streams
      *             fails
      */
+    @Override
     public void loadImages(final List<PlateImageReference> imageReferences,
             final IImageOutputStreamProvider outputStreamProvider, final boolean convertToPNG)
             throws IOException
@@ -1220,6 +1279,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
             plateImageReferencesMultiplexer.process(imageReferences,
                     new IReferenceHandler<PlateImageReference>()
                         {
+                            @Override
                             public void handle(DssServiceRpcScreeningHolder dssService,
                                     List<PlateImageReference> references)
                             {
@@ -1271,6 +1331,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         }
     }
 
+    @Override
     public void loadImages(final List<PlateImageReference> imageReferences,
             final boolean convertToPNG, final IPlateImageHandler plateImageHandler)
             throws IOException
@@ -1280,6 +1341,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
             plateImageReferencesMultiplexer.process(imageReferences,
                     new IReferenceHandler<PlateImageReference>()
                         {
+                            @Override
                             public void handle(DssServiceRpcScreeningHolder dssService,
                                     List<PlateImageReference> references)
                             {
@@ -1310,6 +1372,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         }
     }
 
+    @Override
     public List<byte[]> loadImages(IDatasetIdentifier dataSetIdentifier,
             List<WellPosition> wellPositions, String channel, ImageSize thumbnailSizeOrNull)
             throws IOException
@@ -1335,6 +1398,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public void loadImages(IDatasetIdentifier dataSetIdentifier, List<WellPosition> wellPositions,
             String channel, ImageSize thumbnailSizeOrNull, IPlateImageHandler plateImageHandler)
             throws IOException
@@ -1353,6 +1417,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         processImagesStream(plateImageHandler, plateImageReferences, stream);
     }
 
+    @Override
     public byte[] loadImageWellCaching(final PlateImageReference imageReference,
             final ImageSize imageSizeOrNull) throws IOException
     {
@@ -1375,6 +1440,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                                 Collections.singletonList(imageReference.getWellPosition()));
                 loadImages(imageReferences, imageSizeOrNull, new IPlateImageHandler()
                     {
+                        @Override
                         public void handlePlateImage(PlateImageReference plateImageReference,
                                 byte[] imageFileBytes)
                         {
@@ -1399,12 +1465,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return imageOrNull.getImageData();
     }
 
+    @Override
     public void loadImages(List<PlateImageReference> imageReferences, final ImageSize sizeOrNull,
             final IPlateImageHandler plateImageHandler) throws IOException
     {
         plateImageReferencesMultiplexer.process(imageReferences,
                 new IReferenceHandler<PlateImageReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<PlateImageReference> references)
                         {
@@ -1419,6 +1487,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                     });
     }
 
+    @Override
     public byte[] loadThumbnailImageWellCaching(final PlateImageReference imageReference)
             throws IOException
     {
@@ -1451,6 +1520,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                                 Collections.singletonList(imageReference.getWellPosition()));
                 loadThumbnailImages(imageReferences, new IPlateImageHandler()
                     {
+                        @Override
                         public void handlePlateImage(PlateImageReference plateImageReference,
                                 byte[] imageFileBytes)
                         {
@@ -1476,12 +1546,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return imageOrNull.getImageData();
     }
 
+    @Override
     public void loadThumbnailImages(List<PlateImageReference> imageReferences,
             final IPlateImageHandler plateImageHandler) throws IOException
     {
         plateImageReferencesMultiplexer.process(imageReferences,
                 new IReferenceHandler<PlateImageReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<PlateImageReference> references)
                         {
@@ -1496,12 +1568,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                     });
     }
 
+    @Override
     public void loadThumbnailImages(List<PlateImageReference> imageReferences,
             final IImageOutputStreamProvider outputStreamProvider) throws IOException
     {
         plateImageReferencesMultiplexer.process(imageReferences,
                 new IReferenceHandler<PlateImageReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<PlateImageReference> references)
                         {
@@ -1538,6 +1612,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                     });
     }
 
+    @Override
     public void saveImageTransformerFactory(List<IDatasetIdentifier> dataSetIdentifiers,
             String channel, IImageTransformerFactory transformerFactoryOrNull)
     {
@@ -1553,6 +1628,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         }
     }
 
+    @Override
     public IImageTransformerFactory getImageTransformerFactoryOrNull(
             List<IDatasetIdentifier> dataSetIdentifiers, String channel)
     {
@@ -1569,6 +1645,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return service.getImageTransformerFactoryOrNull(sessionToken, dataSetIdentifiers, channel);
     }
 
+    @Override
     public ImageDatasetMetadata listImageMetadata(IImageDatasetIdentifier imageDataset)
     {
         final List<ImageDatasetMetadata> metadataList =
@@ -1581,12 +1658,14 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return metadataList.get(0);
     }
 
+    @Override
     public List<ImageDatasetMetadata> listImageMetadata(
             List<? extends IImageDatasetIdentifier> imageDatasets)
     {
         final List<ImageDatasetMetadata> result = new ArrayList<ImageDatasetMetadata>();
         metaDataMultiplexer.process(imageDatasets, new IReferenceHandler<IImageDatasetIdentifier>()
             {
+                @Override
                 public void handle(DssServiceRpcScreeningHolder dssService,
                         List<IImageDatasetIdentifier> references)
                 {
@@ -1618,6 +1697,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         return result;
     }
 
+    @Override
     public List<PlateWellMaterialMapping> listPlateMaterialMapping(
             List<? extends PlateIdentifier> plates,
             MaterialTypeIdentifier materialTypeIdentifierOrNull)
@@ -1626,6 +1706,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                 materialTypeIdentifierOrNull);
     }
 
+    @Override
     public List<String> listAnalysisProcedures(ExperimentIdentifier experimentIdentifier)
     {
         SearchCriteria searchCriteria = new SearchCriteria();
@@ -1803,6 +1884,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         }
     }
 
+    @Override
     public void loadImages(List<PlateImageReference> imageReferences,
             final LoadImageConfiguration configuration, final IPlateImageHandler plateImageHandler)
             throws IOException
@@ -1810,6 +1892,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         plateImageReferencesMultiplexer.process(imageReferences,
                 new IReferenceHandler<PlateImageReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<PlateImageReference> references)
                         {
@@ -1824,6 +1907,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                     });
     }
 
+    @Override
     public void loadImages(final List<PlateImageReference> imageReferences,
             final IPlateImageHandler plateImageHandler, final ImageRepresentationFormat format)
             throws IOException
@@ -1831,6 +1915,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         plateImageReferencesMultiplexer.process(imageReferences,
                 new IReferenceHandler<PlateImageReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<PlateImageReference> references)
                         {
@@ -1844,6 +1929,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                     });
     }
 
+    @Override
     public void loadImages(List<PlateImageReference> imageReferences,
             final IPlateImageHandler plateImageHandler,
             final IImageRepresentationFormatSelectionCriterion... criteria) throws IOException
@@ -1851,6 +1937,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         plateImageReferencesMultiplexer.process(imageReferences,
                 new IReferenceHandler<PlateImageReference>()
                     {
+                        @Override
                         public void handle(DssServiceRpcScreeningHolder dssService,
                                 List<PlateImageReference> references)
                         {
@@ -1906,6 +1993,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
         } while (size >= 0);
     }
 
+    @Override
     public ExperimentImageMetadata getExperimentImageMetadata(
             ExperimentIdentifier experimentIdentifier)
     {
@@ -1914,6 +2002,7 @@ public class ScreeningOpenbisServiceFacade implements IScreeningOpenbisServiceFa
                 .getExperimentImageMetadata(sessionToken, experimentIdentifier);
     }
 
+    @Override
     public List<DatasetImageRepresentationFormats> listAvailableImageRepresentationFormats(
             List<? extends IDatasetIdentifier> dataSetIdentifiers)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeFactory.java
index abe4f80ed8d585ad4b7707a33602c6999f738e57..03d4cf30af1fb79430314f847b4d8322c1d3541e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeFactory.java
@@ -27,12 +27,14 @@ public class ScreeningOpenbisServiceFacadeFactory implements IScreeningOpenbisSe
     public static final IScreeningOpenbisServiceFacadeFactory INSTANCE =
             new ScreeningOpenbisServiceFacadeFactory();
 
+    @Override
     public IScreeningOpenbisServiceFacade tryToCreate(String userId, String userPassword,
             String serverUrl)
     {
         return ScreeningOpenbisServiceFacade.tryCreate(userId, userPassword, serverUrl);
     }
 
+    @Override
     public IScreeningOpenbisServiceFacade tryToCreate(String sessionToken, String serverUrl)
     {
         return ScreeningOpenbisServiceFacade.tryCreate(sessionToken, serverUrl);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java
index 28998c078bc1ea5446bf9f1927187c313dca21e0..af2cc7d5f93588830881da4b39a995cc8a1d02ae 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ClientPluginFactory.java
@@ -59,6 +59,7 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.MaterialType;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.SampleType;
 import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.dataset.GenericDataSetViewer;
 import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.experiment.GenericExperimentViewer;
+import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.material.GenericMaterialViewer;
 import ch.systemsx.cisd.openbis.plugin.generic.client.web.client.application.sample.GenericSampleViewer;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.IScreeningClientServiceAsync;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.ExperimentAnalysisSummaryViewer;
@@ -118,6 +119,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
     // IClientPluginFactoryUsingWildcards
     //
 
+    @Override
     public List<String> getOrderedEntityTypeCodes(EntityKind entityKind)
     {
         ArrayList<String> types = new ArrayList<String>();
@@ -151,6 +153,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
         return types;
     }
 
+    @Override
     public final Set<String> getEntityTypeCodes(final EntityKind entityKind)
     {
         Set<String> types = new HashSet<String>();
@@ -158,6 +161,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
         return types;
     }
 
+    @Override
     @SuppressWarnings("unchecked")
     public <T extends BasicEntityType, I extends IIdAndCodeHolder> IClientPlugin<T, I> createClientPlugin(
             final EntityKind entityKind)
@@ -242,7 +246,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                     @Override
                     public String getTabTitle()
                     {
-                        return getViewerTitle(Dict.EXPERIMENT, entity, getViewContext());
+                        return getViewerTitle(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.EXPERIMENT, entity, getViewContext());
                     }
 
                     @Override
@@ -392,7 +396,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                 @Override
                 public String getId()
                 {
-                    return ImagingMaterialViewer.createId(TechId.create(material));
+                    return GenericMaterialViewer.createId(TechId.create(material));
                 }
 
                 @Override
@@ -404,7 +408,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                 @Override
                 public String getTabTitle()
                 {
-                    return getViewerTitle(Dict.MATERIAL, material, viewContext);
+                    return getViewerTitle(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.MATERIAL, material, viewContext);
                 }
 
                 @Override
@@ -507,7 +511,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                     public String getId()
                     {
                         final TechId id = TechId.create(entity);
-                        return MicroscopyDatasetViewer.createId(id);
+                        return GenericDataSetViewer.createId(id);
                     }
 
                     @Override
@@ -519,7 +523,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                     @Override
                     public String getTabTitle()
                     {
-                        return getViewerTitle(Dict.DATA_SET, entity, screeningViewContext);
+                        return getViewerTitle(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.DATA_SET, entity, screeningViewContext);
                     }
 
                     @Override
@@ -547,7 +551,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                     public String getId()
                     {
                         final TechId sampleId = TechId.create(entity);
-                        return PlateDatasetViewer.createId(sampleId);
+                        return GenericDataSetViewer.createId(sampleId);
                     }
 
                     @Override
@@ -559,7 +563,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                     @Override
                     public String getTabTitle()
                     {
-                        return getViewerTitle(Dict.DATA_SET, entity, screeningViewContext);
+                        return getViewerTitle(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.DATA_SET, entity, screeningViewContext);
                     }
 
                     @Override
@@ -649,6 +653,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                         {
                             ICodeHolder codeHolder = new ICodeHolder()
                                 {
+                                    @Override
                                     public String getCode()
                                     {
                                         if (wellLocationOrNull != null)
@@ -665,7 +670,7 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
                             return getViewerTitle(Dict.WELL, codeHolder, screeningViewContext);
                         } else
                         {
-                            return getViewerTitle(Dict.SAMPLE, entity, screeningViewContext);
+                            return getViewerTitle(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.SAMPLE, entity, screeningViewContext);
                         }
                     }
 
@@ -765,27 +770,32 @@ public final class ClientPluginFactory extends AbstractClientPluginFactory<Scree
             return clientPluginFactory;
         }
 
+        @Override
         public AbstractTabItemFactory createEntityViewer(
                 final IEntityInformationHolderWithPermId entity)
         {
             return delegator.createEntityViewer(entity);
         }
 
+        @Override
         public Widget createBatchRegistrationForEntityType(final T entityType)
         {
             return delegator.createBatchRegistrationForEntityType(entityType);
         }
 
+        @Override
         public Widget createBatchUpdateForEntityType(final T entityType)
         {
             return delegator.createBatchUpdateForEntityType(entityType);
         }
 
+        @Override
         public AbstractTabItemFactory createEntityEditor(final IIdAndCodeHolder identifiable)
         {
             return delegator.createEntityEditor(identifiable);
         }
 
+        @Override
         public DatabaseModificationAwareWidget createRegistrationForEntityType(T entityType,
                 ActionContext context)
         {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/DisplayTypeIDGenerator.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/DisplayTypeIDGenerator.java
index b4363ba6d1917c17280b0f7a0b47ce1b2ffa962d..7f519541ebca339ad7745d6f1e25a754eb201837 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/DisplayTypeIDGenerator.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/DisplayTypeIDGenerator.java
@@ -56,11 +56,13 @@ public enum DisplayTypeIDGenerator implements IDisplayTypeIDGenerator
         this.genericNameOrPrefix = genericNameOrPrefix;
     }
 
+    @Override
     public String createID()
     {
         return genericNameOrPrefix;
     }
 
+    @Override
     public String createID(String suffix)
     {
         return genericNameOrPrefix + suffix;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningDisplayTypeIDGenerator.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningDisplayTypeIDGenerator.java
index 13af2c5c42c4f6770334de76844a40d72ec5b722..e2fe5bc96f5fa5825e5c7dcfa467b7567abfee94 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningDisplayTypeIDGenerator.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningDisplayTypeIDGenerator.java
@@ -38,11 +38,13 @@ public enum ScreeningDisplayTypeIDGenerator implements IDisplayTypeIDGenerator
         this.genericNameOrPrefix = genericNameOrPrefix;
     }
 
+    @Override
     public String createID()
     {
         return genericNameOrPrefix;
     }
 
+    @Override
     public String createID(String suffix)
     {
         return genericNameOrPrefix + suffix;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningModule.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningModule.java
index b527454910761136a79433c2fa85eb0eb3a8ebf8..41a7510a72f63ca07ec1eb6af13c2809be35c813 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningModule.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningModule.java
@@ -54,6 +54,7 @@ public class ScreeningModule implements IModule
         this.viewContext = viewContext;
     }
 
+    @Override
     public List<? extends MenuItem> getMenuItems()
     {
         ActionMenu globalWellSearch =
@@ -66,16 +67,19 @@ public class ScreeningModule implements IModule
     {
         return new ITabActionMenuItemDefinition<IScreeningClientServiceAsync>()
             {
+                @Override
                 public String getName()
                 {
                     return Dict.WELLS_SEARCH_MENU_ITEM;
                 }
 
+                @Override
                 public String getHelpPageTitle()
                 {
                     return "Global Well Search";
                 }
 
+                @Override
                 public DatabaseModificationAwareComponent createComponent(
                         IViewContext<IScreeningClientServiceAsync> context)
                 {
@@ -84,6 +88,7 @@ public class ScreeningModule implements IModule
                     return DatabaseModificationAwareComponent.wrapUnaware(wellSearchTab);
                 }
 
+                @Override
                 public String tryGetLink()
                 {
                     return GlobalWellSearchLocatorResolver.createQueryBrowserLink();
@@ -92,16 +97,19 @@ public class ScreeningModule implements IModule
             };
     }
 
+    @Override
     public String getName()
     {
         return viewContext.getMessage(Dict.SCREENING_MODULE_TITLE);
     }
 
+    @Override
     public void initialize(AsyncCallback<Void> callback)
     {
         callback.onSuccess(null);
     }
 
+    @Override
     public Collection<? extends TabContent> getSections(
             IEntityInformationHolderWithIdentifier entity)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningViewContext.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningViewContext.java
index 383bc05e91af4b425e7802948258825227ad4f9b..e5ebbc639c11fb1fc093bfe695b9a23e5b667cfa 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningViewContext.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/ScreeningViewContext.java
@@ -30,6 +30,7 @@ public final class ScreeningViewContext extends
         super(commonViewContext);
     }
 
+    @Override
     public String getTechnology()
     {
         return TECHNOLOGY_NAME;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureChooser.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureChooser.java
index 311bc5df539f5ded9f0a5dbcdc075f205d118a75..247d5e8692f240494929a058e3ddabef3c6929c5 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureChooser.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/AnalysisProcedureChooser.java
@@ -126,6 +126,7 @@ class AnalysisProcedureChooser extends LayoutContainer
         // dummy lister which always returns the same result
         AnalysisProcedureLister analysisProcedureLister = new AnalysisProcedureLister()
             {
+                @Override
                 public void listNumericalDatasetsAnalysisProcedures(
                         AsyncCallback<AnalysisProcedures> resultsCallback)
                 {
@@ -142,6 +143,7 @@ class AnalysisProcedureChooser extends LayoutContainer
     {
         return new AnalysisProcedureLister()
             {
+                @Override
                 public void listNumericalDatasetsAnalysisProcedures(
                         AsyncCallback<AnalysisProcedures> resultsCallback)
                 {
@@ -166,6 +168,7 @@ class AnalysisProcedureChooser extends LayoutContainer
     private final Listener<BaseEvent> selectionChangeListener = new Listener<BaseEvent>()
         {
 
+            @Override
             public void handleEvent(BaseEvent be)
             {
                 selectionChanged();
@@ -247,11 +250,13 @@ class AnalysisProcedureChooser extends LayoutContainer
         analysisProcedureLister
                 .listNumericalDatasetsAnalysisProcedures(new AsyncCallback<AnalysisProcedures>()
                     {
+                        @Override
                         public void onSuccess(AnalysisProcedures analysisProcedures)
                         {
                             refresh(selectedProcedureCriteria, analysisProcedures);
                         }
 
+                        @Override
                         public void onFailure(Throwable caught)
                         {
                             // do nothing
@@ -288,7 +293,7 @@ class AnalysisProcedureChooser extends LayoutContainer
         comboBox.setTriggerAction(TriggerAction.ALL);
         comboBox.setAllowBlank(false);
         comboBox.setEditable(false);
-        comboBox.setEmptyText(messageProvider.getMessage(Dict.LOAD_IN_PROGRESS));
+        comboBox.setEmptyText(messageProvider.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS));
         comboBox.addListener(Events.SelectionChange, selectionChangeListener);
 
         return comboBox;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooser.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooser.java
index 97c7d504905573347edfd3f8ca0ba5f94e6a81ab..af0014311fd703d9c98ee6cd0a6711909ca4006c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooser.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooser.java
@@ -137,13 +137,14 @@ class ChannelChooser
             final IViewContext<IScreeningClientServiceAsync> context,
             final AsyncCallback<Void> callback)
     {
-        final Widget loading = new Text(context.getMessage(Dict.LOAD_IN_PROGRESS));
+        final Widget loading = new Text(context.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS));
         container.add(loading);
 
         context.getService().getImageDatasetResolutions(basicImage.getDatasetCode(),
                 basicImage.getDatastoreCode(),
                 new AbstractAsyncCallback<List<ImageResolution>>(context)
                     {
+                        @Override
                         protected void process(List<ImageResolution> resolutions)
                         {
                             container.remove(loading);
@@ -184,6 +185,7 @@ class ChannelChooser
         return GroupByMap.create(overlayDatasets,
                 new IGroupKeyExtractor<String, DatasetOverlayImagesReference>()
                     {
+                        @Override
                         public String getKey(DatasetOverlayImagesReference dataset)
                         {
                             return dataset.tryGetAnalysisProcedure();
@@ -227,6 +229,7 @@ class ChannelChooser
     {
         return new IAnalysisProcedureSelectionListener()
             {
+                @Override
                 public void analysisProcedureSelected(AnalysisProcedureCriteria criteria)
                 {
                     refreshObjectChooser(criteria, datasetsByAnalysisProcMap,
@@ -265,6 +268,7 @@ class ChannelChooser
                 new CheckBoxGroupWithModel<ImageDatasetChannel>(overlayChannelItems);
         checkBoxGroup.addListener(new CheckBoxGroupListner<ImageDatasetChannel>()
             {
+                @Override
                 public void onChange(Set<ImageDatasetChannel> selected)
                 {
                     setSelectedOverlayChannels(selected);
@@ -323,6 +327,7 @@ class ChannelChooser
         channelChooser
                 .addSelectionChangedListener(new ChannelChooserPanel.ChannelSelectionListener()
                     {
+                        @Override
                         public void selectionChanged(List<String> newlySelectedChannels,
                                 @SuppressWarnings("hiding")
                                 String imageTransformationCodeOrNull)
@@ -347,6 +352,7 @@ class ChannelChooser
                             defaultChannelState.tryGetDefaultResolution());
             resolutionChooser.addResolutionChangedListener(new Listener<BaseEvent>()
                 {
+                    @Override
                     public void handleEvent(BaseEvent be)
                     {
                         defaultChannelState.setDefaultResolution(resolutionChooser.getResolution());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooserPanel.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooserPanel.java
index edc2e5d2945542b55663b409ab2d0aa6f84132eb..8b23f8d9f808bcefeea8cb5cf5c68e5579724c5e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooserPanel.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelChooserPanel.java
@@ -100,6 +100,7 @@ public class ChannelChooserPanel extends LayoutContainer
 
     private final Listener<BaseEvent> selectionChangeListener = new Listener<BaseEvent>()
         {
+            @Override
             public void handleEvent(BaseEvent be)
             {
                 selectionChanged();
@@ -109,6 +110,7 @@ public class ChannelChooserPanel extends LayoutContainer
 
     private final Listener<BaseEvent> transformationSelection = new Listener<BaseEvent>()
         {
+            @Override
             public void handleEvent(BaseEvent be)
             {
                 defaultChannelState.setDefaultTransformation(getSelectedValues().get(0),
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelWidgetWithListener.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelWidgetWithListener.java
index 36ea11bcd9c541f165e18668525096bed154000b..2bc0f4a8558f3246497cf21a1f4a6076b19650bd 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelWidgetWithListener.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ChannelWidgetWithListener.java
@@ -51,6 +51,7 @@ public class ChannelWidgetWithListener implements ChannelChooserPanel.ChannelSel
         return container;
     }
 
+    @Override
     public void selectionChanged(List<String> channelNames, String imageTransformationCodeOrNull)
     {
         if (channelNames != null)
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/DefaultChannelState.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/DefaultChannelState.java
index 64dee52b4023831e6e9f6f796f34a3c735361fa3..c118f892a83c06ce1b3a747bc4609d8d76d382e9 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/DefaultChannelState.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/DefaultChannelState.java
@@ -39,11 +39,13 @@ public class DefaultChannelState implements IDefaultChannelState
         this.displayTypeId = displayTypeId;
     }
 
+    @Override
     public void setDefaultChannels(List<String> channels)
     {
         getDisplaySettingManager().setDefaultChannels(displayTypeId, channels);
     }
 
+    @Override
     public List<String> tryGetDefaultChannels()
     {
         return getDisplaySettingManager().tryGetDefaultChannels(displayTypeId);
@@ -54,11 +56,13 @@ public class DefaultChannelState implements IDefaultChannelState
         return ScreeningViewContext.getTechnologySpecificDisplaySettingsManager(viewContext);
     }
 
+    @Override
     public void setDefaultTransformation(String channel, String codes)
     {
         getTransformations().put(channel, codes);
     }
 
+    @Override
     public String tryGetDefaultTransformation(String channel)
     {
         return getTransformations().get(channel);
@@ -69,11 +73,13 @@ public class DefaultChannelState implements IDefaultChannelState
         return getDisplaySettingManager().getDefaultTransformationsForChannels(displayTypeId);
     }
 
+    @Override
     public ImageResolution tryGetDefaultResolution()
     {
         return getDisplaySettingManager().getDefaultResolution(displayTypeId);
     }
 
+    @Override
     public void setDefaultResolution(ImageResolution resolution)
     {
         getDisplaySettingManager().setDefaultResolution(displayTypeId, resolution);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java
index 02acbd342e19e12bba71515860b37909dd1ede04..a2c997ff3b37a087178713d5d655bc734c908ebb 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ExperimentAnalysisSummaryGrid.java
@@ -83,6 +83,7 @@ public class ExperimentAnalysisSummaryGrid extends TypedTableGrid<MaterialFeatur
         return new ICellListenerAndLinkGenerator<MaterialFeatureVectorSummary>()
             {
 
+                @Override
                 public void handle(TableModelRowWithObject<MaterialFeatureVectorSummary> rowItem,
                         boolean specialKeyPressed)
                 {
@@ -91,6 +92,7 @@ public class ExperimentAnalysisSummaryGrid extends TypedTableGrid<MaterialFeatur
                     openMaterialDetailViewer(material);
                 }
 
+                @Override
                 public String tryGetLink(MaterialFeatureVectorSummary entity,
                         ISerializableComparable comparableValue)
                 {
@@ -185,6 +187,7 @@ public class ExperimentAnalysisSummaryGrid extends TypedTableGrid<MaterialFeatur
     //
     // IAnalysisProcedureSelectionListener
     //
+    @Override
     public void analysisProcedureSelected(AnalysisProcedureCriteria selectedProcedureCriteria)
     {
         this.analysisProcedureCriteria = selectedProcedureCriteria;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDataSetSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDataSetSection.java
index 065444117b420f755f2cbd2e266b0bba2de6661e..6cf7be811732037f652bd17072fad90a7cba7be6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDataSetSection.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDataSetSection.java
@@ -27,7 +27,6 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAsyncCallback;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.TabContent;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ExternalData;
-import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.DisplayTypeIDGenerator;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ScreeningViewContext;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.heatmaps.LayoutUtils;
@@ -69,7 +68,7 @@ public class ImageDataSetSection extends TabContent
     protected void showContent()
     {
         final ScreeningViewContext context = getViewContext();
-        add(new Text(context.getMessage(Dict.LOAD_IN_PROGRESS)));
+        add(new Text(context.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS)));
         context.getService().getImageDatasetInfo(dataSet.getCode(),
                 dataSet.getDataStore().getCode(), wellLocationOrNull,
                 createDisplayImagesCallback(context));
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDialog.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDialog.java
index 922077ca8433f6d038aa479ce6d246e4cfee5d93..74178a603f5ad79bea4383cad01cf0545b887ca3 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDialog.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageDialog.java
@@ -33,6 +33,7 @@ public class ImageDialog extends Dialog
     {
         addListener(Events.Show, new Listener<BaseEvent>()
             {
+                @Override
                 public void handleEvent(BaseEvent be)
                 {
                     autosize(getElement());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageSampleSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageSampleSection.java
index d1efd7d3a8004ff848559161c0c2f8f93657be8d..83c2196b2498f5a35fd125816dacb2cb622e0217 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageSampleSection.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImageSampleSection.java
@@ -28,7 +28,6 @@ import com.google.gwt.user.client.ui.Widget;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAsyncCallback;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.TabContent;
 import ch.systemsx.cisd.openbis.generic.shared.basic.TechId;
-import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.DisplayTypeIDGenerator;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ScreeningViewContext;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.heatmaps.LayoutUtils;
@@ -91,7 +90,7 @@ public class ImageSampleSection extends TabContent
     protected void showContent()
     {
         final ScreeningViewContext context = getViewContext();
-        add(new Text(context.getMessage(Dict.LOAD_IN_PROGRESS)));
+        add(new Text(context.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS)));
         context.getService().getImageDatasetInfosForSample(sampleId,
                 isWell ? wellLocationOrNull : null, createDisplayImagesCallback(context));
     }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingDatasetGuiUtils.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingDatasetGuiUtils.java
index 7c87465d9b759c88ffc9709f0077e1ef40c02bcb..9f36cfa16ae8cd385a9ee3e314a8429328f3e8ac 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingDatasetGuiUtils.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/ImagingDatasetGuiUtils.java
@@ -284,6 +284,7 @@ class ImagingDatasetGuiUtils
             return LinkRenderer.getLinkAnchor(SHOW_CHOSEN_ANALYSIS_DATASET_BUTTON,
                     new ClickHandler()
                         {
+                            @Override
                             public void onClick(ClickEvent event)
                             {
                                 DatasetReference datasetReference =
@@ -415,6 +416,7 @@ class ImagingDatasetGuiUtils
             return LinkRenderer.getLinkAnchor(SHOW_CHOSEN_IMAGE_DATASET_DETAILS_BUTTON,
                     new ClickHandler()
                         {
+                            @Override
                             public void onClick(ClickEvent event)
                             {
                                 openDatasetDetails(getChosenDatasetReference(imageDatasetChooser),
@@ -456,6 +458,7 @@ class ImagingDatasetGuiUtils
         assert href != null : "invalid link for " + dataset;
         ClickHandler listener = new ClickHandler()
             {
+                @Override
                 public void onClick(ClickEvent event)
                 {
                     openDatasetDetails(dataset, viewContext);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LazyImageSeriesFrame.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LazyImageSeriesFrame.java
index 00ed549a3ea8b75b104bbc81f5d81fe9fc81aede..a0fb07e104da041f03a9692cc12dede639a4d526 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LazyImageSeriesFrame.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LazyImageSeriesFrame.java
@@ -140,6 +140,7 @@ public class LazyImageSeriesFrame extends LayoutContainer
             {
                 int tilesDownloaded = 0;
 
+                @Override
                 public void imageLoaded(FitImageLoadEvent event)
                 {
                     tilesDownloaded++;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageDatasetSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageDatasetSection.java
index 7af28e0505cd3284f742e2be6a80dee97e4e3441..4060a1a966107ad67425bb3235191f54ec3efa95 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageDatasetSection.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageDatasetSection.java
@@ -26,7 +26,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAs
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.TabContent;
 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.plugin.screening.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.DisplayTypeIDGenerator;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ScreeningViewContext;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.dto.LogicalImageReference;
@@ -60,7 +59,7 @@ public class LogicalImageDatasetSection extends TabContent
     protected void showContent()
     {
         final ScreeningViewContext context = getViewContext();
-        add(new Text(context.getMessage(Dict.LOAD_IN_PROGRESS)));
+        add(new Text(context.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS)));
 
         context.getService().getImageDatasetInfo(dataset.getCode(),
                 dataset.getDataStore().getCode(), null, createDisplayCallback());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageLayouter.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageLayouter.java
index 9b2097a1eea9bd35de064dba4b05c13f3a927edc..d42575d9aa6c6d15bda18ee2aef67237bc90f090 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageLayouter.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageLayouter.java
@@ -34,6 +34,7 @@ class LogicalImageLayouter extends LayoutContainer implements IDatasetImagesRefe
         this.refsMap = createRefsMap(images);
     }
 
+    @Override
     public void changeDisplayedImageDataset(ImageDatasetEnrichedReference dataset)
     {
         LogicalImageInfo imageInfo = refsMap.get(dataset);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageViewer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageViewer.java
index 31db54ae01198cd96b56ee1232198a7c1ba7622d..8accfac0354b000a915750af9d123241ab9480ad 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageViewer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/LogicalImageViewer.java
@@ -138,7 +138,7 @@ public class LogicalImageViewer
     private Widget getSeriesImageWidget()
     {
         final LayoutContainer container = new LayoutContainer();
-        container.add(new Text(viewContext.getMessage(Dict.LOAD_IN_PROGRESS)));
+        container.add(new Text(viewContext.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS)));
         container.setLayout(new FlowLayout());
 
         // loads the channel stacks asynchroniously, when done replaces the "Loading..." message
@@ -172,6 +172,7 @@ public class LogicalImageViewer
         final Button adjustColorsButton = createAdjustColorsButton();
         final IChanneledViewerFactory viewerFactory = new IChanneledViewerFactory()
             {
+                @Override
                 public LayoutContainer create(LogicalImageChannelsReference channelReferences,
                         ImageResolution resolution)
                 {
@@ -181,6 +182,7 @@ public class LogicalImageViewer
 
                     ImagesDownloadListener downloadListener = new ImagesDownloadListener()
                         {
+                            @Override
                             public void imagesDownloaded(LazyImageSeriesFrame frame)
                             {
                                 notifyImageRefresh();
@@ -245,6 +247,7 @@ public class LogicalImageViewer
                 new ChannelChooser(logicalImageReference, viewerFactory, channelState);
         channelChooser.addViewerTo(container, viewContext, new AsyncCallback<Void>()
             {
+                @Override
                 public void onSuccess(Void result)
                 {
                     if (showColorAdjustmentButton)
@@ -253,7 +256,7 @@ public class LogicalImageViewer
                         buttonToolbar.setLayout(new ColumnLayout());
                         buttonToolbar.add(adjustColorsButton);
                         Button refreshButton =
-                                new Button(viewContext.getMessage(Dict.BUTTON_REFRESH),
+                                new Button(viewContext.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.BUTTON_REFRESH),
                                         new SelectionListener<ButtonEvent>()
                                             {
                                                 @Override
@@ -275,6 +278,7 @@ public class LogicalImageViewer
                     container.layout();
                 }
 
+                @Override
                 public void onFailure(Throwable caught)
                 {
 
@@ -336,6 +340,7 @@ public class LogicalImageViewer
 
         final FitImageLoadHandler downloadHandler = new FitImageLoadHandler()
             {
+                @Override
                 public void imageLoaded(FitImageLoadEvent event)
                 {
                     notifyImageRefresh();
@@ -344,6 +349,7 @@ public class LogicalImageViewer
 
         final IChanneledViewerFactory viewerFactory = new IChanneledViewerFactory()
             {
+                @Override
                 public LayoutContainer create(LogicalImageChannelsReference channelReferences,
                         ImageResolution resolution)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialDisambiguationGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialDisambiguationGrid.java
index 1f877bf0cff4cb03b74ffa26cc7574d28d1f910e..68af80431e1042d0a4a45f0d2b6fd87548b38fc6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialDisambiguationGrid.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialDisambiguationGrid.java
@@ -78,6 +78,7 @@ public class MaterialDisambiguationGrid extends TypedTableGrid<Material>
             {
                 private boolean firstCall = true;
 
+                @Override
                 public void postRefresh(boolean wasSuccessful)
                 {
                     if (firstCall == false)
@@ -229,12 +230,14 @@ public class MaterialDisambiguationGrid extends TypedTableGrid<Material>
         ICellListenerAndLinkGenerator<Material> listenerLinkGenerator =
                 new ICellListenerAndLinkGenerator<Material>()
                     {
+                        @Override
                         public String tryGetLink(Material material, ISerializableComparable value)
                         {
                             return ScreeningLinkExtractor.createMaterialDetailsLink(material,
                                     searchCriteria.getExperimentCriteria());
                         }
 
+                        @Override
                         public void handle(TableModelRowWithObject<Material> row,
                                 boolean specialKeyPressed)
                         {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java
index 027832bd6d6dda036e97d32ea380c4b59caf14d2..158f2243cdc60ead41d86a8f4fd3b1d52971fd78 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialFeaturesFromAllExperimentsGrid.java
@@ -116,6 +116,7 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
         return new IAnalysisProcedureSelectionListener()
             {
 
+                @Override
                 public void analysisProcedureSelected(AnalysisProcedureCriteria criteria)
                 {
                     analysisProcedureCriteria = criteria;
@@ -130,6 +131,7 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
                 MaterialFeatureVectorsFromAllExperimentsGridColumnIDs.EXPERIMENT,
                 new ICellListenerAndLinkGenerator<MaterialSimpleFeatureVectorSummary>()
                     {
+                        @Override
                         public void handle(
                                 TableModelRowWithObject<MaterialSimpleFeatureVectorSummary> rowItem,
                                 boolean specialKeyPressed)
@@ -139,6 +141,7 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
                                     getRestrictGlobalScopeLinkToProject(), screeningViewContext);
                         }
 
+                        @Override
                         public String tryGetLink(MaterialSimpleFeatureVectorSummary entity,
                                 ISerializableComparable value)
                         {
@@ -155,6 +158,7 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
                 MaterialFeatureVectorsFromAllExperimentsGridColumnIDs.EXPERIMENT,
                 new ICellListenerAndLinkGenerator<MaterialSimpleFeatureVectorSummary>()
                     {
+                        @Override
                         public void handle(
                                 TableModelRowWithObject<MaterialSimpleFeatureVectorSummary> rowItem,
                                 boolean specialKeyPressed)
@@ -180,6 +184,7 @@ public class MaterialFeaturesFromAllExperimentsGrid extends
                                     new MaterialIdentifier(material), analysisProcedureCriteria);
                         }
 
+                        @Override
                         public String tryGetLink(MaterialSimpleFeatureVectorSummary entity,
                                 ISerializableComparable value)
                         {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java
index 25a1f1f4ae83c432e3e732330551a681c8cdbdb7..41c090290ab9aef6b96f96cef70f5cc8d50274bc 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialMergedSummarySection.java
@@ -63,6 +63,7 @@ class MaterialMergedSummarySection extends DisposableTabContent
     {
         return new IDelegatedAction()
             {
+                @Override
                 public void execute()
                 {
                     ExperimentSearchCriteria criteriaOrNull = searchCriteriaHolder.tryGetCriteria();
@@ -160,6 +161,7 @@ class MaterialMergedSummarySection extends DisposableTabContent
     {
         return new IAnalysisProcedureSelectionListener()
             {
+                @Override
                 public void analysisProcedureSelected(AnalysisProcedureCriteria criteria)
                 {
                     IAnalysisProcedureSelectionListener delegateListener =
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaFeatureSummaryGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaFeatureSummaryGrid.java
index 70e8c2603966043c6c0f98bb1a9d33a99a6b3b58..7311791f709b20509a9e7cf5d744485d1282713a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaFeatureSummaryGrid.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaFeatureSummaryGrid.java
@@ -105,6 +105,7 @@ public class MaterialReplicaFeatureSummaryGrid extends
     {
         return new IAnalysisProcedureSelectionListener()
             {
+                @Override
                 public void analysisProcedureSelected(AnalysisProcedureCriteria criteria)
                 {
                     analysisProcedureCriteria = criteria;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaSummaryComponent.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaSummaryComponent.java
index 23a263a901d9f717e1a8bd275f1741046a5d38b0..1da95be910a6872c3a7749de0b86e2df0b1f7d5a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaSummaryComponent.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MaterialReplicaSummaryComponent.java
@@ -327,6 +327,7 @@ public class MaterialReplicaSummaryComponent
         {
             Collections.sort(technicalReplicas, new Comparator<WellReplicaImage>()
                 {
+                    @Override
                     public int compare(WellReplicaImage arg1, WellReplicaImage arg2)
                     {
                         Integer s1 = arg1.getTechnicalReplicateSequenceNumber();
@@ -343,6 +344,7 @@ public class MaterialReplicaSummaryComponent
         assert image.tryGetImageDataset() != null;
         final ISimpleChanneledViewerFactory viewerFactory = new ISimpleChanneledViewerFactory()
             {
+                @Override
                 public Widget create(List<String> channels, String imageTransformationCodeOrNull)
                 {
                     return WellContentDialog.createImageViewerForChannel(screeningViewContext,
@@ -403,20 +405,24 @@ public class MaterialReplicaSummaryComponent
         return new IDisposableComponent()
             {
 
+                @Override
                 public void update(Set<DatabaseModificationKind> observedModifications)
                 {
                 }
 
+                @Override
                 public DatabaseModificationKind[] getRelevantModifications()
                 {
                     return new DatabaseModificationKind[0];
                 }
 
+                @Override
                 public Component getComponent()
                 {
                     return panel;
                 }
 
+                @Override
                 public void dispose()
                 {
                     gridComponent.dispose();
@@ -479,6 +485,7 @@ public class MaterialReplicaSummaryComponent
                         MaterialComponentUtils.getMaterialFullName(material, false));
         Widget linkWidget = LinkRenderer.getLinkWidget(linkText, new ClickHandler()
             {
+                @Override
                 public void onClick(ClickEvent event)
                 {
                     ClientPluginFactory.openImagingMaterialViewer(material, experimentCriteria,
@@ -521,6 +528,7 @@ public class MaterialReplicaSummaryComponent
         String linkText = screeningViewContext.getMessage(Dict.SHOW_ASSAY, experiment.getCode());
         Widget linkWidget = LinkRenderer.getLinkWidget(linkText, new ClickHandler()
             {
+                @Override
                 public void onClick(ClickEvent event)
                 {
                     ClientPluginFactory.openImagingExperimentViewer(experiment,
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieButtons.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieButtons.java
index d7459ddb707269d8f177e2cc34cda1549dd5e71c..e07417b531a6de57d6bdd2a4e7ef82c7779f537b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieButtons.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieButtons.java
@@ -57,6 +57,7 @@ public class MovieButtons extends Composite
 
         view.addPlayListener(new SelectionListener<ButtonEvent>()
             {
+                @Override
                 public void componentSelected(ButtonEvent event)
                 {
                     handlePlay();
@@ -64,6 +65,7 @@ public class MovieButtons extends Composite
             });
         view.addStopListener(new SelectionListener<ButtonEvent>()
             {
+                @Override
                 public void componentSelected(ButtonEvent event)
                 {
                     handleStop();
@@ -71,6 +73,7 @@ public class MovieButtons extends Composite
             });
         view.addPreviousListener(new SelectionListener<ButtonEvent>()
             {
+                @Override
                 public void componentSelected(ButtonEvent event)
                 {
                     handlePrevious();
@@ -78,6 +81,7 @@ public class MovieButtons extends Composite
             });
         view.addNextListener(new SelectionListener<ButtonEvent>()
             {
+                @Override
                 public void componentSelected(ButtonEvent event)
                 {
                     handleNext();
@@ -161,10 +165,12 @@ public class MovieButtons extends Composite
     {
         loadFrame(frame, new AsyncCallback<Void>()
             {
+                @Override
                 public void onSuccess(Void result)
                 {
                 }
 
+                @Override
                 public void onFailure(Throwable caught)
                 {
                 }
@@ -306,6 +312,7 @@ public class MovieButtons extends Composite
     private class MovieButtonsStoppedState implements MovieButtonsState
     {
 
+        @Override
         public void init()
         {
             view.setPlayEnabled(true);
@@ -314,6 +321,7 @@ public class MovieButtons extends Composite
             view.setNextEnabled(!isLastFrame());
         }
 
+        @Override
         public void handlePlay()
         {
             if (isLastFrame())
@@ -323,11 +331,13 @@ public class MovieButtons extends Composite
             setState(new MovieButtonsPlayingState());
         }
 
+        @Override
         public void handleStop()
         {
             // do nothing
         }
 
+        @Override
         public void handlePrevious()
         {
             if (!isFirstFrame())
@@ -336,6 +346,7 @@ public class MovieButtons extends Composite
             }
         }
 
+        @Override
         public void handleNext()
         {
             if (!isLastFrame())
@@ -344,11 +355,13 @@ public class MovieButtons extends Composite
             }
         }
 
+        @Override
         public int handleGetFrame()
         {
             return currentFrame;
         }
 
+        @Override
         public void handleSetFrame(int frame)
         {
             currentFrame = frame;
@@ -361,6 +374,7 @@ public class MovieButtons extends Composite
     private class MovieButtonsPlayingState implements MovieButtonsState
     {
 
+        @Override
         public void init()
         {
             view.setPlayEnabled(false);
@@ -370,31 +384,37 @@ public class MovieButtons extends Composite
             loadNextFrame(1);
         }
 
+        @Override
         public void handlePlay()
         {
             // do nothing
         }
 
+        @Override
         public void handleStop()
         {
             setState(new MovieButtonsStoppedState());
         }
 
+        @Override
         public void handlePrevious()
         {
             handleStop();
         }
 
+        @Override
         public void handleNext()
         {
             handleStop();
         }
 
+        @Override
         public int handleGetFrame()
         {
             return currentFrame;
         }
 
+        @Override
         public void handleSetFrame(int frame)
         {
             currentFrame = frame;
@@ -404,6 +424,7 @@ public class MovieButtons extends Composite
         {
             Timer timer = new Timer()
                 {
+                    @Override
                     public void run()
                     {
                         final long startTime = System.currentTimeMillis();
@@ -419,6 +440,7 @@ public class MovieButtons extends Composite
                             loadFrame(getFrame(), new AsyncCallback<Void>()
                                 {
 
+                                    @Override
                                     public void onSuccess(Void result)
                                     {
                                         if (MovieButtonsPlayingState.this == getState())
@@ -437,6 +459,7 @@ public class MovieButtons extends Composite
                                         }
                                     }
 
+                                    @Override
                                     public void onFailure(Throwable caught)
                                     {
                                         onSuccess(null);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieDelay.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieDelay.java
index 3d2eb01916bce9dccab9e67a59dedf68396f2833..bb060fc02f462386952fef28460d99c5caa2baa4 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieDelay.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/MovieDelay.java
@@ -51,6 +51,7 @@ public class MovieDelay extends Composite
         input.setMaxLength(DEFAULT_DELAY_INPUT_LENGTH);
         input.addChangeHandler(new ChangeHandler()
             {
+                @Override
                 public void onChange(ChangeEvent event)
                 {
                     int delay = parseDelay(input.getValue());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutDatasetSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutDatasetSection.java
index 1a18c25dcf462eebb9cc9a7720937d9650eaada6..f2b50e22bc1d9be3bf17a9c9a24e94004016d281 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutDatasetSection.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutDatasetSection.java
@@ -25,7 +25,6 @@ import com.google.gwt.user.client.rpc.AsyncCallback;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.AbstractAsyncCallback;
 import ch.systemsx.cisd.openbis.generic.client.web.client.application.TabContent;
 import ch.systemsx.cisd.openbis.generic.shared.basic.TechId;
-import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.DisplayTypeIDGenerator;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ScreeningViewContext;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.heatmaps.LayoutUtils;
@@ -58,7 +57,7 @@ public class PlateLayoutDatasetSection extends TabContent
     protected void showContent()
     {
         final ScreeningViewContext context = getViewContext();
-        add(new Text(context.getMessage(Dict.LOAD_IN_PROGRESS)));
+        add(new Text(context.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS)));
 
         context.getService().getPlateContentForDataset(datasetId,
                 createDisplayPlateCallback());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java
index cc3bddac11ec5140056129c54c3423f2061c87b5..b4b617bed477effdc816413e8a664a574ead0efd 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateLayoutSampleSection.java
@@ -34,7 +34,6 @@ import ch.systemsx.cisd.openbis.generic.client.web.client.application.renderer.L
 import ch.systemsx.cisd.openbis.generic.shared.basic.TechId;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.IScreeningClientServiceAsync;
-import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.Dict;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.DisplayTypeIDGenerator;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.ScreeningViewContext;
 import ch.systemsx.cisd.openbis.plugin.screening.client.web.client.application.detailviewers.ImagingDatasetGuiUtils.IDatasetImagesReferenceUpdater;
@@ -79,7 +78,7 @@ public class PlateLayoutSampleSection extends TabContent
     protected void showContent()
     {
         final ScreeningViewContext context = getViewContext();
-        add(new Text(context.getMessage(Dict.LOAD_IN_PROGRESS)));
+        add(new Text(context.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.LOAD_IN_PROGRESS)));
         context.getService().getPlateContent(sampleId, createDisplayPlateCallback());
     }
 
@@ -141,6 +140,7 @@ public class PlateLayoutSampleSection extends TabContent
     {
         return new IFeatureVectorDatasetReferenceUpdater()
             {
+                @Override
                 public void changeDisplayedFeatureVectorDataset(FeatureVectorDataset dataset)
                 {
                     plateLayouter.changeDisplayedFeatureVectorDataset(dataset);
@@ -153,6 +153,7 @@ public class PlateLayoutSampleSection extends TabContent
     {
         return new IDatasetImagesReferenceUpdater()
             {
+                @Override
                 public void changeDisplayedImageDataset(
                         ImageDatasetEnrichedReference newImageDatasetOrNull)
                 {
@@ -201,9 +202,10 @@ public class PlateLayoutSampleSection extends TabContent
     {
         String plateLinkUrl =
                 ScreeningLinkExtractor.createPlateMetadataBrowserLink(plate.getPermId());
-        return LinkRenderer.getLinkWidget(viewContext.getMessage(Dict.BUTTON_SHOW),
+        return LinkRenderer.getLinkWidget(viewContext.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.BUTTON_SHOW),
                 new ClickHandler()
                     {
+                        @Override
                         public void onClick(ClickEvent event)
                         {
                             PlateMetadataBrowser.openTab(plate, viewContext);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateMetadataBrowser.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateMetadataBrowser.java
index f33297a905250736187daa9105c1e8669e42f84c..781ae0a9ff187c1c849035324e2a9f41242f4ade 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateMetadataBrowser.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/PlateMetadataBrowser.java
@@ -147,6 +147,7 @@ public class PlateMetadataBrowser extends TypedTableGrid<WellMetadata>
                 new ICellListenerAndLinkGenerator<WellMetadata>()
                     {
 
+                        @Override
                         public void handle(TableModelRowWithObject<WellMetadata> rowItem,
                                 boolean specialKeyPressed)
                         {
@@ -154,6 +155,7 @@ public class PlateMetadataBrowser extends TypedTableGrid<WellMetadata>
                                     .getWellSample(), false, specialKeyPressed);
                         }
 
+                        @Override
                         public String tryGetLink(WellMetadata entity, ISerializableComparable value)
                         {
                             return LinkExtractor.tryExtract(entity.getWellSample());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SingleOrAllExperimentsChooser.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SingleOrAllExperimentsChooser.java
index 8c2048c730f34703a4118af87fac474fc8cfebbf..f32e284f1961946466ebf6e7ab4eb3352fac5613 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SingleOrAllExperimentsChooser.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SingleOrAllExperimentsChooser.java
@@ -104,6 +104,7 @@ class SingleOrAllExperimentsChooser extends LayoutContainer
         chooserField
                 .addChosenEntityListener(new IChosenEntitiesListener<TableModelRowWithObject<Experiment>>()
                     {
+                        @Override
                         public void entitiesChosen(List<TableModelRowWithObject<Experiment>> rows)
                         {
                             if (rows.isEmpty() == false)
@@ -164,6 +165,7 @@ class SingleOrAllExperimentsChooser extends LayoutContainer
         experimentRadio.setAutoHeight(true);
         experimentRadio.addListener(Events.Change, new Listener<BaseEvent>()
             {
+                @Override
                 public void handleEvent(BaseEvent be)
                 {
                     if (allExps.getValue())
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SliderWithMovieButtons.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SliderWithMovieButtons.java
index 0cb03a68b28dca60f3df79fca2fa583e5f91b0bc..81eaa2a1066a11c0e8135a75cd828b6cd66c8dea 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SliderWithMovieButtons.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/SliderWithMovieButtons.java
@@ -51,6 +51,7 @@ public class SliderWithMovieButtons extends Composite
         buttons = new MovieButtons(numberOfValues);
         buttons.setFrameLoader(new MovieButtonsFrameLoader()
             {
+                @Override
                 public void loadFrame(final int frame, final AsyncCallback<Void> callback)
                 {
                     final int value = frame + 1;
@@ -58,12 +59,14 @@ public class SliderWithMovieButtons extends Composite
                     slider.setValue(value, true);
                     valueLoader.loadValue(value, new AsyncCallback<Void>()
                         {
+                            @Override
                             public void onSuccess(Void result)
                             {
                                 hideLoading(value);
                                 callback.onSuccess(result);
                             }
 
+                            @Override
                             public void onFailure(Throwable caught)
                             {
                                 hideLoading(value);
@@ -76,6 +79,7 @@ public class SliderWithMovieButtons extends Composite
         slider = new SliderWithAutoWidth(numberOfValues);
         slider.addListener(Events.Change, new Listener<SliderEvent>()
             {
+                @Override
                 public void handleEvent(SliderEvent be)
                 {
                     final int value = be.getNewValue();
@@ -83,11 +87,13 @@ public class SliderWithMovieButtons extends Composite
                     buttons.setFrame(value - 1);
                     valueLoader.loadValue(value, new AsyncCallback<Void>()
                         {
+                            @Override
                             public void onSuccess(Void result)
                             {
                                 hideLoading(value);
                             }
 
+                            @Override
                             public void onFailure(Throwable caught)
                             {
                                 hideLoading(value);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/TileContentDialog.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/TileContentDialog.java
index 54c73d7eae3e5c8ad5ea87e833b94c006259007e..6037d9f84051696fdb57e5927e11ef0c9dc3134f 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/TileContentDialog.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/TileContentDialog.java
@@ -55,6 +55,7 @@ public class TileContentDialog extends ImageDialog
 
         imageViewer.setLogicalImageRefreshHandler(new LogicalImageRefreshHandler()
             {
+                @Override
                 public void onRefresh()
                 {
                     autosize(grid.getElement());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellContentDialog.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellContentDialog.java
index 68e60a291791b8e4512d4de56e0bf622e512440c..52e9fa47c5f0b0e6884f10786eb16a590302477f 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellContentDialog.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellContentDialog.java
@@ -115,6 +115,7 @@ public class WellContentDialog extends ImageDialog
 
             viewer.setLogicalImageRefreshHandler(new LogicalImageRefreshHandler()
                 {
+                    @Override
                     public void onRefresh()
                     {
                         contentDialog.autosize(grid.getElement());
@@ -122,6 +123,7 @@ public class WellContentDialog extends ImageDialog
                 });
             viewer.setLogicalImageClickHandler(new LogicalImageClickHandler()
                 {
+                    @Override
                     public void onClick(LogicalImageChannelsReference channelReferences, int row,
                             int col)
                     {
@@ -192,6 +194,7 @@ public class WellContentDialog extends ImageDialog
         {
             new LogicalImageClickHandler()
                 {
+                    @Override
                     public void onClick(LogicalImageChannelsReference channelReferences, int row,
                             int col)
                     {
@@ -216,6 +219,7 @@ public class WellContentDialog extends ImageDialog
             staticTilesGrid.sinkEvents(Events.OnClick.getEventCode());
             staticTilesGrid.addListener(Events.OnClick, new Listener<BaseEvent>()
                 {
+                    @Override
                     public void handleEvent(BaseEvent be)
                     {
                         showContentDialog(viewContext, wellImage, wellImage.getPlate(),
@@ -374,26 +378,31 @@ public class WellContentDialog extends ImageDialog
                 {
                     private static final long serialVersionUID = 1L;
 
+                    @Override
                     public String getPermId()
                     {
                         return plate.getPermId() + suffix;
                     }
 
+                    @Override
                     public String getCode()
                     {
                         return plate.getCode();
                     }
 
+                    @Override
                     public Long getId()
                     {
                         return plate.getId();
                     }
 
+                    @Override
                     public BasicEntityType getEntityType()
                     {
                         return plate.getEntityType();
                     }
 
+                    @Override
                     public EntityKind getEntityKind()
                     {
                         return plate.getEntityKind();
@@ -503,6 +512,7 @@ public class WellContentDialog extends ImageDialog
                 ScreeningLinkExtractor.createMaterialDetailsLink(material, getExperimentCriteria());
         final ClickHandler listener = new ClickHandler()
             {
+                @Override
                 public void onClick(ClickEvent event)
                 {
                     WellContentDialog.this.hide();
@@ -518,6 +528,7 @@ public class WellContentDialog extends ImageDialog
         {
             link.addClickHandler(new ClickHandler()
                 {
+                    @Override
                     public void onClick(ClickEvent event)
                     {
                         WellContentDialog.this.hide();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchComponent.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchComponent.java
index fc1edc8405d2306276e223c71ff00959a6577780..38b00b355a68e47b65fe0aa2334b4364c2d8f199 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchComponent.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchComponent.java
@@ -175,10 +175,11 @@ public class WellSearchComponent extends TabContent
 
     private Widget createSearchLink()
     {
-        Button searchButton = new Button(screeningViewContext.getMessage(Dict.SEARCH_BUTTON));
+        Button searchButton = new Button(screeningViewContext.getMessage(ch.systemsx.cisd.openbis.generic.client.web.client.application.Dict.SEARCH_BUTTON));
         searchButton.setWidth(TEXT_AREA_WIDTH);
         IDelegatedAction normalModeAction = new IDelegatedAction()
             {
+                @Override
                 public void execute()
                 {
                     showPlateMaterialReviewer();
@@ -186,6 +187,7 @@ public class WellSearchComponent extends TabContent
             };
         IURLProvider urlProvider = new IURLProvider()
             {
+                @Override
                 public String tryGetURL()
                 {
                     MaterialSearchCodesCriteria materialCriteria = tryGetMaterialSearchCriteria();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchGrid.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchGrid.java
index 960e882a48eb9fd3dc1f8b7a61dd784ad813a082..8fd690102ebf28dcfdade0a16a9a1a1e3f07820a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchGrid.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/WellSearchGrid.java
@@ -240,20 +240,24 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         final ToolBar toolbar = reviewer.createToolbar();
         return reviewer.asDisposableWithToolbar(new IDisposableComponent()
             {
+                @Override
                 public void update(Set<DatabaseModificationKind> observedModifications)
                 {
                 }
 
+                @Override
                 public DatabaseModificationKind[] getRelevantModifications()
                 {
                     return null;
                 }
 
+                @Override
                 public Component getComponent()
                 {
                     return toolbar;
                 }
 
+                @Override
                 public void dispose()
                 {
                 }
@@ -348,6 +352,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
     {
         return new ICellListenerAndLinkGenerator<WellContent>()
             {
+                @Override
                 public String tryGetLink(WellContent wellContent, ISerializableComparable value)
                 {
                     Material material = tryGetMaterial(wellContent, wellMaterialPropertyTypeCode);
@@ -358,6 +363,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
                     return tryCreateMaterialDetailsLink(wellContent, material);
                 }
 
+                @Override
                 public void handle(TableModelRowWithObject<WellContent> row,
                         boolean specialKeyPressed)
                 {
@@ -419,11 +425,13 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         registerListenerAndLinkGenerator(WellSearchGridColumnIds.EXPERIMENT,
                 new ICellListenerAndLinkGenerator<WellContent>()
                     {
+                        @Override
                         public String tryGetLink(WellContent entity, ISerializableComparable value)
                         {
                             return LinkExtractor.tryExtract(entity.getExperiment());
                         }
 
+                        @Override
                         public void handle(TableModelRowWithObject<WellContent> wellContent,
                                 boolean specialKeyPressed)
                         {
@@ -438,11 +446,13 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         registerListenerAndLinkGenerator(WellSearchGridColumnIds.PLATE,
                 new ICellListenerAndLinkGenerator<WellContent>()
                     {
+                        @Override
                         public String tryGetLink(WellContent entity, ISerializableComparable value)
                         {
                             return LinkExtractor.tryExtract(entity.getPlate());
                         }
 
+                        @Override
                         public void handle(TableModelRowWithObject<WellContent> wellContent,
                                 boolean specialKeyPressed)
                         {
@@ -457,11 +467,13 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         registerListenerAndLinkGenerator(WellSearchGridColumnIds.WELL,
                 new ICellListenerAndLinkGenerator<WellContent>()
                     {
+                        @Override
                         public String tryGetLink(WellContent entity, ISerializableComparable value)
                         {
                             return LinkExtractor.tryExtract(entity.getWell());
                         }
 
+                        @Override
                         public void handle(TableModelRowWithObject<WellContent> wellContent,
                                 boolean specialKeyPressed)
                         {
@@ -476,6 +488,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         registerListenerAndLinkGenerator(WellSearchGridColumnIds.IMAGE_DATA_SET,
                 new ICellListenerAndLinkGenerator<WellContent>()
                     {
+                        @Override
                         public String tryGetLink(WellContent entity, ISerializableComparable value)
                         {
                             DatasetImagesReference imageDataset = entity.tryGetImageDataset();
@@ -488,6 +501,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
                             }
                         }
 
+                        @Override
                         public void handle(TableModelRowWithObject<WellContent> wellContent,
                                 boolean specialKeyPressed)
                         {
@@ -506,6 +520,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         registerListenerAndLinkGenerator(WellSearchGridColumnIds.IMAGE_ANALYSIS_DATA_SET,
                 new ICellListenerAndLinkGenerator<WellContent>()
                     {
+                        @Override
                         public String tryGetLink(WellContent entity, ISerializableComparable value)
                         {
                             DatasetReference dataset = entity.tryGetFeatureVectorDataset();
@@ -518,6 +533,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
                             }
                         }
 
+                        @Override
                         public void handle(TableModelRowWithObject<WellContent> wellContent,
                                 boolean specialKeyPressed)
                         {
@@ -565,6 +581,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
     {
         return new IDelegatedAction()
             {
+                @Override
                 public void execute()
                 {
                     analysisProcedureChooser.updateAnalysisProcedures();
@@ -600,6 +617,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         GridCellRenderer<BaseEntityModel<?>> render = new GridCellRenderer<BaseEntityModel<?>>()
             {
 
+                @Override
                 public Object render(BaseEntityModel<?> model, String property, ColumnData config,
                         int rowIndex, int colIndex, ListStore<BaseEntityModel<?>> store,
                         Grid<BaseEntityModel<?>> grid)
@@ -617,6 +635,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
                     final ISimpleChanneledViewerFactory viewerFactory =
                             new ISimpleChanneledViewerFactory()
                                 {
+                                    @Override
                                     public Widget create(List<String> channels,
                                             String imageTransformationCodeOrNull)
                                     {
@@ -675,6 +694,7 @@ public class WellSearchGrid extends TypedTableGrid<WellContent> implements
         return Arrays.asList(WellSearchGridColumnIds.PLATE, WellSearchGridColumnIds.WELL);
     }
 
+    @Override
     public void analysisProcedureSelected(AnalysisProcedureCriteria selectedProcedureCriteria)
     {
         if (experimentCriteriaHolder.tryGetCriteria() != null)
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingFloatHeatmapRenderer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingFloatHeatmapRenderer.java
index a123d3f852a9ec31b998029092d0e362688d6944..48644ae851291d0faf2b9a7b6087fd2b0af92c3d 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingFloatHeatmapRenderer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingFloatHeatmapRenderer.java
@@ -23,16 +23,19 @@ abstract class DetegatingFloatHeatmapRenderer<T> implements IHeatmapRenderer<T>
         this.delegator = new NumberHeatmapRenderer(min, max, realNumberRenderer);
     }
 
+    @Override
     public Color getColor(T value)
     {
         return delegator.getColor(convert(value));
     }
 
+    @Override
     public List<HeatmapScaleElement> calculateScale()
     {
         return delegator.calculateScale();
     }
 
+    @Override
     public String tryGetFirstLabel()
     {
         return delegator.tryGetFirstLabel();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingStringHeatmapRenderer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingStringHeatmapRenderer.java
index 518dbf789fdcf0e9cd32516504ae2e488a6c8c61..6abed9a3fe89a3a04718ae7291a103d14ddd1758 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingStringHeatmapRenderer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/DetegatingStringHeatmapRenderer.java
@@ -23,16 +23,19 @@ abstract class DetegatingStringHeatmapRenderer<T> implements IHeatmapRenderer<T>
         this.delegator = new StringHeatmapRenderer(uniqueValues, colorsOrNull);
     }
 
+    @Override
     public Color getColor(T value)
     {
         return delegator.getColor(extractLabel(value));
     }
 
+    @Override
     public List<HeatmapScaleElement> calculateScale()
     {
         return delegator.calculateScale();
     }
 
+    @Override
     public String tryGetFirstLabel()
     {
         return null;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/HeatmapPresenter.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/HeatmapPresenter.java
index e8cfbf7c8b55bfe0b8728192ef6495390e30a6d8..8d2093a3af89e256397d1bb2e72ff6a6df50500b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/HeatmapPresenter.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/HeatmapPresenter.java
@@ -216,6 +216,7 @@ class HeatmapPresenter
                 final int ci = colIx;
                 final IDelegatedAction refreshTooltipAction = new IDelegatedAction()
                     {
+                        @Override
                         public void execute()
                         {
                             viewContext.log("Update tooltip: "
@@ -234,6 +235,7 @@ class HeatmapPresenter
                     viewManipulations.addEmptyTooltip(rowIx, colIx);
                     viewManipulations.scheduleUpdateTooltip(rowIx, colIx, new IDelegatedAction()
                         {
+                            @Override
                             public void execute()
                             {
                                 viewContext.log("Fetch Well Values: "
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRenderer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRenderer.java
index 7ec7eb9cbf6726809529652188c634674403bd76..8e73fb6bd2677abcec7bb2b2b22f9dd8b0ca94e3 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRenderer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRenderer.java
@@ -45,6 +45,7 @@ class NumberHeatmapRenderer implements IHeatmapRenderer<Float>
         this.realNumberRenderer = realNumberRenderer;
     }
 
+    @Override
     public Color getColor(Float value)
     {
         if (value == null || Float.isNaN(value) || Float.isInfinite(value))
@@ -61,6 +62,7 @@ class NumberHeatmapRenderer implements IHeatmapRenderer<Float>
         return colors.get(colorNumber);
     }
 
+    @Override
     public List<HeatmapScaleElement> calculateScale()
     {
         ArrayList<HeatmapScaleElement> scale = new ArrayList<HeatmapScaleElement>();
@@ -72,6 +74,7 @@ class NumberHeatmapRenderer implements IHeatmapRenderer<Float>
         return scale;
     }
 
+    @Override
     public String tryGetFirstLabel()
     {
         return round(max);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/PlateLayouter.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/PlateLayouter.java
index 153c0986e158c208eca128e9d11801c898c7ad9e..d384ca81a6d84186cee46fd1dd2f1f5b104f8c64 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/PlateLayouter.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/PlateLayouter.java
@@ -137,6 +137,7 @@ public class PlateLayouter
                 private Map<Component, ToolTipAction> toolTipActions =
                         new HashMap<Component, ToolTipAction>();
 
+                @Override
                 public void updateWellStyle(int rowIx, int colIx, Color backgroundColor)
                 {
                     Component wellComponent = getWellComponent(rowIx, colIx);
@@ -144,6 +145,7 @@ public class PlateLayouter
                             .setBackgroudColor(wellComponent, backgroundColor.getHexColor());
                 }
 
+                @Override
                 public void addEmptyTooltip(int rowIx, int colIx)
                 {
                     Component wellComponent = getWellComponent(rowIx, colIx);
@@ -157,6 +159,7 @@ public class PlateLayouter
                     GWTUtils.setToolTip(wellComponent, config);
                 }
 
+                @Override
                 public void updateTooltip(int rowIx, int colIx, String tooltipOrNull)
                 {
                     hideAllToolTipsExcept(rowIx, colIx);
@@ -171,6 +174,7 @@ public class PlateLayouter
                     }
                 }
 
+                @Override
                 public void scheduleUpdateTooltip(final int rowIx, final int colIx,
                         IDelegatedAction refreshTooltipAction)
                 {
@@ -187,6 +191,7 @@ public class PlateLayouter
                     }
                 }
 
+                @Override
                 public void updateLegend(Widget legend)
                 {
                     legendContainer.removeAll();
@@ -406,6 +411,7 @@ public class PlateLayouter
         widget.addListener(Events.OnMouseDown, new Listener<BaseEvent>()
             {
 
+                @Override
                 public void handleEvent(BaseEvent ce)
                 {
                     layouter.hideAllTooltops();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/StringHeatmapRenderer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/StringHeatmapRenderer.java
index ede54558d16090427c77abea68020311f70f7b77..d96616e22806f54ef96bb35de6e61d1a940edd74 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/StringHeatmapRenderer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/StringHeatmapRenderer.java
@@ -91,6 +91,7 @@ class StringHeatmapRenderer implements IHeatmapRenderer<String>
         return scale;
     }
 
+    @Override
     public Color getColor(String value)
     {
         Color color = colorsMap.get(value);
@@ -105,11 +106,13 @@ class StringHeatmapRenderer implements IHeatmapRenderer<String>
         }
     }
 
+    @Override
     public List<HeatmapScaleElement> calculateScale()
     {
         return scale;
     }
 
+    @Override
     public String tryGetFirstLabel()
     {
         return null;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGenerator.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGenerator.java
index 59a3172ce540f2f854e89508daa8100c1ec5fcbb..c0bf34ebdcc2708bdcde8be7a07817c36a96c5eb 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGenerator.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGenerator.java
@@ -54,6 +54,7 @@ class WellTooltipGenerator implements HeatmapPresenter.IWellTooltipGenerator
     }
 
     // public String generateTooltip(WellData wellData, String distinguishedLabelOrNull)
+    @Override
     public String generateTooltip(int rowIx, int colIx, String distinguishedLabelOrNull)
     {
         WellData wellData = model.getWellMatrix()[rowIx][colIx];
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/Image.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/Image.java
index defc4a660bf1af977aabf22a41fd65a3ceb78b00..9645a47fc94bf784c0be4af1a89885bf86f8e97b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/Image.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/Image.java
@@ -96,6 +96,7 @@ public class Image extends LayoutContainer
 
         image.addClickHandler(new ClickHandler()
             {
+                @Override
                 public void onClick(ClickEvent event)
                 {
                     if (getInitializer().getImageClickHandler() != null)
@@ -119,6 +120,7 @@ public class Image extends LayoutContainer
         // are not displayed.
         GWTUtils.executeDelayed(new IDelegatedAction()
             {
+                @Override
                 public void execute()
                 {
                     image.setUrl(thumbnailImageUrl);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/StackImageInitializer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/StackImageInitializer.java
index 42b4cc67f7df7ab3c0c3b931b911ffe5fc372cdd..81d0f15242f07015b5874a311ab650568a6e4f5a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/StackImageInitializer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/StackImageInitializer.java
@@ -26,11 +26,13 @@ public class StackImageInitializer extends ImageInitializer
 
     private ImageChannelStack stack;
 
+    @Override
     public int getImageRow()
     {
         return stack.getTileRow();
     }
 
+    @Override
     public int getImageColumn()
     {
         return stack.getTileCol();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/TileImageInitializer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/TileImageInitializer.java
index 4e6fbc173ef6f5f5d6030652cbfc644ed28ed39b..3cb753c9ec2cfc79732cdbb0479cdb539f359a87 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/TileImageInitializer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/image/TileImageInitializer.java
@@ -26,11 +26,13 @@ public class TileImageInitializer extends ImageInitializer
 
     private int tileColumn;
 
+    @Override
     public int getImageRow()
     {
         return getTileRow();
     }
 
+    @Override
     public int getImageColumn()
     {
         return getTileColumn();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesDownloader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesDownloader.java
index 5709e333d7a18b70591efd859c6bc47da632ed1b..aab6f8b7199a3a31cd668b558061ba4d94487711 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesDownloader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesDownloader.java
@@ -82,6 +82,7 @@ class LogicalImageSeriesDownloader
 
         ImagesDownloadListener listener = new ImagesDownloadListener()
             {
+                @Override
                 public void imagesDownloaded(LazyImageSeriesFrame frame)
                 {
                     // do not display the frame if selection changed during loading
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesMovieControls.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesMovieControls.java
index 3372c8f3f54ebbe43109f34939a9180aaf83440a..428f75dbd965c3f34bdeb357a5dfbf939a37e699 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesMovieControls.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesMovieControls.java
@@ -45,6 +45,7 @@ public class LogicalImageSeriesMovieControls extends LogicalImageSeriesControls
         sliderWithButtons.setDelay(getSettingsManager().getDefaultMovieDelay(displayTypeId));
         sliderWithButtons.addDelayChangeHandler(new ChangeHandler()
             {
+                @Override
                 public void onChange(ChangeEvent event)
                 {
                     getSettingsManager().setDefaultMovieDelay(getDisplayTypeId(),
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesPoint.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesPoint.java
index 2ced515612c9e23e281c28288450cbe367df70c5..b00d85d214f810afb12d3ff21471da08f644cb30 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesPoint.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesPoint.java
@@ -85,6 +85,7 @@ class LogicalImageSeriesPoint implements Comparable<LogicalImageSeriesPoint>
         return seriesNumberOrNull;
     }
 
+    @Override
     public int compareTo(LogicalImageSeriesPoint o)
     {
         int cmp;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesTimeAndDepthControls.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesTimeAndDepthControls.java
index 2d4c44aedfd0b172539460d7c801787359fc3760..d903ee471821c7850708a89f25bf3d8ea72ba569 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesTimeAndDepthControls.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/logicalimage/LogicalImageSeriesTimeAndDepthControls.java
@@ -91,6 +91,7 @@ public class LogicalImageSeriesTimeAndDepthControls extends LogicalImageSeriesCo
                     getDisplayTypeId()));
             timeSliderWithButtons.addDelayChangeHandler(new ChangeHandler()
                 {
+                    @Override
                     public void onChange(ChangeEvent event)
                     {
                         getSettingsManager().setDefaultMovieDelay(getDisplayTypeId(),
@@ -127,6 +128,7 @@ public class LogicalImageSeriesTimeAndDepthControls extends LogicalImageSeriesCo
             depthSlider.setValue(1);
             depthSlider.addListener(Events.Change, new Listener<SliderEvent>()
                 {
+                    @Override
                     public void handleEvent(SliderEvent be)
                     {
                         refreshValue(null);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/utils/MaterialComponentUtils.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/utils/MaterialComponentUtils.java
index fb67e01f90a5a3e81e61083ed5040a64a4dbd839..f80ea405bab5dec433215b7238314998dafa0e5e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/utils/MaterialComponentUtils.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/utils/MaterialComponentUtils.java
@@ -139,20 +139,24 @@ public class MaterialComponentUtils
         return new IDisposableComponent()
             {
 
+                @Override
                 public void update(Set<DatabaseModificationKind> observedModifications)
                 {
                 }
 
+                @Override
                 public DatabaseModificationKind[] getRelevantModifications()
                 {
                     return new DatabaseModificationKind[0];
                 }
 
+                @Override
                 public Component getComponent()
                 {
                     return panel;
                 }
 
+                @Override
                 public void dispose()
                 {
                     gridComponent.dispose();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java
index 497d5f4e0a564a877ae6c1bf801c7dc312c3012d..224571b055e24458d5ad5dfeb8d50c0366fec211 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ExperimentAnalysisSummaryResolver.java
@@ -43,6 +43,7 @@ public class ExperimentAnalysisSummaryResolver extends AbstractViewLocatorResolv
         }
     }
 
+    @Override
     public void resolve(final ViewLocator locator) throws UserFailureException
     {
         String experimentPermId = tryGetPermId(locator);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/GlobalWellSearchLocatorResolver.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/GlobalWellSearchLocatorResolver.java
index b67b0d5024cc79913ae6c1cd40c00dd05085b47a..33c3bdd0c20ab63bc1b6b49cad3edbbe6bae7d75 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/GlobalWellSearchLocatorResolver.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/GlobalWellSearchLocatorResolver.java
@@ -32,6 +32,7 @@ public class GlobalWellSearchLocatorResolver extends AbstractViewLocatorResolver
         this.viewContext = viewContext;
     }
 
+    @Override
     public void resolve(final ViewLocator locator) throws UserFailureException
     {
         DispatcherHelper.dispatchNaviEvent(new AbstractTabItemFactory()
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ImagingDataSetLocatorResolver.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ImagingDataSetLocatorResolver.java
index 82cae51d52585c9021d8638e9f2864311dd530a9..ffb774dae880ed3fccd608efb98651889c235150 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ImagingDataSetLocatorResolver.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/ImagingDataSetLocatorResolver.java
@@ -116,26 +116,31 @@ public class ImagingDataSetLocatorResolver extends PermlinkLocatorResolver
                 {
                     private static final long serialVersionUID = 1L;
 
+                    @Override
                     public BasicEntityType getEntityType()
                     {
                         return result.getEntityType();
                     }
 
+                    @Override
                     public EntityKind getEntityKind()
                     {
                         return result.getEntityKind();
                     }
 
+                    @Override
                     public Long getId()
                     {
                         return result.getId();
                     }
 
+                    @Override
                     public String getCode()
                     {
                         return result.getCode();
                     }
 
+                    @Override
                     public String getPermId()
                     {
                         return result.getPermId() + ":" + wellLocation;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/PlateMetadataBrowserLocatorResolver.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/PlateMetadataBrowserLocatorResolver.java
index 7769198013a5c074e60cb60da52fbacb3144aa48..112d806cbc6d82d698771f0e24d1bdee0d8ab5f7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/PlateMetadataBrowserLocatorResolver.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/PlateMetadataBrowserLocatorResolver.java
@@ -55,6 +55,7 @@ public class PlateMetadataBrowserLocatorResolver extends AbstractViewLocatorReso
         return locator.getParameters().get(PermlinkUtilities.PERM_ID_PARAMETER_KEY);
     }
 
+    @Override
     public void resolve(ViewLocator locator) throws UserFailureException
     {
         String platePermId = tryExtractPlatePermId(locator);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/WellSearchLocatorResolver.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/WellSearchLocatorResolver.java
index 8d1b602c85c391912cbf4a95f1d3635b840d1786..98f83421fb66e2fd44c9b7851db55a06f6e8bf13 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/WellSearchLocatorResolver.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/locator/WellSearchLocatorResolver.java
@@ -32,6 +32,7 @@ public class WellSearchLocatorResolver extends AbstractViewLocatorResolver
         this.viewContext = viewContext;
     }
 
+    @Override
     public void resolve(ViewLocator locator) throws UserFailureException
     {
         String experimentPermId =
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/LibraryExtractor.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/LibraryExtractor.java
index 0cfe4e51c42731bc780244c699000edb3714a61d..7848aec23fe11387f2ebed23ead39175af26c665 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/LibraryExtractor.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/LibraryExtractor.java
@@ -11,6 +11,7 @@ import ch.systemsx.cisd.common.exceptions.Status;
 import ch.systemsx.cisd.common.exceptions.UserFailureException;
 import ch.systemsx.cisd.common.filesystem.FileOperations;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.BatchOperationKind;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.EntityType;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewMaterial;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.NewSamplesWithTypes;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.SampleType;
@@ -105,7 +106,7 @@ class LibraryExtractor
             throws FileNotFoundException
     {
         SampleType typeInFile = new SampleType();
-        typeInFile.setCode(SampleType.DEFINED_IN_FILE);
+        typeInFile.setCode(EntityType.DEFINED_IN_FILE);
         BatchSamplesOperation prepared =
                 SampleUploadSectionsParser.prepareSamples(typeInFile, Arrays
                         .asList(new NamedInputStream(new FileInputStream(platesFile), platesFile
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/ScreeningClientService.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/ScreeningClientService.java
index d57ec7bc0d4f299dbe5427871c8ef4f8084acbd7..abe560a67625d9f4b7fa1e7eb9370fd69e94b9ee 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/ScreeningClientService.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/ScreeningClientService.java
@@ -129,33 +129,39 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return BuildAndEnvironmentInfo.INSTANCE.getFullVersion();
     }
 
+    @Override
     public final SampleParentWithDerived getSampleGenerationInfo(final TechId sampleId)
             throws UserFailureException
     {
         return server.getSampleInfo(getSessionToken(), sampleId);
     }
 
+    @Override
     public ExternalData getDataSetInfo(TechId datasetTechId)
     {
         return server.getDataSetInfo(getSessionToken(), datasetTechId);
     }
 
+    @Override
     public Material getMaterialInfo(TechId materialTechId) throws UserFailureException
     {
         return server.getMaterialInfo(getSessionToken(), materialTechId);
     }
 
+    @Override
     public PlateContent getPlateContent(TechId plateId) throws UserFailureException
     {
         return server.getPlateContent(getSessionToken(), plateId);
     }
 
+    @Override
     public FeatureVectorDataset getFeatureVectorDataset(DatasetReference dataset,
             CodeAndLabel featureName) throws UserFailureException
     {
         return server.getFeatureVectorDataset(getSessionToken(), dataset, featureName);
     }
 
+    @Override
     public FeatureVectorValues getWellFeatureVectorValues(String datasetCode, String datastoreCode,
             WellLocation location)
     {
@@ -163,11 +169,13 @@ public final class ScreeningClientService extends AbstractClientService implemen
                 location);
     }
 
+    @Override
     public PlateImages getPlateContentForDataset(TechId datasetId)
     {
         return server.getPlateContentForDataset(getSessionToken(), datasetId);
     }
 
+    @Override
     public TypedTableResultSet<WellContent> listPlateWells(
             IResultSetConfig<String, TableModelRowWithObject<WellContent>> gridCriteria,
             WellSearchCriteria materialCriteria)
@@ -179,18 +187,21 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return new TypedTableResultSet<WellContent>(resultSet);
     }
 
+    @Override
     public String prepareExportPlateWells(
             TableExportCriteria<TableModelRowWithObject<WellContent>> criteria)
     {
         return prepareExportEntities(criteria);
     }
 
+    @Override
     public List<WellReplicaImage> listWellImages(TechId materialId, TechId experimentId)
             throws UserFailureException
     {
         return server.listWellImages(getSessionToken(), materialId, experimentId);
     }
 
+    @Override
     public TypedTableResultSet<Material> listMaterials(
             IResultSetConfig<String, TableModelRowWithObject<Material>> gridCriteria,
             WellSearchCriteria materialCriteria)
@@ -203,12 +214,14 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return new TypedTableResultSet<Material>(resultSet);
     }
 
+    @Override
     public String prepareExportMaterials(
             TableExportCriteria<TableModelRowWithObject<Material>> criteria)
     {
         return prepareExportEntities(criteria);
     }
 
+    @Override
     public TypedTableResultSet<WellMetadata> listPlateMetadata(
             IResultSetConfig<String, TableModelRowWithObject<WellMetadata>> criteria,
             TechId sampleId)
@@ -222,12 +235,14 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return new TypedTableResultSet<WellMetadata>(resultSet);
     }
 
+    @Override
     public String prepareExportPlateMetadata(
             TableExportCriteria<TableModelRowWithObject<WellMetadata>> criteria)
     {
         return prepareExportEntities(criteria);
     }
 
+    @Override
     public void registerLibrary(LibraryRegistrationInfo details) throws UserFailureException
     {
         final String sessionToken = getSessionToken();
@@ -257,12 +272,14 @@ public final class ScreeningClientService extends AbstractClientService implemen
 
     }
 
+    @Override
     public Vocabulary getPlateGeometryVocabulary() throws UserFailureException
     {
         final String sessionToken = getSessionToken();
         return server.getVocabulary(sessionToken, ScreeningConstants.PLATE_GEOMETRY);
     }
 
+    @Override
     public LogicalImageInfo getImageDatasetInfo(String datasetCode, String datastoreCode,
             WellLocation wellLocationOrNull)
     {
@@ -271,6 +288,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
                 wellLocationOrNull);
     }
 
+    @Override
     public ImageDatasetEnrichedReference getImageDatasetReference(String datasetCode,
             String datastoreCode)
     {
@@ -278,12 +296,14 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return server.getImageDatasetReference(sessionToken, datasetCode, datastoreCode);
     }
 
+    @Override
     public List<ImageResolution> getImageDatasetResolutions(String datasetCode, String datastoreCode)
     {
         final String sessionToken = getSessionToken();
         return server.getImageDatasetResolutions(sessionToken, datasetCode, datastoreCode);
     }
 
+    @Override
     public ImageSampleContent getImageDatasetInfosForSample(TechId sampleId,
             WellLocation wellLocationOrNull)
     {
@@ -291,6 +311,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return server.getImageDatasetInfosForSample(sessionToken, sampleId, wellLocationOrNull);
     }
 
+    @Override
     public TypedTableResultSet<Material> listExperimentMaterials(final TechId experimentId,
             final ListMaterialDisplayCriteria displayCriteria)
     {
@@ -305,6 +326,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
             }, displayCriteria);
     }
 
+    @Override
     public TypedTableResultSet<MaterialFeatureVectorSummary> listExperimentFeatureVectorSummary(
             IResultSetConfig<String, TableModelRowWithObject<MaterialFeatureVectorSummary>> criteria,
             TechId experimentId, AnalysisProcedureCriteria analysisProcedureCriteria)
@@ -316,6 +338,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
 
     }
 
+    @Override
     public TypedTableResultSet<MaterialReplicaFeatureSummary> listMaterialReplicaFeatureSummary(
             IResultSetConfig<String, TableModelRowWithObject<MaterialReplicaFeatureSummary>> resultSetConfig,
             MaterialFeaturesOneExpCriteria criteria)
@@ -325,6 +348,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return listEntities(provider, resultSetConfig);
     }
 
+    @Override
     public String prepareExportFeatureVectorSummary(
             TableExportCriteria<TableModelRowWithObject<MaterialFeatureVectorSummary>> criteria)
             throws UserFailureException
@@ -332,6 +356,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return prepareExportEntities(criteria);
     }
 
+    @Override
     public String prepareExportMaterialReplicaFeatureSummary(
             TableExportCriteria<TableModelRowWithObject<MaterialReplicaFeatureSummary>> criteria)
             throws UserFailureException
@@ -339,6 +364,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return prepareExportEntities(criteria);
     }
 
+    @Override
     public TypedTableResultSet<MaterialSimpleFeatureVectorSummary> listMaterialFeaturesFromAllExperiments(
             IResultSetConfig<String, TableModelRowWithObject<MaterialSimpleFeatureVectorSummary>> resultSetConfig,
             MaterialFeaturesManyExpCriteria criteria) throws UserFailureException
@@ -350,6 +376,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return listEntities(provider, resultSetConfig);
     }
 
+    @Override
     public String prepareExportMaterialFeaturesFromAllExperiments(
             TableExportCriteria<TableModelRowWithObject<MaterialSimpleFeatureVectorSummary>> criteria)
             throws UserFailureException
@@ -357,6 +384,7 @@ public final class ScreeningClientService extends AbstractClientService implemen
         return prepareExportEntities(criteria);
     }
 
+    @Override
     public AnalysisProcedures listNumericalDatasetsAnalysisProcedures(
             ExperimentSearchCriteria experimentSearchCriteria)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/resultset/WellContentProvider.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/resultset/WellContentProvider.java
index b77f81b54b37372a71adc3450788ed10b9d9d142..38d597584156cdaea0cde6e7f3ace2240fde6891 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/resultset/WellContentProvider.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/server/resultset/WellContentProvider.java
@@ -280,6 +280,7 @@ public class WellContentProvider extends AbstractTableModelProvider<WellContent>
     {
         Collections.sort(wells, new Comparator<WellContent>()
             {
+                @Override
                 public int compare(WellContent o1, WellContent o2)
                 {
                     for (IEntityProperty materialProperty : materialPropsOrder)
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/LibraryRegistrationTask.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/LibraryRegistrationTask.java
index 6a04e7dfec15c34f61b8b49872b36460cff4a743..36b56183c55e15047321e1ff4d58512e45304b7e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/LibraryRegistrationTask.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/LibraryRegistrationTask.java
@@ -225,6 +225,7 @@ class LibraryRegistrationTask implements IASyncAction
         return result.toString();
     }
 
+    @Override
     public boolean doAction(Writer messageWriter)
     {
         try
@@ -240,6 +241,7 @@ class LibraryRegistrationTask implements IASyncAction
         }
     }
 
+    @Override
     public String getName()
     {
         return "Library registration";
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningBusinessObjectFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningBusinessObjectFactory.java
index 3e32120025642d65c74e5c79baffd2d04790ada6..625875aad9ca6b338c34a5fba5bceb09f274b9aa 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningBusinessObjectFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningBusinessObjectFactory.java
@@ -69,12 +69,14 @@ public final class ScreeningBusinessObjectFactory extends AbstractPluginBusiness
     /**
      * @return null if the dataset is not found in the imaging database
      */
+    @Override
     public IImageDatasetLoader tryCreateImageDatasetLoader(String datasetCode, String datastoreCode)
     {
         return HCSDatasetLoader.tryCreate(specificDAOFactory.getImagingQueryDAO(datastoreCode),
                 datasetCode);
     }
 
+    @Override
     public IImageResolutionLoader tryCreateImageResolutionLoader(String datasetCode,
             String datastoreCode)
     {
@@ -82,17 +84,20 @@ public final class ScreeningBusinessObjectFactory extends AbstractPluginBusiness
                 specificDAOFactory.getImagingQueryDAO(datastoreCode), datasetCode);
     }
 
+    @Override
     public IHCSFeatureVectorLoader createHCSFeatureVectorLoader(String datastoreCode)
     {
         final IImagingReadonlyQueryDAO dao = specificDAOFactory.getImagingQueryDAO(datastoreCode);
         return new IHCSFeatureVectorLoader()
             {
+                @Override
                 public WellFeatureCollection<FeatureVectorValues> fetchWellFeatureValuesIfPossible(
                         List<WellFeatureVectorReference> references)
                 {
                     return FeatureVectorLoader.fetchWellFeatureValuesIfPossible(references, dao);
                 }
 
+                @Override
                 public WellFeatureCollection<FeatureVectorValues> fetchDatasetFeatureValues(
                         List<String> datasetCodes, List<String> featureCodes)
                 {
@@ -100,6 +105,7 @@ public final class ScreeningBusinessObjectFactory extends AbstractPluginBusiness
                             .fetchDatasetFeatures(datasetCodes, featureCodes, dao);
                 }
 
+                @Override
                 public List<CodeAndLabel> fetchDatasetFeatureNames(String datasetCode)
                 {
                     return FeatureVectorLoader.fetchDatasetFeatureNames(datasetCode, dao);
@@ -107,6 +113,7 @@ public final class ScreeningBusinessObjectFactory extends AbstractPluginBusiness
             };
     }
 
+    @Override
     public IExperimentMetadataLoader createExperimentMetadataLoader(long experimentId,
             List<String> dataStoreCodes)
     {
@@ -123,41 +130,49 @@ public final class ScreeningBusinessObjectFactory extends AbstractPluginBusiness
         return imagingQueries;
     }
 
+    @Override
     public final ISampleBO createSampleBO(final Session session)
     {
         return getCommonBusinessObjectFactory().createSampleBO(session);
     }
 
+    @Override
     public ISampleLister createSampleLister(Session session)
     {
         return getCommonBusinessObjectFactory().createSampleLister(session);
     }
 
+    @Override
     public IMaterialLister createMaterialLister(Session session)
     {
         return getCommonBusinessObjectFactory().createMaterialLister(session);
     }
 
+    @Override
     public IDataSetTable createDataSetTable(Session session)
     {
         return getCommonBusinessObjectFactory().createDataSetTable(session);
     }
 
+    @Override
     public IExperimentBO createExperimentBO(Session session)
     {
         return getCommonBusinessObjectFactory().createExperimentBO(session);
     }
 
+    @Override
     public IMaterialBO createMaterialBO(Session session)
     {
         return getCommonBusinessObjectFactory().createMaterialBO(session);
     }
 
+    @Override
     public IDataBO createDataBO(Session session)
     {
         return getCommonBusinessObjectFactory().createDataBO(session);
     }
 
+    @Override
     public IDatasetLister createDatasetLister(Session session)
     {
         return getCommonBusinessObjectFactory().createDatasetLister(session);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningSampleServerPlugin.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningSampleServerPlugin.java
index 2e499a4addbfb21c54cb10f9b52c357b13e418cb..840703a56bff476d974063685c081864b24e166a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningSampleServerPlugin.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningSampleServerPlugin.java
@@ -54,6 +54,7 @@ public final class ScreeningSampleServerPlugin extends AbstractSampleServerPlugi
     // ISampleServerPluginWithWildcards
     //
 
+    @Override
     public final List<String> getOrderedEntityTypeCodes(final EntityKind entityKind)
     {
         if (entityKind == EntityKind.SAMPLE)
@@ -66,6 +67,7 @@ public final class ScreeningSampleServerPlugin extends AbstractSampleServerPlugi
         return Collections.emptyList();
     }
 
+    @Override
     public final Set<String> getEntityTypeCodes(final EntityKind entityKind)
     {
         Set<String> types = new HashSet<String>();
@@ -73,6 +75,7 @@ public final class ScreeningSampleServerPlugin extends AbstractSampleServerPlugi
         return types;
     }
 
+    @Override
     public final ISampleTypeSlaveServerPlugin getSlaveServer()
     {
         return getGenericSampleTypeSlaveServerPlugin();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java
index 683ce0cb0907916969cf1a9ad581bccb6e56cce9..a0c0930608c63e22d2da873258161c9ef8bcc89a 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServer.java
@@ -164,11 +164,13 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         this.businessObjectFactory = businessObjectFactory;
     }
 
+    @Override
     public void afterPropertiesSet() throws Exception
     {
         setAnalysisSettings(new AnalysisSettings(configurer.getResolvedProps()));
     }
     
+    @Override
     public void setAnalysisSettings(AnalysisSettings analysisSettings)
     {
         this.analysisSettings = analysisSettings;
@@ -181,6 +183,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
     /**
      * Creates a logger used to log invocations of objects of this class.
      */
+    @Override
     public final IScreeningServer createLogger(IInvocationLoggerContext context)
     {
         return new ScreeningServerLogger(getSessionManager(), context);
@@ -190,6 +193,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
     // IScreeningServer
     //
 
+    @Override
     public final SampleParentWithDerived getSampleInfo(final String sessionToken,
             final TechId sampleId)
     {
@@ -201,12 +205,14 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 .getSampleInfo(session, sample), session.getBaseIndexURL());
     }
 
+    @Override
     public PlateContent getPlateContent(String sessionToken, TechId plateId)
     {
         Session session = getSession(sessionToken);
         return PlateContentLoader.loadImagesAndMetadata(session, businessObjectFactory, plateId);
     }
 
+    @Override
     public FeatureVectorDataset getFeatureVectorDataset(String sessionToken,
             DatasetReference dataset, CodeAndLabel featureName)
     {
@@ -215,6 +221,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 featureName);
     }
 
+    @Override
     public PlateImages getPlateContentForDataset(String sessionToken, TechId datasetId)
     {
         Session session = getSession(sessionToken);
@@ -222,6 +229,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 datasetId);
     }
 
+    @Override
     public List<WellContent> listPlateWells(String sessionToken, WellSearchCriteria materialCriteria)
     {
         Session session = getSession(sessionToken);
@@ -229,6 +237,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 materialCriteria);
     }
 
+    @Override
     public List<WellReplicaImage> listWellImages(String sessionToken, TechId materialId,
             TechId experimentId)
     {
@@ -237,6 +246,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 materialId, experimentId, createDefaultSettings());
     }
 
+    @Override
     public List<Material> listMaterials(String sessionToken, WellSearchCriteria materialCriteria)
     {
         Session session = getSession(sessionToken);
@@ -244,6 +254,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 materialCriteria);
     }
 
+    @Override
     public FeatureVectorValues getWellFeatureVectorValues(String sessionToken, String datasetCode,
             String datastoreCode, WellLocation wellLocation)
     {
@@ -252,6 +263,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 datasetCode, datastoreCode, wellLocation);
     }
 
+    @Override
     public LogicalImageInfo getImageDatasetInfo(String sessionToken, String datasetCode,
             String datastoreCode, WellLocation wellLocationOrNull)
     {
@@ -260,6 +272,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 datastoreCode, wellLocationOrNull);
     }
 
+    @Override
     public ImageDatasetEnrichedReference getImageDatasetReference(String sessionToken,
             String datasetCode, String datastoreCode)
     {
@@ -268,6 +281,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 datasetCode, datastoreCode);
     }
 
+    @Override
     public List<ImageResolution> getImageDatasetResolutions(String sessionToken,
             String datasetCode, String datastoreCode)
     {
@@ -277,6 +291,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         return loader.getImageResolutions();
     }
 
+    @Override
     public ImageSampleContent getImageDatasetInfosForSample(String sessionToken, TechId sampleId,
             WellLocation wellLocationOrNull)
     {
@@ -285,16 +300,19 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 sampleId, wellLocationOrNull);
     }
 
+    @Override
     public ExternalData getDataSetInfo(String sessionToken, TechId datasetId)
     {
         return commonServer.getDataSetInfo(sessionToken, datasetId);
     }
 
+    @Override
     public Material getMaterialInfo(String sessionToken, TechId materialId)
     {
         return commonServer.getMaterialInfo(sessionToken, materialId);
     }
 
+    @Override
     public Vocabulary getVocabulary(String sessionToken, String code) throws UserFailureException
     {
         checkSession(sessionToken);
@@ -303,6 +321,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         return VocabularyTranslator.translate(vocabulary);
     }
 
+    @Override
     public void registerLibrary(String sessionToken, String userEmail,
             List<NewMaterial> newGenesOrNull, List<NewMaterial> newOligosOrNull,
             List<NewSamplesWithTypes> newSamplesWithType)
@@ -311,6 +330,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 newOligosOrNull, newSamplesWithType, commonServer, genericServer, getDAOFactory()));
     }
 
+    @Override
     public List<Material> listExperimentMaterials(String sessionToken, TechId experimentId,
             MaterialType materialType)
     {
@@ -327,6 +347,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 .listMaterials(sessionToken, ListMaterialCriteria.createFromMaterialIds(materialIds), true);
     }
 
+    @Override
     public ExperimentFeatureVectorSummary getExperimentFeatureVectorSummary(String sessionToken,
             TechId experimentId, AnalysisProcedureCriteria analysisProcedureCriteria)
     {
@@ -340,6 +361,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 analysisProcedureCriteria, analysisSettings);
     }
 
+    @Override
     public List<MaterialSimpleFeatureVectorSummary> getMaterialFeatureVectorsFromAllExperiments(
             String sessionToken, MaterialFeaturesManyExpCriteria criteria)
     {
@@ -386,6 +408,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         return settings;
     }
 
+    @Override
     public MaterialReplicaFeatureSummaryResult getMaterialFeatureVectorSummary(String sessionToken,
             MaterialFeaturesOneExpCriteria criteria)
     {
@@ -398,30 +421,35 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
 
     // --------- IScreeningOpenbisServer - method signature should be changed with care
 
+    @Override
     public List<FeatureVectorDatasetReference> listFeatureVectorDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates)
     {
         return createScreeningApiImpl(sessionToken).listFeatureVectorDatasets(plates);
     }
 
+    @Override
     public List<ImageDatasetReference> listImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates)
     {
         return createScreeningApiImpl(sessionToken).listImageDatasets(plates);
     }
 
+    @Override
     public List<ImageDatasetReference> listRawImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates)
     {
         return createScreeningApiImpl(sessionToken).listRawImageDatasets(plates);
     }
 
+    @Override
     public List<ImageDatasetReference> listSegmentationImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates)
     {
         return createScreeningApiImpl(sessionToken).listSegmentationImageDatasets(plates);
     }
 
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(
             String sessionToken,
             ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.ExperimentIdentifier experimentIdentifer,
@@ -431,6 +459,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 materialIdentifier, findDatasets);
     }
 
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(String sessionToken,
             MaterialIdentifier materialIdentifier, boolean findDatasets)
     {
@@ -438,49 +467,58 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
                 .listPlateWells(materialIdentifier, findDatasets);
     }
 
+    @Override
     public List<WellIdentifier> listPlateWells(String sessionToken, PlateIdentifier plateIdentifier)
     {
         return createScreeningApiImpl(sessionToken).listPlateWells(plateIdentifier);
     }
 
+    @Override
     public Sample getWellSample(String sessionToken, WellIdentifier wellIdentifier)
     {
         return createScreeningApiImpl(sessionToken).getWellSample(wellIdentifier, true);
     }
 
+    @Override
     public Sample getPlateSample(String sessionToken, PlateIdentifier plateIdentifier)
     {
         return createScreeningApiImpl(sessionToken).getPlateSample(plateIdentifier);
     }
 
+    @Override
     public List<Plate> listPlates(String sessionToken)
     {
         return createScreeningApiImpl(sessionToken).listPlates();
     }
 
+    @Override
     public List<Plate> listPlates(String sessionToken, ExperimentIdentifier experiment)
     {
         return createScreeningApiImpl(sessionToken).listPlates(experiment);
     }
 
+    @Override
     public List<ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.ExperimentIdentifier> listExperiments(
             String sessionToken)
     {
         return createScreeningApiImpl(sessionToken).listExperiments();
     }
 
+    @Override
     public List<ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.ExperimentIdentifier> listExperiments(
             String sessionToken, String userId)
     {
         return createScreeningApiImpl(sessionToken).listExperiments(userId);
     }
 
+    @Override
     public List<IDatasetIdentifier> getDatasetIdentifiers(String sessionToken,
             List<String> datasetCodes)
     {
         return createScreeningApiImpl(sessionToken).getDatasetIdentifiers(datasetCodes);
     }
 
+    @Override
     public AnalysisProcedures listNumericalDatasetsAnalysisProcedures(String sessionToken,
             ExperimentSearchCriteria experimentSearchCriteria)
     {
@@ -503,6 +541,7 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         return ScreeningUtils.filterNumericalDatasetsAnalysisProcedures(analysisProcedures);
     }
 
+    @Override
     public List<PlateWellMaterialMapping> listPlateMaterialMapping(String sessionToken,
             List<? extends PlateIdentifier> plates,
             MaterialTypeIdentifier materialTypeIdentifierOrNull)
@@ -523,11 +562,13 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         return new ScreeningApiImpl(session, businessObjectFactory, getDAOFactory());
     }
 
+    @Override
     public void logoutScreening(String sessionToken)
     {
         logout(sessionToken);
     }
 
+    @Override
     public String tryLoginScreening(String userId, String userPassword)
     {
         SessionContextDTO sessionContext = tryToAuthenticate(userId, userPassword);
@@ -540,22 +581,26 @@ public final class ScreeningServer extends AbstractServer<IScreeningServer> impl
         }
     }
 
+    @Override
     public int getMajorVersion()
     {
         return MAJOR_VERSION;
     }
 
+    @Override
     public int getMinorVersion()
     {
         return MINOR_VERSION;
     }
 
+    @Override
     public List<PlateMetadata> getPlateMetadataList(String sessionToken,
             List<? extends PlateIdentifier> plateIdentifiers) throws IllegalArgumentException
     {
         return createScreeningApiImpl(sessionToken).getPlateMetadata(plateIdentifiers);
     }
 
+    @Override
     public ExperimentImageMetadata getExperimentImageMetadata(String sessionToken,
             ExperimentIdentifier experimentIdentifer)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerJson.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerJson.java
index 897a58ff59113698ae067b31268b8017c7c003fb..67659931ed22132144a3d7bd5a561dfb3f862667 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerJson.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerJson.java
@@ -54,54 +54,64 @@ public class ScreeningServerJson implements IScreeningApiServer
         this.server = server;
     }
 
+    @Override
     public int getMajorVersion()
     {
         return server.getMajorVersion();
     }
 
+    @Override
     public int getMinorVersion()
     {
         return server.getMinorVersion();
     }
 
+    @Override
     public String tryLoginScreening(String userId, String userPassword)
             throws IllegalArgumentException
     {
         return server.tryLoginScreening(userId, userPassword);
     }
 
+    @Override
     public void logoutScreening(String sessionToken) throws IllegalArgumentException
     {
         server.logoutScreening(sessionToken);
     }
 
+    @Override
     public List<Plate> listPlates(String sessionToken) throws IllegalArgumentException
     {
         return new PlateList(server.listPlates(sessionToken));
     }
 
+    @Override
     public List<Plate> listPlates(String sessionToken, ExperimentIdentifier experiment)
             throws IllegalArgumentException
     {
         return new PlateList(server.listPlates(sessionToken, experiment));
     }
 
+    @Override
     public List<PlateMetadata> getPlateMetadataList(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
         return new PlateMetadataList(server.getPlateMetadataList(sessionToken, plates));
     }
 
+    @Override
     public List<ExperimentIdentifier> listExperiments(String sessionToken)
     {
         return new ExperimentIdentifierList(server.listExperiments(sessionToken));
     }
 
+    @Override
     public List<ExperimentIdentifier> listExperiments(String sessionToken, String userId)
     {
         return new ExperimentIdentifierList(server.listExperiments(sessionToken, userId));
     }
 
+    @Override
     public List<FeatureVectorDatasetReference> listFeatureVectorDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
@@ -109,18 +119,21 @@ public class ScreeningServerJson implements IScreeningApiServer
                 plates));
     }
 
+    @Override
     public List<ImageDatasetReference> listImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
         return new ImageDatasetReferenceList(server.listImageDatasets(sessionToken, plates));
     }
 
+    @Override
     public List<ImageDatasetReference> listRawImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
         return new ImageDatasetReferenceList(server.listRawImageDatasets(sessionToken, plates));
     }
 
+    @Override
     public List<ImageDatasetReference> listSegmentationImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
@@ -128,12 +141,14 @@ public class ScreeningServerJson implements IScreeningApiServer
                 plates));
     }
 
+    @Override
     public List<IDatasetIdentifier> getDatasetIdentifiers(String sessionToken,
             List<String> datasetCodes)
     {
         return new IDatasetIdentifierList(server.getDatasetIdentifiers(sessionToken, datasetCodes));
     }
 
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(String sessionToken,
             ExperimentIdentifier experimentIdentifer, MaterialIdentifier materialIdentifier,
             boolean findDatasets)
@@ -142,6 +157,7 @@ public class ScreeningServerJson implements IScreeningApiServer
                 experimentIdentifer, materialIdentifier, findDatasets));
     }
 
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(String sessionToken,
             MaterialIdentifier materialIdentifier, boolean findDatasets)
     {
@@ -149,21 +165,25 @@ public class ScreeningServerJson implements IScreeningApiServer
                 materialIdentifier, findDatasets));
     }
 
+    @Override
     public List<WellIdentifier> listPlateWells(String sessionToken, PlateIdentifier plateIdentifier)
     {
         return new WellIdentifierList(server.listPlateWells(sessionToken, plateIdentifier));
     }
 
+    @Override
     public Sample getWellSample(String sessionToken, WellIdentifier wellIdentifier)
     {
         return server.getWellSample(sessionToken, wellIdentifier);
     }
 
+    @Override
     public Sample getPlateSample(String sessionToken, PlateIdentifier plateIdentifier)
     {
         return server.getPlateSample(sessionToken, plateIdentifier);
     }
 
+    @Override
     public List<PlateWellMaterialMapping> listPlateMaterialMapping(String sessionToken,
             List<? extends PlateIdentifier> plates,
             MaterialTypeIdentifier materialTypeIdentifierOrNull)
@@ -172,6 +192,7 @@ public class ScreeningServerJson implements IScreeningApiServer
                 plates, materialTypeIdentifierOrNull));
     }
 
+    @Override
     public ExperimentImageMetadata getExperimentImageMetadata(String sessionToken,
             ExperimentIdentifier experimentIdentifer)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerLogger.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerLogger.java
index ee111820f56b2678e0c997df3ffcf88f69610e1d..1e25b191c56211ed2bb4839fd122e6e4f1e55a2c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerLogger.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/ScreeningServerLogger.java
@@ -88,6 +88,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         super(sessionManager, context);
     }
 
+    @Override
     public final SampleParentWithDerived getSampleInfo(final String sessionToken,
             final TechId sampleId)
     {
@@ -102,12 +103,14 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
                 newSample.getSampleType(), newSample.getIdentifier(), attachments.size());
     }
 
+    @Override
     public PlateContent getPlateContent(String sessionToken, TechId plateId)
     {
         logAccess(sessionToken, "getPlateContent", "PLATE(%s)", plateId.getId());
         return null;
     }
 
+    @Override
     public FeatureVectorDataset getFeatureVectorDataset(String sessionToken,
             DatasetReference dataset, CodeAndLabel featureName)
     {
@@ -116,18 +119,21 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public PlateImages getPlateContentForDataset(String sessionToken, TechId datasetId)
     {
         logAccess(sessionToken, "getPlateContentForDataset", "DATASET(%s)", datasetId.getId());
         return null;
     }
 
+    @Override
     public List<WellContent> listPlateWells(String sessionToken, WellSearchCriteria materialCriteria)
     {
         logAccess(sessionToken, "listPlateWells", "criteria(%s)", materialCriteria);
         return null;
     }
 
+    @Override
     public List<WellReplicaImage> listWellImages(String sessionToken, TechId materialId,
             TechId experimentId)
     {
@@ -136,12 +142,14 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<Material> listMaterials(String sessionToken, WellSearchCriteria materialCriteria)
     {
         logAccess(sessionToken, "listMaterials", "criteria(%s)", materialCriteria);
         return null;
     }
 
+    @Override
     public FeatureVectorValues getWellFeatureVectorValues(String sessionToken, String datasetCode,
             String datastoreCode, WellLocation wellLocation)
     {
@@ -150,6 +158,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public LogicalImageInfo getImageDatasetInfo(String sessionToken, String datasetCode,
             String datastoreCode, WellLocation wellLocationOrNull)
     {
@@ -158,6 +167,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public ImageDatasetEnrichedReference getImageDatasetReference(String sessionToken,
             String datasetCode, String datastoreCode)
     {
@@ -166,6 +176,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<ImageResolution> getImageDatasetResolutions(String sessionToken,
             String datasetCode, String datastoreCode)
     {
@@ -174,6 +185,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public ImageSampleContent getImageDatasetInfosForSample(String sessionToken, TechId sampleId,
             WellLocation wellLocationOrNull)
     {
@@ -182,12 +194,14 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public ExternalData getDataSetInfo(String sessionToken, TechId datasetId)
     {
         logAccess(sessionToken, "getDataSetInfo", "datasetId(%s)", datasetId.getId());
         return null;
     }
 
+    @Override
     public Material getMaterialInfo(String sessionToken, TechId materialId)
     {
         logAccess(sessionToken, "getMaterialInfo", "datasetId(%s)", materialId.getId());
@@ -207,6 +221,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public Vocabulary getVocabulary(String sessionToken, String code) throws UserFailureException
     {
         logAccess(sessionToken, "getVocabulary", "CODE(%s)", code);
@@ -215,17 +230,20 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
 
     // --- IScreeningApiServer
 
+    @Override
     public void logoutScreening(String sessionToken)
     {
         // No logging because already done by the session manager
     }
 
+    @Override
     public String tryLoginScreening(String userId, String userPassword)
     {
         // No logging because already done by the session manager
         return null;
     }
 
+    @Override
     public List<FeatureVectorDatasetReference> listFeatureVectorDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates)
     {
@@ -233,6 +251,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<ImageDatasetReference> listImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates)
     {
@@ -240,6 +259,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<ImageDatasetReference> listRawImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
@@ -247,6 +267,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<ImageDatasetReference> listSegmentationImageDatasets(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
@@ -254,6 +275,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(
             String sessionToken,
             ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.ExperimentIdentifier experimentIdentifer,
@@ -264,6 +286,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<PlateWellReferenceWithDatasets> listPlateWells(String sessionToken,
             MaterialIdentifier materialIdentifier, boolean findDatasets)
     {
@@ -271,30 +294,35 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<WellIdentifier> listPlateWells(String sessionToken, PlateIdentifier plateIdentifier)
     {
         logAccess(sessionToken, "listPlateWells", "plate: %s", plateIdentifier);
         return null;
     }
 
+    @Override
     public Sample getWellSample(String sessionToken, WellIdentifier wellIdentifier)
     {
         logAccess(sessionToken, "getWellSample", "%s", wellIdentifier);
         return null;
     }
 
+    @Override
     public Sample getPlateSample(String sessionToken, PlateIdentifier plateIdentifier)
     {
         logAccess(sessionToken, "getPlateSample", "%s", plateIdentifier);
         return null;
     }
 
+    @Override
     public List<Plate> listPlates(String sessionToken)
     {
         logAccess(sessionToken, "listPlates");
         return null;
     }
 
+    @Override
     public List<Plate> listPlates(String sessionToken, ExperimentIdentifier experiment)
             throws IllegalArgumentException
     {
@@ -302,6 +330,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<ch.systemsx.cisd.openbis.plugin.screening.shared.api.v1.dto.ExperimentIdentifier> listExperiments(
             String sessionToken)
     {
@@ -309,12 +338,14 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<ExperimentIdentifier> listExperiments(String sessionToken, String userId)
     {
         logAccess(sessionToken, "listExperiments", "user(%s)", userId);
         return null;
     }
 
+    @Override
     public List<IDatasetIdentifier> getDatasetIdentifiers(String sessionToken,
             List<String> datasetCodes)
     {
@@ -322,6 +353,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<PlateWellMaterialMapping> listPlateMaterialMapping(String sessionToken,
             List<? extends PlateIdentifier> plates,
             MaterialTypeIdentifier materialTypeIdentifierOrNull)
@@ -337,22 +369,26 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<Material> listExperimentMaterials(String sessionToken, TechId experimentId,
             MaterialType materialType)
     {
         return null;
     }
 
+    @Override
     public int getMajorVersion()
     {
         return MAJOR_VERSION;
     }
 
+    @Override
     public int getMinorVersion()
     {
         return ScreeningServer.MINOR_VERSION;
     }
 
+    @Override
     public void registerLibrary(String sessionToken, String userEmail,
             List<NewMaterial> newGenesOrNull, List<NewMaterial> newOligosOrNull,
             List<NewSamplesWithTypes> newSamplesWithType)
@@ -362,6 +398,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
                 userEmail, newGenesOrNull, newOligosOrNull, newSamplesWithType);
     }
 
+    @Override
     public ExperimentFeatureVectorSummary getExperimentFeatureVectorSummary(String sessionToken,
             TechId experimentId, AnalysisProcedureCriteria analysisProcedureCriteria)
     {
@@ -371,6 +408,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public MaterialReplicaFeatureSummaryResult getMaterialFeatureVectorSummary(String sessionToken,
             MaterialFeaturesOneExpCriteria criteria)
     {
@@ -381,6 +419,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<MaterialSimpleFeatureVectorSummary> getMaterialFeatureVectorsFromAllExperiments(
             String sessionToken, MaterialFeaturesManyExpCriteria criteria)
     {
@@ -391,6 +430,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public AnalysisProcedures listNumericalDatasetsAnalysisProcedures(String sessionToken,
             ExperimentSearchCriteria experimentSearchCriteria)
     {
@@ -400,6 +440,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public List<PlateMetadata> getPlateMetadataList(String sessionToken,
             List<? extends PlateIdentifier> plates) throws IllegalArgumentException
     {
@@ -407,6 +448,7 @@ final class ScreeningServerLogger extends AbstractServerLogger implements IScree
         return null;
     }
 
+    @Override
     public ExperimentImageMetadata getExperimentImageMetadata(String sessionToken,
             ExperimentIdentifier experimentIdentifer)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/BasicWellContentQueryResult.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/BasicWellContentQueryResult.java
index ade4dffa60bc133298d94f50161b936632a48c15..9bae137a4f0588f49dde4a514de46c246e823847 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/BasicWellContentQueryResult.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/BasicWellContentQueryResult.java
@@ -36,11 +36,13 @@ public class BasicWellContentQueryResult implements IWellReference
 
     public long material_content_id;
 
+    @Override
     public String getPlatePermId()
     {
         return plate_perm_id;
     }
 
+    @Override
     public WellReference getWellReference()
     {
         WellLocation wellLocation = WellLocation.parseLocationStr(well_code);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/WellContentQueryResult.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/WellContentQueryResult.java
index 1d3d174b821e1fa3c20f720cf5b413c2ec7eb2a2..2a1b28c55897f6a25f7fc5dc7599891a076c2ab6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/WellContentQueryResult.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/WellContentQueryResult.java
@@ -59,11 +59,13 @@ public class WellContentQueryResult extends ExperimentReferenceQueryResult imple
     @Deprecated
     public String material_content_type_code;
 
+    @Override
     public String getPlatePermId()
     {
         return plate_perm_id;
     }
 
+    @Override
     public WellReference getWellReference()
     {
         WellLocation wellLocation = WellLocation.parseLocationStr(well_code);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/db/ScreeningDAOFactory.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/db/ScreeningDAOFactory.java
index f578b21c9a9ae277e28edf41ed11aa10da775f50..2393e7fc02eb51c978a61760740589f312c2fd0f 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/db/ScreeningDAOFactory.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/dataaccess/db/ScreeningDAOFactory.java
@@ -56,6 +56,7 @@ public class ScreeningDAOFactory implements IScreeningDAOFactory
         }
     }
 
+    @Override
     public IImagingReadonlyQueryDAO getImagingQueryDAO(String dssCode)
     {
         DataSource dataSource =
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentFeatureVectorSummaryLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentFeatureVectorSummaryLoader.java
index c45c3bf6bb5d8ef385677c01bb50139927fc70da..35467d6dd993bb4d986251867612ca4a08bd34ee 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentFeatureVectorSummaryLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentFeatureVectorSummaryLoader.java
@@ -175,6 +175,7 @@ public class ExperimentFeatureVectorSummaryLoader extends AbstractContentLoader
                 .map(summaries,
                         new ICollectionMappingFunction<MaterialFeatureVectorSummary, MaterialIdFeatureVectorSummary>()
                             {
+                                @Override
                                 public MaterialFeatureVectorSummary map(
                                         MaterialIdFeatureVectorSummary summary)
                                 {
@@ -211,6 +212,7 @@ public class ExperimentFeatureVectorSummaryLoader extends AbstractContentLoader
     {
         return new TableMap<Long, Material>(materials, new IKeyExtractor<Long, Material>()
             {
+                @Override
                 public Long getKey(Material material)
                 {
                     return material.getId();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentMetadaLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentMetadaLoader.java
index 7cc3867846c14345a436ee3feff94ea492ef6bd8..88aa8c04519afff9fab26e3daa45c3276debd76f 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentMetadaLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ExperimentMetadaLoader.java
@@ -63,11 +63,13 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
         this.imagingQueries = imagingQueries;
     }
     
+    @Override
     public Geometry tryGetPlateGeometry()
     {
         WidthAndHeightDTO plateGeometry =
                 getUniqueOrNull(new IExperimentMetadataQuery<WidthAndHeightDTO>()
                     {
+                        @Override
                         public List<WidthAndHeightDTO> select(IImagingReadonlyQueryDAO query)
                         {
                             return query.listPlateGeometriesForExperiment(experimentId);
@@ -76,10 +78,12 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
         return asGeometry(plateGeometry);
     }
 
+    @Override
     public Geometry tryGetTileGeometry()
     {
         WidthAndHeightDTO tileGeometry = getUniqueOrNull(new IExperimentMetadataQuery<WidthAndHeightDTO>()
                     {
+                        @Override
                         public List<WidthAndHeightDTO> select(IImagingReadonlyQueryDAO query)
                         {
                             return query.listTileGeometriesForExperiment(experimentId);
@@ -88,12 +92,14 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
         return asGeometry(tileGeometry);
     }
 
+    @Override
     public List<ImageChannel> getImageChannels()
     {
         List<ImgChannelDTO> channels =
                 getMergedResult(new IExperimentMetadataQuery<ImgChannelDTO>()
                     {
 
+                        @Override
                         public List<ImgChannelDTO> select(IImagingReadonlyQueryDAO query)
                         {
                             // TODO KE: does this return all channels ?
@@ -104,6 +110,7 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
         return asImageChannels(uniqueChannels);
     }
 
+    @Override
     public ImageSize tryGetOriginalImageSize()
     {
         List<WidthAndHeightAndPermIdDTO> imageSizes = getImageSizes(true);
@@ -115,6 +122,7 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
         return distinctSizes.size() == 1 ? distinctSizes.iterator().next() : null;
     }
 
+    @Override
     public List<ImageSize> getThumbnailImageSizes()
     {
         List<WidthAndHeightAndPermIdDTO> imageSizes = getImageSizes(false);
@@ -142,6 +150,7 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
         }
         Collections.sort(sizes, new Comparator<ImageSize>()
             {
+                @Override
                 public int compare(ImageSize s1, ImageSize s2)
                 {
                     return s1.getWidth() * s1.getHeight() - s2.getWidth() * s2.getWidth();
@@ -154,6 +163,7 @@ public class ExperimentMetadaLoader implements IExperimentMetadataLoader
     {
         return getMergedResult(new IExperimentMetadataQuery<WidthAndHeightAndPermIdDTO>()
             {
+                @Override
                 public List<WidthAndHeightAndPermIdDTO> select(IImagingReadonlyQueryDAO query)
                 {
                     return query.listImageSizesForExperiment(experimentId, original);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeatureVectorSummaryLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeatureVectorSummaryLoader.java
index 0ff99e1cfccc0f8007d1014276bfc2e269c7dfa1..02354dae5d2eaed3d89e98bf5a6296a96fe061a6 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeatureVectorSummaryLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeatureVectorSummaryLoader.java
@@ -294,6 +294,7 @@ public class MaterialFeatureVectorSummaryLoader extends AbstractContentLoader
                 CollectionUtils.filter(materialWellDataList,
                         new ICollectionFilter<WellExtendedData>()
                             {
+                                @Override
                                 public boolean isPresent(WellExtendedData element)
                                 {
                                     return replicaSequences.isBiologicalReplicate(element) == false;
@@ -325,6 +326,7 @@ public class MaterialFeatureVectorSummaryLoader extends AbstractContentLoader
     {
         Collections.sort(materialWellDataList, new Comparator<WellExtendedData>()
             {
+                @Override
                 public int compare(WellExtendedData w1, WellExtendedData w2)
                 {
                     Integer replicaSequenceNumber1 =
@@ -346,6 +348,7 @@ public class MaterialFeatureVectorSummaryLoader extends AbstractContentLoader
         return GroupByMap.create(materialWellDataList,
                 new IGroupKeyExtractor<Integer, WellExtendedData>()
                     {
+                        @Override
                         public Integer getKey(WellExtendedData wellData)
                         {
                             return replicaSequences.tryGetBiologicalReplicateSequence(wellData);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeaturesFromAllExperimentsLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeaturesFromAllExperimentsLoader.java
index 97f5b9f5f26e7c2bdf4b7d702c285f90c512cd53..522a02efd2de1b108508d1c027d2e6e82847255d 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeaturesFromAllExperimentsLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/MaterialFeaturesFromAllExperimentsLoader.java
@@ -84,6 +84,7 @@ public class MaterialFeaturesFromAllExperimentsLoader extends AbstractContentLoa
                 .map(experiments,
                         new ICollectionMappingFunction<ExperimentReference, ExperimentReferenceQueryResult>()
                             {
+                                @Override
                                 public ExperimentReference map(
                                         ExperimentReferenceQueryResult experiment)
                                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateContentLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateContentLoader.java
index 35ff79bb5a36678318bbe6f20bd470306298b3d3..f72f105370d79c8b9fa4f8fe0ef00a3b2bf40d53 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateContentLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/PlateContentLoader.java
@@ -38,6 +38,7 @@ import ch.systemsx.cisd.openbis.generic.shared.basic.dto.CodeAndLabel;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityPropertiesHolder;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.IEntityProperty;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListOrSearchSampleCriteria;
+import ch.systemsx.cisd.openbis.generic.shared.basic.dto.ListSampleCriteria;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Material;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.Sample;
 import ch.systemsx.cisd.openbis.generic.shared.dto.DataPE;
@@ -408,7 +409,7 @@ public class PlateContentLoader
     private static ListOrSearchSampleCriteria createSamplesForContainerCriteria(TechId plateId)
     {
         return new ListOrSearchSampleCriteria(
-                ListOrSearchSampleCriteria.createForContainer(plateId));
+                ListSampleCriteria.createForContainer(plateId));
     }
 
     private TechId fetchContainerId(TechId wellId)
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ReplicateSequenceProvider.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ReplicateSequenceProvider.java
index 72cdeef38e412246b122c6418f2c9076fbc4e527..b5e3adecf622cbe4341e2c681b80c9436cfdbe8c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ReplicateSequenceProvider.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ReplicateSequenceProvider.java
@@ -90,6 +90,7 @@ class ReplicateSequenceProvider
     {
         return GroupByMap.create(wells, new IGroupKeyExtractor<Double, IEntityPropertiesHolder>()
             {
+                @Override
                 public Double getKey(IEntityPropertiesHolder well)
                 {
                     return tryFindSubgroup(well);
@@ -129,6 +130,7 @@ class ReplicateSequenceProvider
         ArrayList<T> sortedKeys = new ArrayList<T>(keys);
         Collections.sort(sortedKeys, new NullComparator<T>(new Comparator<T>()
             {
+                @Override
                 public int compare(T o1, T o2)
                 {
                     return o1.compareTo(o2);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ScreeningApiImpl.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ScreeningApiImpl.java
index f2ccfd8ddc69525019664c706880d6c30ea94e44..492b50a4622a173f4d412f803be340a25fe9b283 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ScreeningApiImpl.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/ScreeningApiImpl.java
@@ -187,6 +187,7 @@ public class ScreeningApiImpl
         }
         Collections.sort(plates, new Comparator<Plate>()
             {
+                @Override
                 public int compare(Plate o1, Plate o2)
                 {
                     return o1.getAugmentedCode().compareTo(o2.getAugmentedCode());
@@ -235,6 +236,7 @@ public class ScreeningApiImpl
     {
         Collections.sort(experimentIds, new Comparator<ExperimentIdentifier>()
             {
+                @Override
                 public int compare(ExperimentIdentifier o1, ExperimentIdentifier o2)
                 {
                     return o1.getAugmentedCode().compareTo(o2.getAugmentedCode());
@@ -506,6 +508,7 @@ public class ScreeningApiImpl
         }
         Collections.sort(wells, new Comparator<WellIdentifier>()
             {
+                @Override
                 public int compare(WellIdentifier o1, WellIdentifier o2)
                 {
                     WellPosition p1 = o1.getWellPosition();
@@ -835,6 +838,7 @@ public class ScreeningApiImpl
         }
         Collections.sort(plateWellReferences, new Comparator<PlateWellReferenceWithDatasets>()
             {
+                @Override
                 public int compare(PlateWellReferenceWithDatasets o1,
                         PlateWellReferenceWithDatasets o2)
                 {
@@ -858,6 +862,7 @@ public class ScreeningApiImpl
         }
         Collections.sort(plateWellReferences, new Comparator<PlateWellReferenceWithDatasets>()
             {
+                @Override
                 public int compare(PlateWellReferenceWithDatasets o1,
                         PlateWellReferenceWithDatasets o2)
                 {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellContentLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellContentLoader.java
index bdbbb2e706e92947861ec0e785c47cbb09cd1835..474eccf06d197c62a5866ad971e1d688af881755 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellContentLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellContentLoader.java
@@ -242,6 +242,7 @@ public class WellContentLoader extends AbstractContentLoader
                 new TableMap<Long/* plate id */, ExternalData>(imageDatasets,
                         new IKeyExtractor<Long, ExternalData>()
                             {
+                                @Override
                                 public Long getKey(ExternalData externalData)
                                 {
                                     return externalData.getSample().getId();
@@ -464,6 +465,7 @@ public class WellContentLoader extends AbstractContentLoader
     {
         return GroupByMap.create(wellContents, new IGroupKeyExtractor<String, WellContent>()
             {
+                @Override
                 public String getKey(WellContent wellContent)
                 {
                     DatasetReference featureVectorDataset =
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellDataLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellDataLoader.java
index a7cfbf7afdef08a7407fe41971a1f7a2b2c9ef29..f47486b301328837f9c2dca58559a6535acd8577 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellDataLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellDataLoader.java
@@ -163,6 +163,7 @@ class WellDataLoader extends AbstractContentLoader
         return CollectionUtils.map(wellsData,
                 new CollectionUtils.ICollectionMappingFunction<WellExtendedData, WellData>()
                     {
+                        @Override
                         public WellExtendedData map(WellData wellData)
                         {
                             WellReference wellReference = wellData.tryGetWellReference();
@@ -400,6 +401,7 @@ class WellDataLoader extends AbstractContentLoader
     {
         return CollectionUtils.filter(wells, new ICollectionFilter<BasicWellContentQueryResult>()
             {
+                @Override
                 public boolean isPresent(BasicWellContentQueryResult well)
                 {
                     return belongsToExperiment(well, experimentPermId);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellFeatureCollectionLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellFeatureCollectionLoader.java
index ea81651cfe687200dfa5d915c061d549591e7f79..e7d8346f094bcbda4442e5963b59aa4276575599 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellFeatureCollectionLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellFeatureCollectionLoader.java
@@ -99,6 +99,7 @@ public class WellFeatureCollectionLoader extends AbstractContentLoader
                 new TableMap<String, ExternalData>(datasets,
                         new IKeyExtractor<String, ExternalData>()
                             {
+                                @Override
                                 public String getKey(ExternalData externalData)
                                 {
                                     Sample plate = externalData.getSample();
@@ -151,6 +152,7 @@ public class WellFeatureCollectionLoader extends AbstractContentLoader
             GroupByMap<String/* datastore code */, DatasetReference> datastoreToDatasetsMap =
                     GroupByMap.create(datasets, new IGroupKeyExtractor<String, DatasetReference>()
                         {
+                            @Override
                             public String getKey(DatasetReference datasetReference)
                             {
                                 return datasetReference.getDatastoreCode();
@@ -201,6 +203,7 @@ public class WellFeatureCollectionLoader extends AbstractContentLoader
             return CollectionUtils.map(datasets,
                     new ICollectionMappingFunction<String, DatasetReference>()
                         {
+                            @Override
                             public String map(DatasetReference element)
                             {
                                 return element.getCode();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellReplicaSummaryCalculator.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellReplicaSummaryCalculator.java
index 528c5a280e4a9b70581d3a586db683050c81d64f..9ec133bebdd2d10369f6a41e9c80927b6e690078 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellReplicaSummaryCalculator.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/WellReplicaSummaryCalculator.java
@@ -107,6 +107,7 @@ public class WellReplicaSummaryCalculator
         this.replicaToWellDataMap =
                 GroupByMap.create(wellDataList, new IGroupKeyExtractor<Long, IWellData>()
                     {
+                        @Override
                         public Long getKey(IWellData wellData)
                         {
                             return wellData.getReplicaMaterialId();
@@ -384,6 +385,7 @@ public class WellReplicaSummaryCalculator
     {
         return new Comparator<IWellData>()
             {
+                @Override
                 public int compare(IWellData w1, IWellData w2)
                 {
                     float v1 = getFeatureValue(w1, featureIx);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellData.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellData.java
index aa0f33b76d692b9ef03be149a2d11e8d1f09a270..be84992c009f7fbe9420b24c67af6cf59c7fd841 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellData.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellData.java
@@ -41,11 +41,13 @@ public class WellData implements IWellData
         this.wellReferenceOrNull = wellReferenceOrNull;
     }
 
+    @Override
     public long getReplicaMaterialId()
     {
         return replicaId;
     }
 
+    @Override
     public float[] getFeatureVector()
     {
         return featureVector;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellExtendedData.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellExtendedData.java
index 825e925243c23fda0229948667d4912e294426e8..8e7aadd5d72ac0000fcd4f9732f142314c775d0d 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellExtendedData.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/dto/WellExtendedData.java
@@ -45,11 +45,13 @@ public class WellExtendedData extends WellData implements IEntityPropertiesHolde
         return well;
     }
 
+    @Override
     public Long getId()
     {
         return well.getId();
     }
 
+    @Override
     public List<IEntityProperty> getProperties()
     {
         return well.getProperties();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/AbstractFormatSelectionCriterion.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/AbstractFormatSelectionCriterion.java
index c05b6d5fd805b1f8bddedc31a45d0d91102bafff..269a3dc7b01b3a56dff26c9bb5656279076b408e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/AbstractFormatSelectionCriterion.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/AbstractFormatSelectionCriterion.java
@@ -33,6 +33,7 @@ public abstract class AbstractFormatSelectionCriterion implements
 {
     private static final long serialVersionUID = 1L;
 
+    @Override
     public List<ImageRepresentationFormat> getMatching(
             List<ImageRepresentationFormat> imageRepresentationFormats)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetIdentifier.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetIdentifier.java
index ab195b007206ea9af6cadfae4ca4db5fcec79890..f7e89431a80d5def04a3d172d33f2e972d2aa29c 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetIdentifier.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetIdentifier.java
@@ -30,16 +30,19 @@ public class DatasetIdentifier implements Serializable, IDatasetIdentifier
     /**
      * The code of this dataset.
      */
+    @Override
     public String getDatasetCode()
     {
         return datasetCode;
     }
 
+    @Override
     public String getPermId()
     {
         return datasetCode;
     }
 
+    @Override
     public String getDatastoreServerUrl()
     {
         return datastoreServerUrl;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetImageRepresentationFormats.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetImageRepresentationFormats.java
index a6d09f57fbb285e2f8fcafaf9f6c0a483dd7bb88..0fc7bcc6cb51a8feee0ef8343954d01c813f8d83 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetImageRepresentationFormats.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/DatasetImageRepresentationFormats.java
@@ -113,6 +113,7 @@ public class DatasetImageRepresentationFormats implements Serializable,
         return true;
     }
 
+    @Override
     public int compareTo(DatasetImageRepresentationFormats o)
     {
         return dataset.getDatasetCode().compareTo(o.getDataset().getDatasetCode());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureInformation.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureInformation.java
index 6f980fb8e2c970e59548cf21ffc2f1c305c1e26f..101137af22060e02fd69f177a27298d6e777d6f4 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureInformation.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureInformation.java
@@ -111,6 +111,7 @@ public class FeatureInformation implements Serializable, Comparable<FeatureInfor
         return true;
     }
 
+    @Override
     public int compareTo(FeatureInformation o)
     {
         return code.compareTo(o.getCode());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDataset.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDataset.java
index 1ed56b530795b4934f1fd0d633593ba45e0caf08..0662546246caae5c4acda2018026650b977cd103 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDataset.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorDataset.java
@@ -55,6 +55,7 @@ public class FeatureVectorDataset implements Serializable, IFeatureCodesProvider
      * Returns the feature codes. If feature codes are unspecified feature names are return. This
      * will be the case if a serialized instance of a previous of this class will be deserialized.
      */
+    @Override
     public List<String> getFeatureCodes()
     {
         return featureCodes == null ? featureNames : featureCodes;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java
index ffbfe653dc90243c274cf6d8a48e87da9113aa9b..37db156288bdc1791aef6b13337091d25146584d 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/FeatureVectorWithDescription.java
@@ -51,6 +51,7 @@ public class FeatureVectorWithDescription extends FeatureVector implements IFeat
     /**
      * @since 1.7
      */
+    @Override
     public List<String> getFeatureCodes()
     {
         return featureNames;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageChannel.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageChannel.java
index 794270fb4eae37ca839495de558b1835059d505a..446b77d1e1e442d8c6fce0a1a324d6f47e444c8e 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageChannel.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/ImageChannel.java
@@ -155,6 +155,7 @@ public class ImageChannel implements Serializable, Comparable<ImageChannel>
                 + ", wavelength=" + wavelength + ", transformations=" + transformations + "]";
     }
 
+    @Override
     public int compareTo(ImageChannel imageChannel)
     {
         return code.compareTo(imageChannel.code);
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PermanentIdentifier.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PermanentIdentifier.java
index 8e055773ccf84325e781c761b899a31eb5e6e54c..bde98acdd4082db4d0e65ecc6eb53ce9b8928afd 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PermanentIdentifier.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PermanentIdentifier.java
@@ -40,6 +40,7 @@ public class PermanentIdentifier implements Serializable, IPermanentIdentifier
         this.permId = permId;
     }
 
+    @Override
     public String getPermId()
     {
         return permId;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/SizeCriterion.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/SizeCriterion.java
index 6e30c48fae13203aab365ee88acf8e96a1b90426..54c436c22586dbac3f8f22f7151249518542c23b 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/SizeCriterion.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/SizeCriterion.java
@@ -141,6 +141,7 @@ public class SizeCriterion implements IImageRepresentationFormatSelectionCriteri
     private static final Comparator<ImageRepresentationFormat> SIZE_COMPARATOR =
             new Comparator<ImageRepresentationFormat>()
                 {
+                    @Override
                     public int compare(ImageRepresentationFormat i1, ImageRepresentationFormat i2)
                     {
                         return area(i1) - area(i2);
@@ -188,6 +189,7 @@ public class SizeCriterion implements IImageRepresentationFormatSelectionCriteri
         this.type = type;
     }
 
+    @Override
     public List<ImageRepresentationFormat> getMatching(
             List<ImageRepresentationFormat> imageRepresentationFormats)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/WellPosition.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/WellPosition.java
index 4ffc85f3e0cafadce491e3d7bfa548e9d22b3d27..a8a6a97b97ac9299d1bfedf90d4f655226aee7d8 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/WellPosition.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/WellPosition.java
@@ -161,6 +161,7 @@ public class WellPosition implements Serializable, Comparable<WellPosition>
         return true;
     }
 
+    @Override
     public int compareTo(WellPosition other)
     {
         int diff = wellRow - other.wellRow;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/ExperimentSearchCriteriaPredicate.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/ExperimentSearchCriteriaPredicate.java
index 3f9cd024e3cf45cbaeb86f3b48339b4d14b8078b..707f2cf8e4778ad96a9be13aad18aa35042740ee 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/ExperimentSearchCriteriaPredicate.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/ExperimentSearchCriteriaPredicate.java
@@ -51,12 +51,14 @@ public final class ExperimentSearchCriteriaPredicate implements
         this.spacePredicate = new SpaceIdentifierPredicate();
     }
 
+    @Override
     public final void init(IAuthorizationDataProvider provider)
     {
         experimentPredicate.init(provider);
         spacePredicate.init(provider);
     }
 
+    @Override
     public final Status evaluate(final PersonPE person,
             final List<RoleWithIdentifier> allowedRoles, final ExperimentSearchCriteria value)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/MaterialFeaturesOneExpPredicate.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/MaterialFeaturesOneExpPredicate.java
index 2a00652e6c0998006a16254fdac746594ec50648..d92795247628d6a647c28aa6f7c875dbf3d02bc7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/MaterialFeaturesOneExpPredicate.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/authorization/MaterialFeaturesOneExpPredicate.java
@@ -43,11 +43,13 @@ public final class MaterialFeaturesOneExpPredicate implements
         this.experimentPredicate = new ExperimentTechIdPredicate();
     }
 
+    @Override
     public final void init(IAuthorizationDataProvider provider)
     {
         experimentPredicate.init(provider);
     }
 
+    @Override
     public final Status evaluate(final PersonPE person,
             final List<RoleWithIdentifier> allowedRoles, final MaterialFeaturesOneExpCriteria value)
     {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/DatasetReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/DatasetReference.java
index 7482686dfdff18d99d6752089bcc3f971ab9f135..2de55152bcb6323a2f1a28f7e968217817a706aa 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/DatasetReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/DatasetReference.java
@@ -75,6 +75,7 @@ public class DatasetReference implements Serializable, IEntityInformationHolderW
         this.analysisProcedure = analysisProcedure;
     }
 
+    @Override
     public String getCode()
     {
         return datasetCode;
@@ -90,21 +91,25 @@ public class DatasetReference implements Serializable, IEntityInformationHolderW
         return datastoreHostUrl;
     }
 
+    @Override
     public EntityKind getEntityKind()
     {
         return EntityKind.DATA_SET;
     }
 
+    @Override
     public BasicEntityType getEntityType()
     {
         return new BasicEntityType(typeCode);
     }
 
+    @Override
     public Long getId()
     {
         return id;
     }
 
+    @Override
     public String getPermId()
     {
         return datasetCode;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentReference.java
index f1bfcd44b669eeb0bd0097d86c0de8c7f722f304..969e46816761135d2cf164b96f65b3adc1fd71e7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ExperimentReference.java
@@ -61,33 +61,39 @@ public class ExperimentReference implements Serializable, IEntityInformationHold
         this.spaceCode = spaceCode;
     }
 
+    @Override
     public EntityKind getEntityKind()
     {
         return EntityKind.EXPERIMENT;
     }
 
+    @Override
     public BasicEntityType getEntityType()
     {
         return new BasicEntityType(experimentTypeCode);
     }
 
+    @Override
     public Long getId()
     {
         return experimentId;
     }
 
+    @Override
     public String getCode()
     {
         return experimentCode;
     }
 
     /** @return experiment identifier */
+    @Override
     public String getIdentifier()
     {
         String SEP = "/";
         return SEP + spaceCode + SEP + projectCode + SEP + experimentCode;
     }
 
+    @Override
     public String getPermId()
     {
         return experimentPermId;
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageDatasetEnrichedReference.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageDatasetEnrichedReference.java
index d1bd2a8a2f92e66c5a787c82cc6399cecf50f328..401fe4bcec962c9789bb09b4297c7fe66ca993b4 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageDatasetEnrichedReference.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageDatasetEnrichedReference.java
@@ -72,26 +72,31 @@ public class ImageDatasetEnrichedReference implements IEntityInformationHolderWi
         return overlayDatasets;
     }
 
+    @Override
     public BasicEntityType getEntityType()
     {
         return imageDataset.getDatasetReference().getEntityType();
     }
 
+    @Override
     public EntityKind getEntityKind()
     {
         return imageDataset.getDatasetReference().getEntityKind();
     }
 
+    @Override
     public Long getId()
     {
         return imageDataset.getDatasetReference().getId();
     }
 
+    @Override
     public String getCode()
     {
         return imageDataset.getDatasetReference().getCode();
     }
 
+    @Override
     public String getPermId()
     {
         return imageDataset.getDatasetReference().getPermId();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageResolution.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageResolution.java
index e47767685fd884fb55ad8caec83864274c9a1054..80b7b769b5a567f7f26d0f13e5e46242027785ab 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageResolution.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/ImageResolution.java
@@ -52,6 +52,7 @@ public class ImageResolution implements Serializable, Comparable<ImageResolution
         return height;
     }
 
+    @Override
     public int compareTo(ImageResolution o)
     {
         if (this == o)
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellContent.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellContent.java
index 1430f52a1cb8d5233821b50f3fcfe17c81a53e14..d3cad2e973c58c28185ae9bd90c841b68b78dd85 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellContent.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellContent.java
@@ -179,12 +179,14 @@ public class WellContent extends WellImage implements Serializable, IEntityPrope
     }
 
     /** id of the well */
+    @Override
     public Long getId()
     {
         return well.getId();
     }
 
     /** properties of the well */
+    @Override
     public List<IEntityProperty> getProperties()
     {
         return getWellProperties();
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellSearchCriteria.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellSearchCriteria.java
index 5d45da5d5740282c98b6d8f84213e7c6cc286a27..aad14596236119481e1baf712107ccb42413f48f 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellSearchCriteria.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/basic/dto/WellSearchCriteria.java
@@ -52,7 +52,6 @@ public class WellSearchCriteria implements Serializable
         private String experimentIdentifier; // for display purposes and links in simple view mode
 
         // GWT only
-        @SuppressWarnings("unused")
         private SingleExperimentSearchCriteria()
         {
         }
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/FeatureVectorLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/FeatureVectorLoader.java
index 64fa11388682e5191b2ebb2c87340bfbd108597b..b490e559d2cc05bd32ff8440dc21f588ae8267b7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/FeatureVectorLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/FeatureVectorLoader.java
@@ -412,6 +412,7 @@ public class FeatureVectorLoader
                     GroupByMap.create(requestedFeatureDefinitions,
                             new IGroupKeyExtractor<Long, ImgFeatureDefDTO>()
                                 {
+                                    @Override
                                     public Long getKey(ImgFeatureDefDTO featureDef)
                                     {
                                         return featureDef.getDataSetId();
@@ -424,6 +425,7 @@ public class FeatureVectorLoader
                     GroupByMap.create(featureVocabularyTerms,
                             new IGroupKeyExtractor<Long, ImgFeatureVocabularyTermDTO>()
                                 {
+                                    @Override
                                     public Long getKey(
                                             ImgFeatureVocabularyTermDTO featureVocabularyTerm)
                                     {
@@ -437,6 +439,7 @@ public class FeatureVectorLoader
                     GroupByMap.create(requestedFeatureValues,
                             new IGroupKeyExtractor<Long, ImgFeatureValuesDTO>()
                                 {
+                                    @Override
                                     public Long getKey(ImgFeatureValuesDTO featureVal)
                                     {
                                         return featureVal.getFeatureDefId();
@@ -452,6 +455,7 @@ public class FeatureVectorLoader
             return new TableMap<Long, ImgContainerDTO>(containers,
                     new IKeyExtractor<Long, ImgContainerDTO>()
                         {
+                            @Override
                             public Long getKey(ImgContainerDTO container)
                             {
                                 return container.getId();
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 05acbdd419c75f1a9fd43ada416ce7bef1795158..ee8c8fdf52b23f7708981815a6c318481a999d6b 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
@@ -120,6 +120,7 @@ public class HCSDatasetLoader implements IImageDatasetLoader
         return GroupByMap.create(imageTransformations,
                 new IGroupKeyExtractor<Long, ImgImageTransformationDTO>()
                     {
+                        @Override
                         public Long getKey(ImgImageTransformationDTO transformation)
                         {
                             return transformation.getChannelId();
@@ -162,6 +163,7 @@ public class HCSDatasetLoader implements IImageDatasetLoader
         return channels.size();
     }
 
+    @Override
     public List<ImageChannelStack> listImageChannelStacks(WellLocation wellLocationOrNull)
     {
         List<ImgChannelStackDTO> stacks;
@@ -193,6 +195,7 @@ public class HCSDatasetLoader implements IImageDatasetLoader
                 stack.getT(), stack.getZ(), stack.getSeriesNumber());
     }
 
+    @Override
     public ImageDatasetParameters getImageParameters()
     {
         ImageDatasetParameters params = new ImageDatasetParameters();
@@ -243,6 +246,7 @@ public class HCSDatasetLoader implements IImageDatasetLoader
                             .map(transformationsOrNull,
                                     new CollectionUtils.ICollectionMappingFunction<InternalImageTransformationInfo, ImgImageTransformationDTO>()
                                         {
+                                            @Override
                                             public InternalImageTransformationInfo map(
                                                     ImgImageTransformationDTO transformation)
                                             {
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSImageResolutionLoader.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSImageResolutionLoader.java
index ee299dc346186143e5ea32b5e1af2a53c3cabf85..f3bde24dbd8e085f53785773b422bb6c5a3ce333 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSImageResolutionLoader.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/HCSImageResolutionLoader.java
@@ -63,6 +63,7 @@ public class HCSImageResolutionLoader implements IImageResolutionLoader
         this.dataset = dataset;
     }
 
+    @Override
     public List<ImageResolution> getImageResolutions()
     {
         List<ImgImageZoomLevelDTO> zoomLevels = query.listImageZoomLevels(dataset.getId());
diff --git a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/TransformerFactoryMapper.java b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/TransformerFactoryMapper.java
index 88dbf938cb41bac1c2b86a42b6eafef0dc3c9709..ddcbfdc955113ac0f2ee1aa88a80e32b0e6995b7 100644
--- a/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/TransformerFactoryMapper.java
+++ b/screening/source/java/ch/systemsx/cisd/openbis/plugin/screening/shared/imaging/dataaccess/TransformerFactoryMapper.java
@@ -35,17 +35,20 @@ public class TransformerFactoryMapper implements TypeMapper<IImageTransformerFac
 {
     private final TypeMapper<Serializable> serializableObjectMapper = new SerializableObjectMapper();
 
+    @Override
     public IImageTransformerFactory get(ResultSet results, int column) throws SQLException
     {
         return (IImageTransformerFactory) serializableObjectMapper.get(results, column);
     }
 
+    @Override
     public void set(ResultSet results, int column, IImageTransformerFactory obj)
             throws SQLException
     {
         serializableObjectMapper.set(results, column, obj);
     }
 
+    @Override
     public void set(PreparedStatement statement, int column, IImageTransformerFactory obj)
             throws SQLException
     {
diff --git a/screening/source/java/ch/systemsx/cisd/utils/MaterialShuffler.java b/screening/source/java/ch/systemsx/cisd/utils/MaterialShuffler.java
index dd6a9f2f8476d9123c41aaa03391932740fbdca2..aea7de4bcfac83d9a43461f7a17ad0a786e81dd1 100644
--- a/screening/source/java/ch/systemsx/cisd/utils/MaterialShuffler.java
+++ b/screening/source/java/ch/systemsx/cisd/utils/MaterialShuffler.java
@@ -43,6 +43,7 @@ public class MaterialShuffler extends SimpleJdbcDaoSupport
     private final static ParameterizedRowMapper<Integer> ID_MAPPER =
             new ParameterizedRowMapper<Integer>()
                 {
+                    @Override
                     public final Integer mapRow(final ResultSet rs, final int rowNum)
                             throws SQLException
                     {
@@ -89,6 +90,7 @@ public class MaterialShuffler extends SimpleJdbcDaoSupport
     private final static ParameterizedRowMapper<EntityIdMaterialId> ENTITY_ID_MATERIAL_ID_MAPPER =
             new ParameterizedRowMapper<EntityIdMaterialId>()
                 {
+                    @Override
                     public final EntityIdMaterialId mapRow(final ResultSet rs, final int rowNum)
                             throws SQLException
                     {
@@ -104,6 +106,7 @@ public class MaterialShuffler extends SimpleJdbcDaoSupport
             new ParameterizedRowMapper<String>()
                 {
 
+                    @Override
                     public String mapRow(ResultSet rs, int rowNum) throws SQLException
                     {
                         return rs.getString("code");
@@ -183,11 +186,13 @@ public class MaterialShuffler extends SimpleJdbcDaoSupport
                 new BatchPreparedStatementSetter()
                     {
 
+                        @Override
                         public int getBatchSize()
                         {
                             return 1000;
                         }
 
+                        @Override
                         public void setValues(PreparedStatement ps, int i) throws SQLException
                         {
                             EntityIdMaterialId entityIdMaterialId = properties.get(i);
diff --git a/screening/sourceTest/java/BiozentrumMatLabApiTest.java b/screening/sourceTest/java/BiozentrumMatLabApiTest.java
index be1c7b9b75fa9df096a633cb3a95284945ae9dff..9754a04ce143ad687b055ab2bb8f5c496a42ff53 100644
--- a/screening/sourceTest/java/BiozentrumMatLabApiTest.java
+++ b/screening/sourceTest/java/BiozentrumMatLabApiTest.java
@@ -19,6 +19,7 @@
  * 
  * @author Tomasz Pylak
  */
+@SuppressWarnings("unused")
 public class BiozentrumMatLabApiTest
 {
     public static void main(String[] args)
diff --git a/screening/sourceTest/java/OpenBISScreeningMLTest.java b/screening/sourceTest/java/OpenBISScreeningMLTest.java
index 655c097c9aefe81e98e38b08d57b7a6a905fe454..24232925465909a830ff9fe219c6a63fc2ae17b1 100644
--- a/screening/sourceTest/java/OpenBISScreeningMLTest.java
+++ b/screening/sourceTest/java/OpenBISScreeningMLTest.java
@@ -84,6 +84,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
 
     private static final FilenameFilter FILTER_TEMP_DIR = new FilenameFilter()
         {
+            @Override
             public boolean accept(File dir, String name)
             {
                 return name.startsWith(OpenBISScreeningML.TEMP_DIR_PREFIX)
@@ -937,6 +938,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                         one(openbis).loadImages(with(imgRefsMatcher1),
                                 with(new BaseMatcher<IImageOutputStreamProvider>()
                                     {
+                                        @Override
                                         public boolean matches(Object item)
                                         {
                                             if (item instanceof IImageOutputStreamProvider)
@@ -964,6 +966,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                                             return false;
                                         }
 
+                                        @Override
                                         public void describeTo(Description description)
                                         {
                                         }
@@ -972,6 +975,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                         one(openbis).loadImages(with(imgRefsMatcher2),
                                 with(new BaseMatcher<IImageOutputStreamProvider>()
                                     {
+                                        @Override
                                         public boolean matches(Object item)
                                         {
                                             if (item instanceof IImageOutputStreamProvider)
@@ -999,6 +1003,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
                                             return false;
                                         }
 
+                                        @Override
                                         public void describeTo(Description description)
                                         {
                                         }
@@ -1168,6 +1173,7 @@ public class OpenBISScreeningMLTest extends AbstractFileSystemTestCase
     {
         Arrays.sort(entities, new Comparator<Object[]>()
             {
+                @Override
                 public int compare(Object[] o1, Object[] o2)
                 {
                     return o1[0].toString().compareTo(o2[0].toString());
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 7f401b9f5c1b813b0d8ea5c172b714270296f832..752132529f2022833ee56f2679c16b828a254019 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
@@ -181,6 +181,7 @@ public class FeatureStorageProcessorTest extends AbstractFileSystemTestCase
         assertEquals(2, original.listFiles().length);
         File[] transformedFiles = original.listFiles(new FilenameFilter()
             {
+                @Override
                 public boolean accept(File dir, String name)
                 {
                     return name.endsWith("stat.txt");
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/images/ImageChannelsUtilsTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/images/ImageChannelsUtilsTest.java
index d50d736cbe75c14f36b2b23d1e6c73d5fcb320db..7549757e7620a59ace41bf36ed5b4ae602d17d70 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/images/ImageChannelsUtilsTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/dss/generic/server/images/ImageChannelsUtilsTest.java
@@ -72,6 +72,7 @@ public class ImageChannelsUtilsTest extends AssertJUnit
 
     private static final IImageTransformer TRANSFORMER = new IImageTransformer()
         {
+            @Override
             public BufferedImage transform(BufferedImage image)
             {
                 int width = image.getWidth();
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 896497c04dff276612e769cbc4135385d1261c2e..071f8b119872e9dc52e356bc62d96bb33310bff4 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
@@ -122,6 +122,7 @@ public class DssServiceRpcScreeningTest extends AssertJUnit
 
         private int id = counter++;
 
+        @Override
         public IImageTransformer createTransformer()
         {
             return null;
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeTest.java
index c1fceef2870e530c4d34d6e3673c1b70b57011f2..32cddff1e6e1cbc40abc20f2578a523a51524755 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/api/v1/ScreeningOpenbisServiceFacadeTest.java
@@ -104,6 +104,7 @@ public class ScreeningOpenbisServiceFacadeTest extends AbstractFileSystemTestCas
     {
         private final StringBuilder recorder = new StringBuilder();
 
+        @Override
         public void handlePlateImage(PlateImageReference plateImageReference, byte[] imageFileBytes)
         {
             recorder.append(plateImageReference).append(", ");
@@ -816,6 +817,7 @@ public class ScreeningOpenbisServiceFacadeTest extends AbstractFileSystemTestCas
         IPlateImageHandler handler = new IPlateImageHandler()
             {
 
+                @Override
                 public void handlePlateImage(PlateImageReference plateImageReference,
                         byte[] imageFileBytes)
                 {
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRendererTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRendererTest.java
index 4d931e46efeaccc36f1f3a11d40d9f85178e4fba..8bf4a10007d4e08790c0e5e8005370a759d68c22 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRendererTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/NumberHeatmapRendererTest.java
@@ -56,6 +56,7 @@ public class NumberHeatmapRendererTest
     {
         return new IRealNumberRenderer()
             {
+                @Override
                 public String render(float value)
                 {
                     return "" + value;
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGeneratorTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGeneratorTest.java
index 9c31a7cec63ce3041cce39fa23e40e5496dd31e2..ad51076d4bb725e70a2375cfdb2643a20686bb40 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGeneratorTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/client/web/client/application/detailviewers/heatmaps/WellTooltipGeneratorTest.java
@@ -83,6 +83,7 @@ public class WellTooltipGeneratorTest extends AssertJUnit
     {
         return new IRealNumberRenderer()
             {
+                @Override
                 public String render(float value)
                 {
                     return "" + value;
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoaderTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoaderTest.java
index 713f35f55e07f7ff56d82d93f8b637c4e19420b2..a4fa06f959c94ac99a595b448a11429c96657530 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoaderTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/FeatureVectorDatasetLoaderTest.java
@@ -117,6 +117,7 @@ public class FeatureVectorDatasetLoaderTest extends AbstractServerTestCase
                         .toString());
         Collections.sort(datasets, new Comparator<ExternalData>()
             {
+                @Override
                 public int compare(ExternalData o1, ExternalData o2)
                 {
                     return o1.getCode().compareTo(o2.getCode());
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoaderTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoaderTest.java
index e10ec7993fbcdb7525744cda22a5e1915dab1be8..1fb5d455fd16b95ece84a87bbbbc3c9aa401485e 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoaderTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/server/logic/HCSImageDatasetLoaderTest.java
@@ -141,6 +141,7 @@ public class HCSImageDatasetLoaderTest extends AbstractServerTestCase
                         .toString());
         Collections.sort(references, new Comparator<ImageDatasetReference>()
             {
+                @Override
                 public int compare(ImageDatasetReference o1, ImageDatasetReference o2)
                 {
                     return o1.getDatasetCode().compareTo(o2.getDatasetCode());
diff --git a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PlateImageReferenceTest.java b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PlateImageReferenceTest.java
index 1c6edfdc47fb101e1f7eda67fc9d84a6bd770924..976bda9f7a835d53a185407f24049720203207fa 100644
--- a/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PlateImageReferenceTest.java
+++ b/screening/sourceTest/java/ch/systemsx/cisd/openbis/plugin/screening/shared/api/v1/dto/PlateImageReferenceTest.java
@@ -50,16 +50,19 @@ public class PlateImageReferenceTest extends AssertJUnit
         return new IDatasetIdentifier()
             {
 
+                @Override
                 public String getDatasetCode()
                 {
                     return "9834598723-9834";
                 }
 
+                @Override
                 public String getPermId()
                 {
                     return getDatasetCode();
                 }
 
+                @Override
                 public String getDatastoreServerUrl()
                 {
                     return "http://localhost:8888";