in mns/mns_xml_handler.py [0:0]
def decode(xml_data, with_meta, req_id=None):
queueurl_list = []
queuemeta_list = []
next_marker = u""
if (xml_data != ""):
try:
root = ElementTree.fromstring(xml_data)
namespace = root.tag[0:-6]
queues = list(root.iter(namespace + "Queue"))
for queue in queues:
queuemeta = {}
for node in queue:
nodename = node.tag[len(namespace):]
nodevalue = node.text.strip()
if nodename == "QueueURL" and len(nodevalue) > 0 :
queueurl_list.append(nodevalue)
if len(nodevalue) > 0:
queuemeta[nodename] = nodevalue
if with_meta:
queuemeta_list.append(queuemeta)
marker = list(root.iter(namespace + "NextMarker"))
for node in marker:
next_marker = node.text.strip()
except Exception as err:
raise MNSClientNetworkException("RespDataDamaged", xml_data, req_id)
else:
raise MNSClientNetworkException("RespDataDamaged", "Xml data is \"\"!", req_id)
return queueurl_list, str(next_marker), queuemeta_list