in footmark/connection.py [0:0]
def parse_response(self, markers, body, connection):
results = []
body = yaml.safe_load(body)
if not markers:
markers = ["", ResultSet]
result_set = ResultSet
# For get_object
if not markers[0] and markers[1] is not ResultSet:
result_set = markers[1](connection)
for key, value in list(body.items()):
self.parse_value(value)
setattr(result_set, self.convert_name(key), value)
if markers[0] and markers[0] in body:
for value in list(getattr(result_set, self.convert_name(markers[0])).values()):
if isinstance(value, list):
for sub_value in value:
element = markers[1](connection)
for k, v in list(sub_value.items()):
setattr(element, k, v)
results.append(element)
elif isinstance(value, dict):
element = markers[1](connection)
for k, v in list(value.items()):
setattr(element, k, v)
results.append(element)
else:
element = markers[1](connection)
setattr(element, k, v)
results.append(element)
return results
return result_set