From 6f43da54d751db3a7c658adc567a4d005f4ae493 Mon Sep 17 00:00:00 2001
From: vermeul <swen@ethz.ch>
Date: Wed, 14 Aug 2019 16:38:14 +0200
Subject: [PATCH] do not rely that type.data.["propertyAssignments"] contains
 an array

---
 pybis/src/python/pybis/property.py | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/pybis/src/python/pybis/property.py b/pybis/src/python/pybis/property.py
index 6b69322364f..9dd9bf6c31f 100644
--- a/pybis/src/python/pybis/property.py
+++ b/pybis/src/python/pybis/property.py
@@ -9,11 +9,13 @@ class PropertyHolder():
         self.__dict__['_property_names'] = {}
         if type is not None:
             self.__dict__['_type'] = type
-            for prop in type.data['propertyAssignments']:
-                property_name = prop['propertyType']['code'].lower()
-                self._property_names[property_name]=prop['propertyType']
-                self._property_names[property_name]['mandatory'] = prop['mandatory']
-                self._property_names[property_name]['showInEditView'] = prop['showInEditView']
+            if 'propertyAssignments' in type.data \
+               and type.data['propertyAssignments'] is not None:
+                for prop in type.data['propertyAssignments']:
+                    property_name = prop['propertyType']['code'].lower()
+                    self._property_names[property_name]=prop['propertyType']
+                    self._property_names[property_name]['mandatory'] = prop['mandatory']
+                    self._property_names[property_name]['showInEditView'] = prop['showInEditView']
 
     def _get_terms(self, vocabulary):
         return self._openbis.get_terms(vocabulary)
-- 
GitLab