def deserialize(cls, json_): """ append correct schema for wind object """ schema = cls._schema() if 'wind' in json_: schema.add(environment.WindSchema()) _to_dict = schema.deserialize(json_) return _to_dict
def serialize(self, json_='webapi'): """ Since 'wind' property is saved as a reference when used in save file and 'save' option, need to add appropriate node to WindMover schema """ dict_ = self.to_serialize(json_) schema = self.__class__._schema() if json_ == 'webapi' and 'wind' in dict_: schema.add(environment.WindSchema(name='wind')) return schema.serialize(dict_)
def deserialize(cls, json_): """ append correct schema for wind object """ schema = cls._schema() if 'wind' in json_: # for 'webapi', there will be nested Wind structure # for 'save' option, there should be no nested 'wind'. It is # removed, loaded and added back after deserialization schema.add(environment.WindSchema()) _to_dict = schema.deserialize(json_) return _to_dict