From 152cd3a268b0f1231ee42a752db11334da478b28 Mon Sep 17 00:00:00 2001
From: felmer <felmer>
Date: Mon, 20 Sep 2010 12:44:35 +0000
Subject: [PATCH] LMS-1593 add user ID to DataSetInformation as registrator

SVN: 17914
---
 .../cisd/etlserver/DataSetRegistrationAlgorithm.java |  1 +
 .../cisd/etlserver/api/v1/PutDataSetExecutor.java    |  6 +-----
 .../dss/generic/shared/dto/DataSetInformation.java   | 12 ++++++++++++
 3 files changed, 14 insertions(+), 5 deletions(-)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetRegistrationAlgorithm.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetRegistrationAlgorithm.java
index 019b0446851..bf3e04e0906 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetRegistrationAlgorithm.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/DataSetRegistrationAlgorithm.java
@@ -432,6 +432,7 @@ public abstract class DataSetRegistrationAlgorithm
     private NewExternalData createExternalData()
     {
         final NewExternalData data = new NewExternalData();
+        data.setUserId(dataSetInformation.getUploadingUserIdOrNull());
         data.setUserEMail(dataSetInformation.tryGetUploadingUserEmail());
         data.setExtractableData(dataSetInformation.getExtractableData());
         data.setLocatorType(getTypeExtractor().getLocatorType(incomingDataSetFile));
diff --git a/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetExecutor.java b/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetExecutor.java
index f3d48df68bd..70d893d6643 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetExecutor.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/etlserver/api/v1/PutDataSetExecutor.java
@@ -607,11 +607,7 @@ class PutDataSetExecutor implements IDataSetHandlerRpc
 
             final SessionContextDTO session =
                     service.getOpenBisService().tryGetSession(sessionToken);
-            dataSetInfo.setUploadingUserEmail(session.getUserEmail());
-
-            // TODO 2010-06-10, CR, LMS-1564: When registering, set the registrator to the session
-            // owner; only an admin on
-            // the space or an ETL server can override.
+            dataSetInfo.setUploadingUserId(session.getUserName());
             return dataSetInfo;
         }
     }
diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java
index 4cc519bd780..9aa6790a67c 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/shared/dto/DataSetInformation.java
@@ -88,6 +88,8 @@ public class DataSetInformation implements Serializable
      * Email of uploading user.
      */
     private String uploadingUserEmailOrNull;
+    
+    private String uploadingUserIdOrNull;
 
     /** This constructor is for serialization. */
     public DataSetInformation()
@@ -104,6 +106,16 @@ public class DataSetInformation implements Serializable
         this.uploadingUserEmailOrNull = uploadingUserEmail;
     }
 
+    public void setUploadingUserId(String uploadingUserIdOrNull)
+    {
+        this.uploadingUserIdOrNull = uploadingUserIdOrNull;
+    }
+
+    public String getUploadingUserIdOrNull()
+    {
+        return uploadingUserIdOrNull;
+    }
+
     public final BooleanOrUnknown getIsCompleteFlag()
     {
         return isCompleteFlag;
-- 
GitLab