diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/DataStoreService.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/DataStoreService.java
index 2129a1278d9c6cff10b3053a60c6008accd2f1f9..3f6150ce92cdec154c75cfb44843903763fd6122 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/DataStoreService.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/DataStoreService.java
@@ -25,7 +25,7 @@ import org.apache.commons.lang.StringUtils;
 import org.springframework.beans.factory.InitializingBean;
 
 import ch.systemsx.cisd.base.exceptions.IOExceptionUnchecked;
-import ch.systemsx.cisd.cifex.rpc.ICIFEXRPCService;
+import ch.systemsx.cisd.cifex.rpc.client.ICIFEXComponent;
 import ch.systemsx.cisd.common.exceptions.InvalidAuthenticationException;
 import ch.systemsx.cisd.common.exceptions.InvalidSessionException;
 import ch.systemsx.cisd.common.spring.AbstractServiceWithLogger;
@@ -176,10 +176,10 @@ public class DataStoreService extends AbstractServiceWithLogger<IDataStoreServic
 
         ICIFEXRPCServiceFactory serviceFactory =
                 createCIFEXRPCServiceFactory(context.getCifexURL());
-        ICIFEXRPCService service = serviceFactory.createService();
+        ICIFEXComponent cifex = serviceFactory.createCIFEXComponent();
         String userID = context.getUserID();
         String password = context.getPassword();
-        if (service.login(userID, password) == null)
+        if (cifex.login(userID, password) == null)
         {
             throw new InvalidSessionException("User couldn't be authenticated at CIFEX.");
         }
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ICIFEXRPCServiceFactory.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ICIFEXRPCServiceFactory.java
index 4414a198317223fc91dc2e847aa17811fe160d77..65c310c054b8bb9f5cd898fae3dcab23a99fbd28 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ICIFEXRPCServiceFactory.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/ICIFEXRPCServiceFactory.java
@@ -18,14 +18,14 @@ package ch.systemsx.cisd.openbis.dss.generic.server;
 
 import java.io.Serializable;
 
-import ch.systemsx.cisd.cifex.rpc.ICIFEXRPCService;
+import ch.systemsx.cisd.cifex.rpc.client.ICIFEXComponent;
 
 /**
- * 
+ * Factory for {@link ICIFEXComponent}.
  *
  * @author Franz-Josef Elmer
  */
 public interface ICIFEXRPCServiceFactory extends Serializable
 {
-    public ICIFEXRPCService createService();
+    public ICIFEXComponent createCIFEXComponent();
 }
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/UploadingCommand.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/UploadingCommand.java
index 29af549f840cebc2eb0b8169d08a40f760cca5db..1375fbe8c0f22d2ad5787fcea43cac6db9107ca8 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/UploadingCommand.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/UploadingCommand.java
@@ -37,8 +37,8 @@ import org.apache.commons.lang.StringUtils;
 import org.apache.log4j.Logger;
 
 import ch.rinn.restrictions.Private;
-import ch.systemsx.cisd.cifex.rpc.ICIFEXRPCService;
-import ch.systemsx.cisd.cifex.rpc.client.Uploader;
+import ch.systemsx.cisd.cifex.rpc.client.ICIFEXComponent;
+import ch.systemsx.cisd.cifex.rpc.client.ICIFEXUploader;
 import ch.systemsx.cisd.cifex.rpc.client.gui.IProgressListener;
 import ch.systemsx.cisd.cifex.shared.basic.Constants;
 import ch.systemsx.cisd.common.logging.LogCategory;
@@ -297,9 +297,9 @@ class UploadingCommand implements IDataSetCommand
                 operationLog.info("Zip file " + zipFile + " with " + dataSets.size()
                         + " data sets has been successfully created.");
             }
-            ICIFEXRPCService cifexService = cifexServiceFactory.createService();
-            String sessionToken = cifexService.login(userID, password);
-            Uploader uploader = new Uploader(cifexService, sessionToken);
+            ICIFEXComponent cifex = cifexServiceFactory.createCIFEXComponent();
+            String sessionToken = cifex.login(userID, password);
+            ICIFEXUploader uploader = cifex.createUploader(sessionToken);
             uploader.addProgressListener(new ProgressListener(zipFile));
             uploader.upload(Arrays.asList(zipFile), Constants.USER_ID_PREFIX + userID, comment);
         } else