From b6c3ecd1b81b3a93613efeb10949018042cda13d Mon Sep 17 00:00:00 2001
From: juanf <juanf>
Date: Tue, 17 Jun 2014 13:38:12 +0000
Subject: [PATCH] SSDM-387: Improve metadata captured in archiving operation.
 Add Container parents.

SVN: 31729
---
 .../dss/generic/server/MetaDataBuilder.java      | 16 ++++++++++++++++
 1 file changed, 16 insertions(+)

diff --git a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MetaDataBuilder.java b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MetaDataBuilder.java
index 38d21c37793..9298c2a7348 100644
--- a/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MetaDataBuilder.java
+++ b/datastore_server/source/java/ch/systemsx/cisd/openbis/dss/generic/server/MetaDataBuilder.java
@@ -145,6 +145,22 @@ public class MetaDataBuilder
                 
                 builder.containerProperties(i, null, container.getProperties());
                 
+                StringBuilder containerStringBuilder = new StringBuilder();
+                List<AbstractExternalData> containerParents = getParents(container);
+                if (containerParents.isEmpty() == false)
+                {
+                    Collections.sort(containerParents, DATA_SET_COMPARATOR);
+                    for (AbstractExternalData containerParent : containerParents)
+                    {
+                        if (containerStringBuilder.length() > 0)
+                        {
+                            containerStringBuilder.append(',');
+                        }
+                        containerStringBuilder.append(containerParent.getCode());
+                    }
+                }
+                builder.container(i, null, "parent_codes", containerStringBuilder.toString());
+                
                 //Container Experiment
                 builder.container(i, EXPERIMENT , "code", container.getExperiment().getCode());
                 builder.container(i, EXPERIMENT , "permId", container.getExperiment().getPermId());
-- 
GitLab