envelope method

XmlDocument envelope(
  1. XmlDocumentFragment? header,
  2. XmlDocumentFragment body
)

XML for the SOAP envelope

Implementation

XmlDocument envelope(XmlDocumentFragment? header, XmlDocumentFragment body) {
  builder.declaration(encoding: 'UTF-8');

  builder.element('Envelope',
      namespace: Xmlns.s,
      namespaces: {Xmlns.s: 's', 'http://www.w3.org/2005/08/addressing': 'a'},
      nest: () {
    builder.element('Header', namespace: Xmlns.s, nest: header);

    builder.element('Body',
        namespace: Xmlns.s,
        namespaces: {
          'http://www.w3.org/2001/XMLSchema-instance': 'xsi',
          Xmlns.xsd: 'xsd'
        },
        nest: body);
  });

  return builder.buildDocument();
}