From 3ae1fb7b4f5134b446b6e0d27309d1c3148f4e39 Mon Sep 17 00:00:00 2001
From: gpawel <gpawel>
Date: Mon, 8 Oct 2012 11:56:27 +0000
Subject: [PATCH] bugfix: NPE when retrieving properties over JSON

SVN: 27080
---
 .../cisd/openbis/generic/shared/api/v1/dto/DataSet.java        | 3 ++-
 .../cisd/openbis/generic/shared/api/v1/dto/Experiment.java     | 3 ++-
 .../cisd/openbis/generic/shared/api/v1/dto/Sample.java         | 3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java
index e07404a624d..d591588580d 100644
--- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java
+++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/DataSet.java
@@ -327,6 +327,8 @@ public final class DataSet implements Serializable, IIdHolder
         InitializingChecks.checkValidString(initializer.getCode(), "Unspecified code.");
         this.code = initializer.getCode();
 
+        this.retrievedConnections = initializer.getRetrievedConnections();
+
         if (initializer.isStub)
         {
             this.isStub = true;
@@ -342,7 +344,6 @@ public final class DataSet implements Serializable, IIdHolder
 
             this.properties = initializer.getProperties();
 
-            this.retrievedConnections = initializer.getRetrievedConnections();
             this.parentCodes = initializer.getParentCodes();
             this.childrenCodes = initializer.getChildrenCodes();
 
diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Experiment.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Experiment.java
index bf42529f986..6d2f343eab4 100644
--- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Experiment.java
+++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Experiment.java
@@ -193,8 +193,9 @@ public final class Experiment implements Serializable, IIdentifierHolder, IIdHol
                     "Unspecified entity registration details.");
             this.registrationDetails = initializer.getRegistrationDetails();
 
-            this.properties = initializer.getProperties();
         }
+
+        this.properties = initializer.getProperties();
     }
 
     /**
diff --git a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Sample.java b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Sample.java
index e68916d8225..adb2f442f3a 100644
--- a/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Sample.java
+++ b/openbis_api/source/java/ch/systemsx/cisd/openbis/generic/shared/api/v1/dto/Sample.java
@@ -312,6 +312,8 @@ public final class Sample implements Serializable, IIdentifierHolder, IIdHolder
         InitializingChecks.checkValidString(initializer.getPermId(), "Unspecified permanent id.");
         this.permId = initializer.getPermId();
 
+        this.retrievedFetchOptions = initializer.getRetrievedFetchOptions();
+
         if (initializer.isStub)
         {
             this.isStub = true;
@@ -340,7 +342,6 @@ public final class Sample implements Serializable, IIdentifierHolder, IIdHolder
                     "Unspecified entity registration details.");
             this.registrationDetails = initializer.getRegistrationDetails();
 
-            this.retrievedFetchOptions = initializer.getRetrievedFetchOptions();
             if (initializer.parentReferences != null)
             {
                 this.parentReferences = initializer.parentReferences;
-- 
GitLab