From faf7bdbb719a7e089ca0b6e20a08c7a33935a045 Mon Sep 17 00:00:00 2001
From: kaloyane <kaloyane>
Date: Thu, 30 Jun 2011 14:05:48 +0000
Subject: [PATCH] Jython Dropbox API refactoring: getDataSourceQueryService is
 now accessible via the "state" variable (used to be in "service")

SVN: 21940
---
 .../ch/systemsx/cisd/etlserver/ETLDaemon.java | 31 +++++++----
 ...TopLevelDataSetRegistratorGlobalState.java | 22 ++++++--
 .../v1/DataSetTypeToRegistratorMapper.java    |  9 +--
 .../DataSetRegistrationService.java           | 11 ----
 .../IDataSetRegistrationService.java          |  6 --
 .../api/v1/impl/DataSourceQueryService.java   |  2 +-
 .../internal}/v1/IDataSourceQueryService.java |  2 +-
 .../TransferredDataSetHandlerTest.java        |  4 +-
 .../AbstractJythonDataSetHandlerTest.java     | 55 +++----------------
 .../DataSetStorageRollbackerTest.java         |  2 +-
 .../JythonTopLevelDataSetRegistratorTest.java |  2 +-
 .../DataSetRegistrationTransactionTest.java   |  2 +-
 12 files changed, 58 insertions(+), 90 deletions(-)
 rename datastore_server/source/java/ch/systemsx/cisd/{etlserver/registrator/api => openbis/dss/generic/shared/api/internal}/v1/IDataSourceQueryService.java (97%)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java
index 82ab6f80121..db46139bd04 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/ETLDaemon.java
@@ -62,6 +62,7 @@ import ch.systemsx.cisd.common.utilities.ISelfTestable;
 import ch.systemsx.cisd.common.utilities.IStopSignaler;
 import ch.systemsx.cisd.common.utilities.PropertyUtils;
 import ch.systemsx.cisd.common.utilities.SystemExit;
+import ch.systemsx.cisd.etlserver.registrator.api.v1.impl.DataSourceQueryService;
 import ch.systemsx.cisd.etlserver.validation.DataSetValidator;
 import ch.systemsx.cisd.etlserver.validation.IDataSetValidator;
 import ch.systemsx.cisd.openbis.dss.BuildAndEnvironmentInfo;
@@ -69,6 +70,7 @@ import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IncomingShareIdProvider;
 import ch.systemsx.cisd.openbis.dss.generic.shared.QueueingDataSetStatusUpdaterService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.ServiceProvider;
+import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.IDataSourceQueryService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetCodesWithStatus;
 import ch.systemsx.cisd.openbis.dss.generic.shared.utils.DssPropertyParametersUtil;
 import ch.systemsx.cisd.openbis.dss.generic.shared.utils.SegmentedStoreUtils;
@@ -224,6 +226,7 @@ public final class ETLDaemon
         IDataSetValidator dataSetValidator = new DataSetValidator(properties);
         final Properties mailProperties = Parameters.createMailProperties(properties);
         final IMailClient mailClient = new MailClient(mailProperties);
+        final IDataSourceQueryService dataSourceQueryService = new DataSourceQueryService();
         File storeRootDir = DssPropertyParametersUtil.getStoreRootDir(parameters.getProperties());
         File[] shares = SegmentedStoreUtils.getShares(storeRootDir);
         List<String> incomingShares = new ArrayList<String>();
@@ -235,7 +238,7 @@ public final class ETLDaemon
             operationLog.info("[" + threadParameters.getThreadName() + "]: Data sets drop into '"
                     + incomingDataDirectory + "' will be stored in share " + shareId + ".");
             createProcessingThread(parameters, threadParameters, shareId, openBISService,
-                    highwaterMarkWatcher, mailClient, dataSetValidator,
+                    highwaterMarkWatcher, mailClient, dataSetValidator, dataSourceQueryService,
                     notifySuccessfulRegistration);
         }
         IncomingShareIdProvider.add(incomingShares);
@@ -286,13 +289,15 @@ public final class ETLDaemon
             final ThreadParameters threadParameters, String shareId,
             final IEncapsulatedOpenBISService authorizedLimsService,
             final HighwaterMarkWatcher highwaterMarkWatcher, final IMailClient mailClient,
-            final IDataSetValidator dataSetValidator, final boolean notifySuccessfulRegistration)
+            final IDataSetValidator dataSetValidator,
+            IDataSourceQueryService dataSourceQueryService,
+            final boolean notifySuccessfulRegistration)
     {
         final File incomingDataDirectory = threadParameters.getIncomingDataDirectory();
         final ITopLevelDataSetRegistrator pathHandler =
                 createTopLevelDataSetRegistrator(parameters.getProperties(), threadParameters,
                         shareId, authorizedLimsService, mailClient, dataSetValidator,
-                        notifySuccessfulRegistration);
+                        dataSourceQueryService, notifySuccessfulRegistration);
         final HighwaterMarkDirectoryScanningHandler directoryScanningHandler =
                 createDirectoryScanningHandler(pathHandler, highwaterMarkWatcher,
                         incomingDataDirectory, threadParameters.reprocessFaultyDatasets());
@@ -314,15 +319,17 @@ public final class ETLDaemon
     public static ITopLevelDataSetRegistrator createTopLevelDataSetRegistrator(
             final Properties properties, final ThreadParameters threadParameters, String shareId,
             final IEncapsulatedOpenBISService openBISService, final IMailClient mailClient,
-            final IDataSetValidator dataSetValidator, final boolean notifySuccessfulRegistration)
+            final IDataSetValidator dataSetValidator,
+            IDataSourceQueryService dataSourceQueryService,
+            final boolean notifySuccessfulRegistration)
     {
         final File storeRootDir = DssPropertyParametersUtil.getStoreRootDir(properties);
         migrateStoreRootDir(storeRootDir, openBISService.getHomeDatabaseInstance());
         String dssCode = DssPropertyParametersUtil.getDataStoreCode(properties);
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState(dssCode, shareId, storeRootDir,
-                        openBISService, mailClient, dataSetValidator, notifySuccessfulRegistration,
-                        threadParameters);
+                        openBISService, mailClient, dataSetValidator, dataSourceQueryService,
+                        notifySuccessfulRegistration, threadParameters);
 
         ITopLevelDataSetRegistrator registrator =
                 ClassUtils.create(ITopLevelDataSetRegistrator.class, threadParameters
@@ -338,7 +345,9 @@ public final class ETLDaemon
     public static ITopLevelDataSetRegistrator createTopLevelDataSetRegistrator(
             final Properties properties, final ThreadParameters threadParameters, String shareId,
             final IEncapsulatedOpenBISService openBISService, final IMailClient mailClient,
-            final IDataSetValidator dataSetValidator, final boolean notifySuccessfulRegistration,
+            final IDataSetValidator dataSetValidator,
+            IDataSourceQueryService dataSourceQueryService,
+            final boolean notifySuccessfulRegistration,
             boolean useIsFinishedMarkerFile, boolean deleteUnidentified,
             String preRegistrationScriptOrNull, String postRegistrationScriptOrNull,
             String[] validationScriptsOrNull, Class<?> defaultTopLevelDataSetRegistratorClass)
@@ -348,10 +357,10 @@ public final class ETLDaemon
         String dssCode = DssPropertyParametersUtil.getDataStoreCode(properties);
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState(dssCode, shareId, storeRootDir,
-                        openBISService, mailClient, dataSetValidator, notifySuccessfulRegistration,
-                        threadParameters, useIsFinishedMarkerFile, deleteUnidentified,
-                        preRegistrationScriptOrNull, postRegistrationScriptOrNull,
-                        validationScriptsOrNull);
+                        openBISService, mailClient, dataSetValidator, dataSourceQueryService,
+                        notifySuccessfulRegistration, threadParameters, useIsFinishedMarkerFile,
+                        deleteUnidentified, preRegistrationScriptOrNull,
+                        postRegistrationScriptOrNull, validationScriptsOrNull);
 
         ITopLevelDataSetRegistrator registrator =
                 ClassUtils
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/TopLevelDataSetRegistratorGlobalState.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/TopLevelDataSetRegistratorGlobalState.java
index e16edbb0e15..1dacb21c640 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/TopLevelDataSetRegistratorGlobalState.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/TopLevelDataSetRegistratorGlobalState.java
@@ -25,6 +25,7 @@ import ch.systemsx.cisd.common.logging.LogFactory;
 import ch.systemsx.cisd.common.mail.IMailClient;
 import ch.systemsx.cisd.etlserver.validation.IDataSetValidator;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.IDataSourceQueryService;
 
 /**
  * Global state needed by top level data set registrators.
@@ -49,6 +50,8 @@ public class TopLevelDataSetRegistratorGlobalState
 
     private final IDataSetValidator dataSetValidator;
 
+    private final IDataSourceQueryService dataSourceQueryService;
+
     private final boolean notifySuccessfulRegistration;
 
     private final ThreadParameters threadParameters;
@@ -77,10 +80,12 @@ public class TopLevelDataSetRegistratorGlobalState
      */
     public TopLevelDataSetRegistratorGlobalState(String dssCode, String shareId, File storeRootDir,
             IEncapsulatedOpenBISService openBisService, IMailClient mailClient,
-            IDataSetValidator dataSetValidator, boolean notifySuccessfulRegistration,
+            IDataSetValidator dataSetValidator, IDataSourceQueryService dataSourceQueryService,
+            boolean notifySuccessfulRegistration,
             ThreadParameters threadParameters)
     {
         this(dssCode, shareId, storeRootDir, openBisService, mailClient, dataSetValidator,
+                dataSourceQueryService,
                 notifySuccessfulRegistration, threadParameters, threadParameters
                         .useIsFinishedMarkerFile(), threadParameters.deleteUnidentified(),
                 threadParameters.tryGetPreRegistrationScript(), threadParameters
@@ -89,10 +94,11 @@ public class TopLevelDataSetRegistratorGlobalState
 
     public TopLevelDataSetRegistratorGlobalState(String dssCode, String shareId, File storeRootDir,
             IEncapsulatedOpenBISService openBisService, IMailClient mailClient,
-            IDataSetValidator dataSetValidator, boolean notifySuccessfulRegistration,
-            ThreadParameters threadParameters, boolean useIsFinishedMarkerFile,
-            boolean deleteUnidentified, String preRegistrationScriptOrNull,
-            String postRegistrationScriptOrNull, String[] validationScriptsOrNull)
+            IDataSetValidator dataSetValidator, IDataSourceQueryService dataSourceQueryService,
+            boolean notifySuccessfulRegistration, ThreadParameters threadParameters,
+            boolean useIsFinishedMarkerFile, boolean deleteUnidentified,
+            String preRegistrationScriptOrNull, String postRegistrationScriptOrNull,
+            String[] validationScriptsOrNull)
     {
         this.dssCode = dssCode;
         this.shareId = shareId;
@@ -100,6 +106,7 @@ public class TopLevelDataSetRegistratorGlobalState
         this.openBisService = openBisService;
         this.mailClient = mailClient;
         this.dataSetValidator = dataSetValidator;
+        this.dataSourceQueryService = dataSourceQueryService;
         this.notifySuccessfulRegistration = notifySuccessfulRegistration;
         this.threadParameters = threadParameters;
         this.useIsFinishedMarkerFile = useIsFinishedMarkerFile;
@@ -139,6 +146,11 @@ public class TopLevelDataSetRegistratorGlobalState
         return dataSetValidator;
     }
 
+    public IDataSourceQueryService getDataSourceQueryService()
+    {
+        return dataSourceQueryService;
+    }
+
     public boolean isNotifySuccessfulRegistration()
     {
         return notifySuccessfulRegistration;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/DataSetTypeToRegistratorMapper.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/DataSetTypeToRegistratorMapper.java
index 2c94112d8d0..507c3fe06dc 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/DataSetTypeToRegistratorMapper.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/DataSetTypeToRegistratorMapper.java
@@ -155,15 +155,16 @@ class DataSetTypeToRegistratorMapper
             if (null == defaultThread)
             {
                 return ETLDaemon.createTopLevelDataSetRegistrator(params.getProperties(),
-                        firstThread, shareId, openBISService, mailClient, dataSetValidator, false,
+                        firstThread, shareId, openBISService, mailClient, dataSetValidator, null,
+                        false,
                         false, false, firstThread.tryGetPreRegistrationScript(),
                         firstThread.tryGetPostRegistrationScript(),
                         firstThread.tryGetValidationScripts(), PutDataSetServerPluginHolder.class);
             }
 
             return ETLDaemon.createTopLevelDataSetRegistrator(params.getProperties(),
-                    defaultThread, shareId, openBISService, mailClient, dataSetValidator, false,
-                    false, false, defaultThread.tryGetPreRegistrationScript(),
+                    defaultThread, shareId, openBISService, mailClient, dataSetValidator, null,
+                    false, false, false, defaultThread.tryGetPreRegistrationScript(),
                     defaultThread.tryGetPostRegistrationScript(),
                     defaultThread.tryGetValidationScripts(), PutDataSetServerPluginHolder.class);
         }
@@ -184,7 +185,7 @@ class DataSetTypeToRegistratorMapper
                 {
                     map.put(key.toUpperCase(), ETLDaemon.createTopLevelDataSetRegistrator(
                             params.getProperties(), threadParams, shareId, openBISService,
-                            mailClient, dataSetValidator, false));
+                            mailClient, dataSetValidator, null, false));
                 }
             }
             return map;
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java
index 5dee8f28cdf..c4f52b1bec5 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/DataSetRegistrationService.java
@@ -38,9 +38,7 @@ import ch.systemsx.cisd.etlserver.TopLevelDataSetRegistratorGlobalState;
 import ch.systemsx.cisd.etlserver.registrator.AbstractOmniscientTopLevelDataSetRegistrator.OmniscientTopLevelDataSetRegistratorState;
 import ch.systemsx.cisd.etlserver.registrator.IDataSetOnErrorActionDecision.ErrorType;
 import ch.systemsx.cisd.etlserver.registrator.api.v1.IDataSetRegistrationTransaction;
-import ch.systemsx.cisd.etlserver.registrator.api.v1.IDataSourceQueryService;
 import ch.systemsx.cisd.etlserver.registrator.api.v1.impl.DataSetRegistrationTransaction;
-import ch.systemsx.cisd.etlserver.registrator.api.v1.impl.DataSourceQueryService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 
 /**
@@ -70,8 +68,6 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
 
     private final ITopLevelDataSetRegistratorDelegate delegate;
 
-    private final IDataSourceQueryService queryService;
-
     static private final Logger operationLog = LogFactory.getLogger(LogCategory.OPERATION,
             DataSetRegistrationService.class);
 
@@ -116,8 +112,6 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
         }
 
         transactions = new ArrayList<DataSetRegistrationTransaction<T>>();
-
-        this.queryService = new DataSourceQueryService();
     }
 
     public OmniscientTopLevelDataSetRegistratorState getRegistratorContext()
@@ -192,11 +186,6 @@ public class DataSetRegistrationService<T extends DataSetInformation> implements
         return rollbacker.doRollback();
     }
 
-    public IDataSourceQueryService getDataSourceQueryService()
-    {
-        return queryService;
-    }
-
     public void didRollbackTransaction(DataSetRegistrationTransaction<T> transaction,
             DataSetStorageAlgorithmRunner<T> algorithm, Throwable ex, ErrorType errorType)
     {
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/IDataSetRegistrationService.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/IDataSetRegistrationService.java
index b27546de2ab..9bdbaea4d9f 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/IDataSetRegistrationService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/IDataSetRegistrationService.java
@@ -19,7 +19,6 @@ package ch.systemsx.cisd.etlserver.registrator;
 import java.io.File;
 
 import ch.systemsx.cisd.etlserver.registrator.api.v1.IDataSetRegistrationTransaction;
-import ch.systemsx.cisd.etlserver.registrator.api.v1.IDataSourceQueryService;
 
 /**
  * Functionality used in registering data sets.
@@ -54,9 +53,4 @@ public interface IDataSetRegistrationService
      */
     public File moveIncomingToError(String dataSetTypeCodeOrNull);
 
-    /**
-     * Return a service that can be used to query data sources.
-     */
-    public IDataSourceQueryService getDataSourceQueryService();
-
 }
\ No newline at end of file
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSourceQueryService.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSourceQueryService.java
index 20e563478ad..ecb01a806f8 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSourceQueryService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSourceQueryService.java
@@ -23,9 +23,9 @@ import javax.sql.DataSource;
 import net.lemnik.eodsql.DataSet;
 import net.lemnik.eodsql.QueryTool;
 
-import ch.systemsx.cisd.etlserver.registrator.api.v1.IDataSourceQueryService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.DataSourceProvider;
 import ch.systemsx.cisd.openbis.dss.generic.shared.ServiceProvider;
+import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.IDataSourceQueryService;
 
 /**
  * @author Chandrasekhar Ramakrishnan
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/IDataSourceQueryService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/internal/v1/IDataSourceQueryService.java
similarity index 97%
rename from datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/IDataSourceQueryService.java
rename to datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/internal/v1/IDataSourceQueryService.java
index 31e17726094..492bd6d7410 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/registrator/api/v1/IDataSourceQueryService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/api/internal/v1/IDataSourceQueryService.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package ch.systemsx.cisd.etlserver.registrator.api.v1;
+package ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1;
 
 import java.util.Map;
 
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java
index 3f1f8aff8bb..bcfa123f2a5 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/TransferredDataSetHandlerTest.java
@@ -286,7 +286,7 @@ public final class TransferredDataSetHandlerTest extends AbstractFileSystemTestC
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState("dss", ch.systemsx.cisd.openbis.dss.generic.shared.Constants.DEFAULT_SHARE_ID,
                         workingDirectory, authorizedLimsService, mailClient, dataSetValidator,
-                        true, threadParameters);
+                        null, true, threadParameters);
 
         context.checking(new Expectations()
             {
@@ -803,7 +803,7 @@ public final class TransferredDataSetHandlerTest extends AbstractFileSystemTestC
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState("dss", ch.systemsx.cisd.openbis.dss.generic.shared.Constants.DEFAULT_SHARE_ID,
                         workingDirectory, authorizedLimsService, mailClient, dataSetValidator,
-                        true, threadParameters);
+                        null, true, threadParameters);
         context.checking(new Expectations()
             {
                 {
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java
index f91df095fc3..926c0f0ffd7 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/AbstractJythonDataSetHandlerTest.java
@@ -40,15 +40,14 @@ import ch.systemsx.cisd.common.mail.IMailClient;
 import ch.systemsx.cisd.common.utilities.ExtendedProperties;
 import ch.systemsx.cisd.common.utilities.IDelegatedActionWithResult;
 import ch.systemsx.cisd.etlserver.IStorageProcessorTransactional;
-import ch.systemsx.cisd.etlserver.ITopLevelDataSetRegistratorDelegate;
 import ch.systemsx.cisd.etlserver.ITypeExtractor;
 import ch.systemsx.cisd.etlserver.ThreadParameters;
 import ch.systemsx.cisd.etlserver.TopLevelDataSetRegistratorGlobalState;
 import ch.systemsx.cisd.etlserver.registrator.JythonTopLevelDataSetHandler.JythonDataSetRegistrationService;
-import ch.systemsx.cisd.etlserver.registrator.api.v1.IDataSourceQueryService;
 import ch.systemsx.cisd.etlserver.registrator.api.v1.impl.DataSetRegistrationTransaction;
 import ch.systemsx.cisd.etlserver.validation.IDataSetValidator;
 import ch.systemsx.cisd.openbis.dss.generic.shared.IEncapsulatedOpenBISService;
+import ch.systemsx.cisd.openbis.dss.generic.shared.api.internal.v1.IDataSourceQueryService;
 import ch.systemsx.cisd.openbis.dss.generic.shared.dto.AtomicEntityOperationDetails;
 import ch.systemsx.cisd.openbis.dss.generic.shared.dto.DataSetInformation;
 import ch.systemsx.cisd.openbis.generic.shared.basic.dto.DatabaseInstance;
@@ -81,6 +80,8 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
 
     protected IDataSetValidator dataSetValidator;
 
+    protected IDataSourceQueryService dataSourceQueryService;
+
     protected File stagingDirectory;
 
     protected File incomingDataSetFile;
@@ -113,6 +114,7 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
         openBisService = context.mock(IEncapsulatedOpenBISService.class);
         dataSetValidator = context.mock(IDataSetValidator.class);
         mailClient = context.mock(IMailClient.class);
+        dataSourceQueryService = context.mock(IDataSourceQueryService.class);
 
         stagingDirectory = new File(workingDirectory, "staging");
     }
@@ -165,18 +167,12 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
 
     protected void createHandler(Properties threadProperties, final boolean registrationShouldFail,
             boolean shouldReThrowException)
-    {
-        createHandler(threadProperties, registrationShouldFail, shouldReThrowException, null);
-    }
-
-    protected void createHandler(Properties threadProperties, final boolean registrationShouldFail,
-            boolean shouldReThrowException, IDataSourceQueryService queryServiceOrNull)
     {
         TopLevelDataSetRegistratorGlobalState globalState = createGlobalState(threadProperties);
 
         handler =
                 new TestingDataSetHandler(globalState, registrationShouldFail,
-                        shouldReThrowException, queryServiceOrNull);
+                        shouldReThrowException);
     }
 
     private TopLevelDataSetRegistratorGlobalState createGlobalState(Properties threadProperties)
@@ -187,8 +183,8 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState("dss",
                         ch.systemsx.cisd.openbis.dss.generic.shared.Constants.DEFAULT_SHARE_ID,
-                        workingDirectory, openBisService, mailClient, dataSetValidator, true,
-                        threadParameters);
+                        workingDirectory, openBisService, mailClient, dataSetValidator,
+                        dataSourceQueryService, true, threadParameters);
         return globalState;
     }
 
@@ -299,18 +295,14 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
     {
         private final boolean shouldRegistrationFail;
 
-        private final IDataSourceQueryService queryServiceOrNull;
-
         private final boolean shouldReThrowRollbackException;
 
         public TestingDataSetHandler(TopLevelDataSetRegistratorGlobalState globalState,
-                boolean shouldRegistrationFail, boolean shouldReThrowRollbackException,
-                IDataSourceQueryService queryServiceOrNull)
+                boolean shouldRegistrationFail, boolean shouldReThrowRollbackException)
         {
             super(globalState);
             this.shouldRegistrationFail = shouldRegistrationFail;
             this.shouldReThrowRollbackException = shouldReThrowRollbackException;
-            this.queryServiceOrNull = queryServiceOrNull;
         }
 
         @Override
@@ -357,19 +349,6 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
             }
         }
 
-        @Override
-        protected JythonDataSetRegistrationService<DataSetInformation> createJythonDataSetRegistrationService(
-                File aDataSetFile, DataSetInformation userProvidedDataSetInformationOrNull,
-                IDelegatedActionWithResult<Boolean> cleanAfterwardsAction,
-                ITopLevelDataSetRegistratorDelegate delegate, PythonInterpreter interpreter)
-        {
-            JythonDataSetRegistrationService<DataSetInformation> service =
-                    new TestDataRegistrationService(this, aDataSetFile,
-                            userProvidedDataSetInformationOrNull, cleanAfterwardsAction,
-                            interpreter, queryServiceOrNull, shouldRegistrationFail);
-            return service;
-        }
-
     }
 
     protected static class TestDataRegistrationService extends
@@ -377,8 +356,6 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
     {
         private final boolean shouldRegistrationFail;
 
-        private final IDataSourceQueryService queryServiceOrNull;
-
         /**
          * @param registrator
          * @param globalCleanAfterwardsAction
@@ -388,14 +365,12 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
                 JythonTopLevelDataSetHandler<DataSetInformation> registrator, File aDataSetFile,
                 DataSetInformation userProvidedDataSetInformationOrNull,
                 IDelegatedActionWithResult<Boolean> globalCleanAfterwardsAction,
-                PythonInterpreter interpreter, IDataSourceQueryService queryServiceOrNull,
-                boolean shouldRegistrationFail)
+                PythonInterpreter interpreter, boolean shouldRegistrationFail)
         {
             super(registrator, aDataSetFile, userProvidedDataSetInformationOrNull,
                     globalCleanAfterwardsAction,
                     new AbstractOmniscientTopLevelDataSetRegistrator.NoOpDelegate(), interpreter);
             this.shouldRegistrationFail = shouldRegistrationFail;
-            this.queryServiceOrNull = queryServiceOrNull;
         }
 
         @Override
@@ -404,18 +379,6 @@ public abstract class AbstractJythonDataSetHandlerTest extends AbstractFileSyste
             return new TestEntityOperationService(getRegistrator(), shouldRegistrationFail);
         }
 
-        @Override
-        public IDataSourceQueryService getDataSourceQueryService()
-        {
-            if (queryServiceOrNull == null)
-            {
-                return super.getDataSourceQueryService();
-            } else
-            {
-                return queryServiceOrNull;
-            }
-        }
-
     }
 
     protected static class TestEntityOperationService extends
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/DataSetStorageRollbackerTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/DataSetStorageRollbackerTest.java
index dc6ec7ab4a9..095fe884dcd 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/DataSetStorageRollbackerTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/DataSetStorageRollbackerTest.java
@@ -111,7 +111,7 @@ public class DataSetStorageRollbackerTest extends AbstractFileSystemTestCase
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState("dss",
                         ch.systemsx.cisd.openbis.dss.generic.shared.Constants.DEFAULT_SHARE_ID,
-                        workingDirectory, openBisService, mailClient, dataSetValidator, true,
+                        workingDirectory, openBisService, mailClient, dataSetValidator, null, true,
                         threadParameters);
         return globalState;
     }
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java
index 20a57a9c641..9b6bd4919c1 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/JythonTopLevelDataSetRegistratorTest.java
@@ -930,7 +930,7 @@ public class JythonTopLevelDataSetRegistratorTest extends AbstractFileSystemTest
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState("dss",
                         ch.systemsx.cisd.openbis.dss.generic.shared.Constants.DEFAULT_SHARE_ID,
-                        workingDirectory, openBisService, mailClient, dataSetValidator, true,
+                        workingDirectory, openBisService, mailClient, dataSetValidator, null, true,
                         threadParameters);
         return globalState;
     }
diff --git a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSetRegistrationTransactionTest.java b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSetRegistrationTransactionTest.java
index c9176d967fa..ed641945656 100644
--- a/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSetRegistrationTransactionTest.java
+++ b/datastore_server/sourceTest/java/ch/systemsx/cisd/etlserver/registrator/api/v1/impl/DataSetRegistrationTransactionTest.java
@@ -420,7 +420,7 @@ public class DataSetRegistrationTransactionTest extends AbstractFileSystemTestCa
         TopLevelDataSetRegistratorGlobalState globalState =
                 new TopLevelDataSetRegistratorGlobalState("dss",
                         ch.systemsx.cisd.openbis.dss.generic.shared.Constants.DEFAULT_SHARE_ID,
-                        workingDirectory, openBisService, mailClient, dataSetValidator, true,
+                        workingDirectory, openBisService, mailClient, dataSetValidator, null, true,
                         threadParameters);
         return globalState;
     }
-- 
GitLab