ListPartsOutput.fromXml constructor

ListPartsOutput.fromXml(
  1. XmlElement xml
)

Implementation

ListPartsOutput.fromXml(XmlElement xml) {
  // Both element names were wrong upstream: the server sends `IsTruncated`
  // and the parts live in `Part` elements, not in `Upload` elements. The
  // effect was that `listParts` always reported a single, empty page.
  isTruncated = getProp(xml, 'IsTruncated')?.text.toUpperCase() == 'TRUE';
  nextPartNumberMarker =
      int.tryParse(getProp(xml, 'NextPartNumberMarker')?.text ?? '') ?? 0;
  parts = xml.findElements('Part').map((e) => Part.fromXml(e)).toList();
}