Example #1
0
    def updateEvent(self, event, data):
        if Utils.getType(data) == 'builtins':
            if Utils.getType(event) == 'builtins':
                event = data
            else:
                #Es una asignacion incorrecta ya que intentamos meter un builtin en un objeto, no tocamos el evento
                pass
            return event
        else:
            if Utils.getType(event) == 'builtins':
                event = data
                return event
            elif Utils.getType(event) == 'dict':
                for key, value in data.items():
                    if key in event:
                        event[key] = self.updateEvent(event[key], value)
                    else:
                        event[key] = None
                        event[key] = self.updateEvent(event[key], value)

                    return event
            elif Utils.getType(event) == 'custom':
                for key, value in data.items():
                    if hasattr(event, key):
                        attr = getattr(event, key)
                        attr_value = self.updateEvent(attr, value)
                        setattr(event, key, attr_value)
                    else:
                        #Es una asignacion incorrecta ya que intentamos meter un valor en un atributo inexistente en el objeto, no tocamos el evento
                        pass
                    return event
            else:
                return event
Example #2
0
 def to_internal_value(self, data):
        data_type=Utils.getType(data)
        if (data_type=='builtins'):
               return data
        elif (data_type=='custom'):       
               return self.getValueObject(data)
        else:       
               output={}
               for item in data:
                      obj=data[item]
                      output[item]=self.getValueObject(obj)
               return output