From 9b177c3a76a3d584c11cff37f074e3a6e836422c Mon Sep 17 00:00:00 2001
From: juanf <juanf@bsse-bs-dock-dhcp-358.ethz.ch>
Date: Tue, 25 Sep 2018 12:51:30 +0200
Subject: [PATCH] SSDM-7235 : Continuous samples code, project samples support

---
 .../parser/SampleUploadSectionsParser.java    | 19 +++++++++++++++----
 1 file changed, 15 insertions(+), 4 deletions(-)

diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/parser/SampleUploadSectionsParser.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/parser/SampleUploadSectionsParser.java
index 45319af47c0..6d1aa623d4e 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/parser/SampleUploadSectionsParser.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/parser/SampleUploadSectionsParser.java
@@ -25,8 +25,6 @@ import java.util.Map;
 
 import org.apache.commons.lang.StringUtils;
 
-import ch.ethz.sis.openbis.generic.asapi.v3.dto.project.id.ProjectIdentifier;
-import ch.ethz.sis.openbis.generic.asapi.v3.dto.sample.id.SampleIdentifier;
 import ch.systemsx.cisd.common.io.DelegatedReader;
 import ch.systemsx.cisd.common.parser.ExcelFileLoader;
 import ch.systemsx.cisd.common.parser.IParserObjectFactory;
@@ -363,11 +361,24 @@ public class SampleUploadSectionsParser
             			String[] experimentIdentifierParts = newSamples.get(i).getExperimentIdentifier().split("/");
             			projectCodeOrNull = experimentIdentifierParts[experimentIdentifierParts.length - 2];
             		}
-            		SampleIdentifier identifier = new SampleIdentifier(spaceCodeOrNull, projectCodeOrNull, null, codes.get(i));
-            		newSamples.get(i).setIdentifier(identifier.getIdentifier());
+            		newSamples.get(i).setIdentifier(createIdentifier(spaceCodeOrNull, projectCodeOrNull, codes.get(i)));
             }
         }
     }
+    
+    private static String createIdentifier(String spaceCodeOrNull, String projectCodeOrNull, String sampleCode)
+    {
+        StringBuilder builder = new StringBuilder("/");
+        if (spaceCodeOrNull != null)
+        {
+            builder.append(spaceCodeOrNull).append("/");
+        }
+        if (projectCodeOrNull != null)
+        {
+            builder.append(projectCodeOrNull).append("/");
+        }
+        return builder.append(sampleCode).toString();
+    }
 
     private static void fillIdentifiers(String defaultGroupIdentifier,
             List<NewSamplesWithTypes> newSamplesWithTypes)
-- 
GitLab