From 6a5a4efa89ae1dbec9d01fb4e9effdabb93102a3 Mon Sep 17 00:00:00 2001
From: tpylak <tpylak>
Date: Wed, 19 Nov 2008 13:37:38 +0000
Subject: [PATCH] change set to list for attachments - bean conversion does not
 work with sets (to make the connection between exp. and attachment
 bidirectional attachment.setParent(...) adds attachment to the
 experiment.attachments set. The add operation calls equals method for
 unconstructed object and it causes an exception)

SVN: 9043
---
 .../cisd/openbis/generic/shared/dto/ExperimentPE.java     | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExperimentPE.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExperimentPE.java
index 195750604fe..ddd4c9434ad 100644
--- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExperimentPE.java
+++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/dto/ExperimentPE.java
@@ -108,7 +108,7 @@ public class ExperimentPE implements IEntityPropertiesHolder<ExperimentPropertyP
 
     private DataStorePE dataStore;
 
-    private Set<AttachmentPE> attachments = new HashSet<AttachmentPE>();
+    private List<AttachmentPE> attachments = new ArrayList<AttachmentPE>();
 
     private List<ProcedurePE> procedures = new ArrayList<ProcedurePE>();
 
@@ -286,7 +286,7 @@ public class ExperimentPE implements IEntityPropertiesHolder<ExperimentPropertyP
     @IndexedEmbedded
     @Private
     // for Hibernate and bean conversion only
-    public Set<AttachmentPE> getExperimentAttachments()
+    public List<AttachmentPE> getExperimentAttachments()
     {
         return attachments;
     }
@@ -294,7 +294,7 @@ public class ExperimentPE implements IEntityPropertiesHolder<ExperimentPropertyP
     @SuppressWarnings("unused")
     @Private
     // for Hibernate and bean conversion only
-    public void setExperimentAttachments(final Set<AttachmentPE> attachments)
+    public void setExperimentAttachments(final List<AttachmentPE> attachments)
     {
         this.attachments = attachments;
     }
@@ -339,7 +339,7 @@ public class ExperimentPE implements IEntityPropertiesHolder<ExperimentPropertyP
         if (getExperimentAttachments().size() == 0
                 && getExperimentAttachments() instanceof HashSet == false)
         {
-            setExperimentAttachments(new HashSet<AttachmentPE>());
+            setExperimentAttachments(new ArrayList<AttachmentPE>());
         }
         getExperimentAttachments().add(child);
     }
-- 
GitLab