示例#1
0
 def to_dict_with_indexes(self):
     """Retrieve a dict version of the value
     """
     res = JNTValue.to_dict(self)
     #~ print "self.instances[0] %s"%self.instances[0]
     #~ print "---------------------------------------------------------- self.get_max_index() ", self.get_max_index()
     #~ print "---------------------------------------------------------- self.instances ", self.instances
     if self.get_max_index() == -1 or 'config' not in self.instances[0]:
         return res
     if self.get_max_index() == -1 or self.instances[0]['config'] == None:
         return {}
     ret = {}
     try:
         configs = self.get_index_configs()
         #~ print "self.get_index_configs() %s"%configs
         i = 0
         #~ print i, res['label']
         #~ print i, '%s'%self.instances
         #~ print i, '%s'%self.instances[i]
         while i <= self.get_max_index():
             #~ print "---------------------------------------------------------- i ", i
             #~ print i, res['label'], configs[i]
             ret[i] = self.to_dict_with_index(i, res)
             i += 1
     except:
         logger.exception('Exception in to_dict_with_indexes')
     #~ print "---------------------------------------------------------- ret ", ret
     return ret
示例#2
0
 def to_dict_with_index(self, index, initial=None):
     """Retrieve a json version of the value
     """
     if initial is None:
         initial = JNTValue.to_dict(self)
     configs = self.get_index_configs()
     res = {}
     res.update(initial)
     #~ print "len(configs)", len(configs)
     if len(configs) == 0:
         return res
     res['index'] = index
     res['label'] = "%s (%s)" % (res['label'], configs[index])
     if index in self.instances and 'data' in self.instances[index]:
         res['data'] = self.instances[index]['data']
     elif self._get_data_cb is not None:
         res['data'] = self._get_data_cb(self.node_uuid, index)
     else:
         res['data'] = self.default
     #~ print "---------------------------------------------------------- res ", res
     return res