parse a XML message into a SOAP envelope object
(dom)
| 45 | |
| 46 | |
| 47 | def parseProbeMessage(dom): |
| 48 | "parse a XML message into a SOAP envelope object" |
| 49 | |
| 50 | env = SoapEnvelope() |
| 51 | env.setAction(NS_ACTION_PROBE) |
| 52 | env.setMessageId(dom.getElementsByTagNameNS(NS_ADDRESSING, "MessageID")[0].firstChild.data.strip()) |
| 53 | |
| 54 | replyToNodes = dom.getElementsByTagNameNS(NS_ADDRESSING, "ReplyTo") |
| 55 | if len(replyToNodes) > 0 and \ |
| 56 | isinstance(replyToNodes[0].firstChild, minidom.Text): |
| 57 | env.setReplyTo(replyToNodes[0].firstChild.data.strip()) |
| 58 | |
| 59 | env.setTo(dom.getElementsByTagNameNS(NS_ADDRESSING, "To")[0].firstChild.data.strip()) |
| 60 | |
| 61 | typeNodes = dom.getElementsByTagNameNS(NS_DISCOVERY, "Types") |
| 62 | if len(typeNodes) > 0: |
| 63 | env.getTypes().extend(getTypes(typeNodes[0])) |
| 64 | |
| 65 | scopeNodes = dom.getElementsByTagNameNS(NS_DISCOVERY, "Scopes") |
| 66 | if len(scopeNodes) > 0: |
| 67 | env.getScopes().extend(getScopes(scopeNodes[0])) |
| 68 | |
| 69 | return env |
| 70 | |
| 71 | |
| 72 |
no test coverage detected