188 const SOAP_12_NS =
"http://schemas.xmlsoap.org/wsdl/soap12/";
191 const XSD_NS =
"http://www.w3.org/2001/XMLSchema";
193 const XSI_NS =
"http://www.w3.org/2001/XMLSchema-instance";
196 const HTTP_NS =
"http://schemas.xmlsoap.org/wsdl/http/";
198 const MIME_NS =
"http://schemas.xmlsoap.org/wsdl/mime/";
224 const SOAP_SERIALIZATION_ERROR =
"SOAP-SERIALIZATION-ERROR";
225 const SOAP_DESERIALIZATION_ERROR =
"SOAP-DESERIALIZATION-ERROR";
226 const WSDL_ERROR =
"WSDL-ERROR";
242 extern bool global_compat_empty_string_is_nothing;
243 extern bool global_compat_allow_any_header;
261 static string getSoapMimeType12(
bool soap12);
266 static data
getFile(
string fn,
bool as_string = True);
271 static string getHTTP(
string url, *
string path, *HTTPClient hc, *hash<auto> headers,
bool as_string = True);
276 static data
getFTP(
string url,
string path,
bool as_string = True);
286 static data
getFileFromURL(
string url,
string def_protocol =
'file', *HTTPClient http_client, *hash<auto> http_headers,
bool as_string = True, *
string def_path, *reference new_def_path);
296 static data
getFileFromURL(
string url, hash<auto> u,
string def_protocol =
'file', *HTTPClient http_client, *hash<auto> http_headers,
bool as_string = False, *
string def_path, *reference new_def_path);
305 static string getWSDL(
string wsdl, *HTTPClient http_client, *hash<auto> http_headers, *reference new_def_path);
327 static processHref(reference xmldata,
string hr, hash<auto> parts);
332 static substHref(reference xmldata, hash<auto> parts);
341 static bool isContentType(
string ct, list<auto> MimeTypes);
343 static checkContentType(
string ct, list<auto> MimeTypes);
350 static removeNS(reference v);
352 static removeNS2(reference v);
359 auto getValue(*hash<auto> mrh,
auto val);
374 constructor(
string n_name,
string n_ns);
377 constructor(reference e, *
string desc_name);
383 *
string getInputNamespacePrefix();
399 constructor(reference e,
Namespaces nsc, *
string desc_name) ;
402 constructor(
string name,
string ns,
Namespaces nsc) ;
410 checkExtends(XsdAbstractType t,
string ename);
413 string getNameWithNS();
422 bool requiresValue();
425 string getOutputNamespacePrefix();
428 *list<auto> getAllowedValues();
431 abstract auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
432 abstract auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
433 abstract AbstractDataProviderType getDataProviderType();
441 constructor(
string t,
Namespaces nsc,
string ns =
'xsd') ;
444 auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
447 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
450 AbstractDataProviderType getDataProviderType();
453 Type getDataProviderBaseType();
466 *hash<auto> typeinfo;
467 XsdAbstractType elementType;
469 constructor(
string t,
string ns,
string arrayType,
Namespaces nsc, XsdLateResolverHelper unresolved) ;
472 AbstractDataProviderType getDataProviderType();
475 finalize(hash<string, XsdAbstractType> tmap,
Namespaces nsc);
478 auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
481 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
489 *hash<auto> typeinfo;
490 XsdAbstractType type;
492 constructor(reference e) ;
500 string use =
"optional";
502 const AllowedUseValues = ...;
505 constructor(hash<auto> attr,
Namespaces nsc, *XsdAbstractType n_type, XsdLateResolverHelper unresolved) ;
508 auto getValue(
string val);
518 bool nillable = False;
525 constructor(hash<auto> e,
Namespaces nsc, *XsdAbstractType n_type, XsdLateResolverHelper unresolved,
bool n_usedocns) ;
528 AbstractDataProviderType getDataProviderType();
531 *list<auto> getAllowedValues();
543 auto serialize(
Namespaces nsc,
auto h, *softbool omitType,
string key,
string typename);
547 auto serializeAsIntern(
Namespaces nsc, XsdAbstractType type,
auto h, *softbool omitType,
string key,
string typename);
551 auto deserialize(hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val,
bool present);
555 class WSDL::UnionDataType :
public AbstractDataProviderType {
558 list<AbstractDataProviderType> types;
560 constructor(list<XsdAbstractType> unionTypes);
566 bool isAssignableFrom(AbstractDataProviderType t);
569 *Type getValueType();
572 *AbstractDataProviderType getElementType();
575 *hash<string, AbstractDataField> getFields();
578 hash<string, bool> getAcceptTypeHash();
581 hash<string, bool> getReturnTypeHash();
584 auto acceptsValue(
auto value);
594 list<hash<auto>>
union;
595 list<XsdAbstractType> unionTypes;
596 XsdAbstractType type;
597 AbstractDataProviderType dataType;
600 constructor(hash<auto> st,
Namespaces nsc, XsdLateResolverHelper unresolved,
bool n_usedocns, *
string desc_name)
607 AbstractDataProviderType getDataProviderType();
610 *list<auto> getAllowedValues();
613 auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
616 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
622 hash<string, XsdElement> elementmap;
637 hash<string, XsdElement> elementmap();
638 bool anyAttribute = False;
640 bool nillable = False;
641 bool required = False;
642 bool requires_value = False;
645 hash<string, XsdAttribute> attrs();
648 *
string documentation;
651 *hash<auto> simpleTypeInfo;
653 XsdAbstractType simpleType;
656 bool finalized = False;
659 list<hash<ChoiceInfo>> choices();
665 const XET_ALL =
"ALL";
666 const XET_CHOICE =
"CHOICE";
667 const XET_SEQUENCE =
"SEQUENCE";
668 const XET_SIMPLE =
"SIMPLE";
669 const XET_NONE =
"NONE";
674 constructor(*hash<auto> ct,
Namespaces nsc, XsdLateResolverHelper unresolved,
bool n_usedocns, *
string desc_name)
678 *list<auto> getAllowedValues();
681 finalize(hash<string, XsdAbstractType> tmap,
Namespaces nsc);
689 parseData(hash<auto> d, XsdLateResolverHelper unresolved,
Namespaces nsc);
694 parseAttributes(reference d, XsdLateResolverHelper unresolved,
Namespaces nsc);
704 bool requiresValue();
711 hash<string, XsdElement> parseElements(softlist<auto> el, XsdLateResolverHelper unresolved,
Namespaces nsc,
bool for_object = True);
715 AbstractDataProviderType getDataProviderType();
719 *hash<auto> serializeElement(
Namespaces nsc,
string key,
XsdElement element,
auto h, *softbool omitType);
723 *hash<auto> serialize(
Namespaces nsc,
auto h, *softbool omitType);
727 hash<auto> serializeChoice(
Namespaces nsc, hash<string, XsdElement> emap, hash<auto> h, *softbool omitType,
bool all_members);
731 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto oval);
735 *hash<auto> parseChoice(hash<auto> val, hash<string, XsdElement> emap,
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh, *
bool required);
843 hash<auto>
serializeFault(*
string fault,
string faultmsg,
auto h, *hash<auto> header, *
string enc, *hash<auto> nsh, *
int xml_opts, *
string req_soapaction, *
string bname);
868 hash<auto>
serializeRequest(
auto h, *hash<auto> header, *
string enc, *hash<auto> nsh, *
int xml_opts, *
string req_soapaction, *
string bname, *hash<auto> http_headers);
892 hash<auto>
serializeResponse(
auto h, *hash<auto> header, *
string enc, *hash<auto> nsh, *
bool soap12, *
int xml_opts, *
string bname, *hash<auto> http_headers);
965 hash<string, hash<WSDL::ArgInfo>>
args;
971 hash<string, XsdAbstractType>
tmap;
976 constructor(hash<auto> m, hash<
string, hash<string, XsdElement>> emap, hash<string, XsdAbstractType>
tmap,
Namespaces nsc) ;
987 auto serializeRpcValue(
string part,
bool encoded, reference<hash<auto>> h, reference<string> ons);
1023 *hash<auto> deserializeDocument(*hash<auto> mrh,
auto val, *
string parts);
1076 string getSerializedKey(
string part);
1087 class WSDL::XsdLateResolverHelper {
1101 list<auto> getList();
1115 static bool isResolved(
auto t);
1130 hash<auto> serializeMessage(
WSOperation op, *
WSMessage msg,
bool request,
bool soap12,
auto h, *hash<auto> header,
string enc =
'UTF-8', *hash<auto> nsh, *
int xml_opts, *
string req_soapaction, *
string faultmsg, *hash<auto> http_headers);
1133 auto deserializeMessage(
WSOperation op, hash<auto> o,
bool request);
1136 auto deserializeRequestPath(
WSOperation op,
string path);
1139 abstract hash<auto> serializeMessageImpl(
WSOperation op, *
WSMessage msg,
bool request,
bool soap12,
auto h, *hash<auto> header,
string enc, *hash<auto> nsh, *
int xml_opts, *
string req_soapaction, *
string faultmsg, *hash<auto> http_headers);
1141 abstract auto deserializeMessageImpl(
WSOperation op, hash<auto> o,
bool request);
1143 abstract auto deserializeRequestPathImpl(
WSOperation op,
string path);
1149 string soapTransport;
1154 hash<auto> serializeMessageImpl(
WSOperation op, *
WSMessage msg,
bool request,
bool soap12,
auto h, *hash<auto> header,
string enc, *hash<auto> nsh, *
int xml_opts, *
string req_soapaction, *
string faultmsg, *hash<auto> http_headers);
1158 hash<auto> serializeSoapMessage(
WSOperation op, *
WSMessage msg,
auto val, *hash<auto> header, *hash<auto> nsh,
bool request,
bool soap12, reference mpm, *
string faultmsg);
1162 auto deserializeMessageImpl(
WSOperation op, hash<auto> orig_msg,
bool request);
1167 static list<auto> processMultiRef(hash<auto> body);
1171 hash<auto> deserializeRequestPathImpl(
WSOperation op,
string path);
1184 hash<auto> serializeMessageImpl(WSOperation op, *WSMessage msg,
bool request,
bool soap12,
auto h, *hash<auto> header,
string enc, *hash<auto> nsh, *
int xml_opts, *
string req_soapaction, *
string faultmsg, *hash<auto> http_headers);
1189 string serializeRequestPath(WSOperation op,
auto h);
1193 auto deserializeMessageImpl(WSOperation op, hash<auto> v,
bool request);
1196 hash<auto> deserializeRequestPathImpl(WSOperation op,
string path);
1264 list<auto> acceptedContentTypes = ();
1267 list<auto> acceptedContentTypeSubtypes = ();
1275 addContentType(
string type);
1290 constructor(
string part);
1328 list<BindingMessageHeaderDescription>
headers = cast<list<BindingMessageHeaderDescription>>(());
1343 setUrlReplacement(
string loc);
1361 *
string soapTransport;
1365 constructor(hash<auto> data,
Namespaces nsc, reference portTypes, reference idocmap, *hash<auto> messages) ;
1377 bool isSoapBinding();
1380 bool isHttpBinding();
1385 class WSDL::NamespacePrefixHelper {
1409 static int count = 0;
1413 constructor(
Namespaces nsc, *hash<auto> nsattr);
1419 save(
string k,
string v);
1431 bool opt_empty_string_is_nothing = False;
1432 bool opt_allow_any_header = False;
1436 hash<string, string>
ns = {
1491 *
string getDefaultNs();
1494 addNamespaces(hash<auto> nsh, *NamespacePrefixHelper nph);
1497 restorePrefixes(hash<auto> h);
1501 addNamespaceIntern(
string ns,
string val, *
bool override);
1583 bool doType(
string t, reference<hash> typeinfo, reference<XsdAbstractType> rtype, *hash<string, XsdAbstractType> tmap);
1586 hash<auto> getTypeHash(
string t);
1598 XsdAbstractType tmap_get(hash<string, XsdAbstractType> tmap,
string name);
1601 *XsdAbstractType tmap_try_get(hash<string, XsdAbstractType> tmap,
string name);
1605 XsdElement emap_get(hash<
string, hash<string, XsdElement>> emap,
string ns,
string name);
1608 *
XsdElement emap_try_get(hash<
string, hash<string, XsdElement>> emap,
string ns,
string name);
1613 hash<string, WSOperation> operations;
1671 transient hash<string, hash<string, XsdElement>>
emap();
1677 transient hash<string, XsdAbstractType>
tmap();
1692 hash<string, hash<WSDL::ServiceInfo>> services();
1695 hash<string, Binding> binding();
1826 XsdAbstractType resolveType(hash<auto> v);
1832 parseTypes(*hash<auto> data,
auto http_client,
auto http_headers);
1837 parseMessages(*softlist<auto> message);
1842 parseService(*softlist<auto> svcs);
1847 parsePortType(*softlist<auto> data);
1852 parseBinding(*softlist<auto> bindings);
1884 string getOperationParams(
WSMessage msg);
1934 const DefaultOpts = ...;
1962 hash<auto> getMessage(
XsdElement elem, *softlist<auto> comments);
describes MIME content information for SOAP operational binding message descriptions
Definition: WSDL.qm.dox.h:1257
string part
specifies the name of the message part
Definition: WSDL.qm.dox.h:1261
bool acceptAllContentTypes
are all content-types accepted?
Definition: WSDL.qm.dox.h:1273
bool formUrlEncoded
are all content-types form URL encoded?
Definition: WSDL.qm.dox.h:1270
class for WSDL bindings
Definition: WSDL.qm.dox.h:1348
bool docstyle
use RPC or document style
Definition: WSDL.qm.dox.h:1358
string checkMessagePart(WSMessage msg, *string partname, string errs)
check if part exists in massage, if part is empty and message contains single part then return it oth...
describes the message body for a SOAP operational binding message description
Definition: WSDL.qm.dox.h:1203
bool encoded
required attribute
Definition: WSDL.qm.dox.h:1210
*string ns
namespace; "only applies to content not explicitly defined by the abstract types"
Definition: WSDL.qm.dox.h:1216
*string encodingStyle
when encoded True, this is used to produce a concrete message by applying the specified encoding
Definition: WSDL.qm.dox.h:1213
*list< auto > parts
indicates which parts appear somewhere within the SOAP Body portion of the message
Definition: WSDL.qm.dox.h:1219
describes an input or output message in a SOAP operational binding
Definition: WSDL.qm.dox.h:1295
bool urlEncoded
indicates that all the message parts are encoded into the HTTP request URI using the standard URI-enc...
Definition: WSDL.qm.dox.h:1318
*WSDL::MimeXmlMessageDescription mimeXml
optional mimeXml message scription
Definition: WSDL.qm.dox.h:1324
list< BindingMessageHeaderDescription > getHeaders()
returns a list of WSDL::BindingMessageHeaderDescription objects
*WSDL::BindingContentDescription content
optional content-type descriptions
Definition: WSDL.qm.dox.h:1321
list< BindingMessageHeaderDescription > headers
a list of WSDL::BindingMessageHeaderDescription objects
Definition: WSDL.qm.dox.h:1328
*hash< auto > urlReplacement
a hash of URL replacement values keyed by part name, values are URI paths
Definition: WSDL.qm.dox.h:1304
*WSDL::BindingMessageBodyDescription body
the description of the message body
Definition: WSDL.qm.dox.h:1299
bool hasHeaders()
returns True if the header descriptions are available
describes a mimeXml payload for a SOAP operational binding message description
Definition: WSDL.qm.dox.h:1282
string part
refers to a message part defining the concrete schema of the root XML element
Definition: WSDL.qm.dox.h:1288
namespace container class
Definition: WSDL.qm.dox.h:1427
string getOutputNamespaceUri(string nsp)
returns the namespace URI for the given output namespace prefix
*string getTargetNamespaceUri()
returns the primary target namespace Uri
merge(Namespaces nsc)
merges namespaces when parsing imported schemas
string getTargetNamespaceInputPrefix()
returns the input namespace prefix for the target namespace, if any
popDefaultNamespace()
restores any previous default namespace URI from the stack to the current default namespace URI
bool hasSoap12()
returns True if using SOAP 1.2, False if not
string getUniquePrefix(string uri, *string default_prefix)
returns a unique namespace prefix from a URI path string
*bool isSchema(string ns)
returns True if if the input namespace prefix refers to the XSD namespace URI
*string getNamespaceUri(*string nsp)
returns the namespace URI for the given prefix or the target namespace Uri
*hash< auto > getReferencedNamespaceMap()
returns a hash of namespace prefixes to namespaces URIs actually used
*hash< auto > getOutputNamespaceHash(*hash< auto > nsh)
returns a hash of namespace attributes for outgoing SOAP messages
hash< string, string > imapr
hash mapping input namespace URIs to input namespace prefixes
Definition: WSDL.qm.dox.h:1456
string translateOutputNamespacePrefix(*string nsa)
returns the output namespace prefix for the given input namespace prefix
hash< string, bool > xsd_schema
hash for valid XSD namespaces, maps input namespace prefixes -> True if it refers to an XSD schema
Definition: WSDL.qm.dox.h:1446
hash< string, string > nsr
maps namespace URIs to output namespace prefixes
Definition: WSDL.qm.dox.h:1441
pushDefaultNamespace(string ns)
pushes the current default namespace URI on the stack when parsing schemas and sets the current defau...
list< auto > dss
default namespace stack;
Definition: WSDL.qm.dox.h:1476
pushTargetNamespace(string ns)
pushes the current target namespace URI on the stack when parsing schemas and sets the current target...
const DefaultPrefixes
maps namespaces to default prefixes
Definition: WSDL.qm.dox.h:1482
*string target_ns
current target namespace
Definition: WSDL.qm.dox.h:1467
hash< string, string > ns
maps output namespace prefixes to namespace URIs
Definition: WSDL.qm.dox.h:1436
string getOutputNamespacePrefix(string ns)
looks up and registers a namespace if necessary, returns the namespace's prefix
constructor(hash< auto > nsh, *Namespaces nsc, *string targetNamespace)
creates the object with the WSDL definitions attribute hash
bool hassoap11
if True then has SOAP 1.1
Definition: WSDL.qm.dox.h:1461
list< auto > nss
target namespace stack;
Definition: WSDL.qm.dox.h:1470
string registerNamespaceIntern(string uri, *string default_pfx)
registers a namespace internally
*string default_ns
default namespace for unprefixed definitions
Definition: WSDL.qm.dox.h:1473
hash< string, string > imap
hash mapping input namespace prefixes to namespaces URIs
Definition: WSDL.qm.dox.h:1451
bool hasSoap11()
returns True if using SOAP 1.1, False if not
popTargetNamespace()
restores any previous target namespace URI from the stack to the current target namespace URI
hash< string, XsdBaseType > base_types
base type map
Definition: WSDL.qm.dox.h:1479
string getInputNamespaceUri(string nsa)
returns the input namespace URI from the input namespace prefix
bool hassoap12
if True then has SOAP 1.2
Definition: WSDL.qm.dox.h:1464
string getTargetNamespaceOutputPrefix()
returns the output namespace prefix for the target namespace, if any
class for WSDL bindings associated with a SOAP operation
Definition: WSDL.qm.dox.h:1119
contains helper methods for retrieving WSDLs from a URL
Definition: WSDL.qm.dox.h:255
static *hash< auto > parseSOAPMessage(hash< auto > msg)
const SoapMimeTypes
Mime types recognized as SOAP messages.
Definition: WSDL.qm.dox.h:259
static WebService getWebServiceFromUrl(string url, *HTTPClient http_client, *hash< auto > http_headers)
returns a WebService object from a URL and other optional arguments
static data getFile(string fn, bool as_string=True)
retrieves a local file and returns the file's contents as a string
static bool isSOAPMessage(hash< auto > msg)
returns True is the message has a SOAP mime type
static data getFTP(string url, string path, bool as_string=True)
retrieves a file from a URL with the FTP protocol and returns the file's contents as binary or string...
static WebService getWSDL(WebService wsdl)
returns the argument
static data getFileFromURL(string url, hash< auto > u, string def_protocol='file', *HTTPClient http_client, *hash< auto > http_headers, bool as_string=False, *string def_path, *reference new_def_path)
retrieves a file from an already-parsed URL
static string getHTTP(string url, *string path, *HTTPClient hc, *hash< auto > headers, bool as_string=True)
retrieves a file from a URL with HTTP and returns the file's contents as a string
static data getFileFromURL(string url, string def_protocol='file', *HTTPClient http_client, *hash< auto > http_headers, bool as_string=True, *string def_path, *reference new_def_path)
retrieves a file from a URL
static string getWSDL(string wsdl, *HTTPClient http_client, *hash< auto > http_headers, *reference new_def_path)
returns a WSDL string from a file name, optional HTTPClient object and optional header hash
static hash< auto > parseMultiPartSOAPMessage(hash< auto > msg)
takes a hash representation of a SOAP message and handles multipart messages, checks the content-type...
helper class implementing sample message generation
Definition: WSDL.qm.dox.h:1925
auto getMessage(WSMessage msg)
prepare sample message
constructor(WebService ws, *hash< auto > opts)
creates the WebService object
hash< auto > getMessage(string name)
prepare sample message
web service message class
Definition: WSDL.qm.dox.h:961
auto getValueFromHash(*WSDL::XsdElement element, reference< auto > v, bool removeFound)
when only one arg then try to get values based on element keys
auto getValueFromHash(string ename, reference< auto > v, bool removeFound)
find part in value, remove that value from the hash
hash< string, XsdAbstractType > tmap
type map
Definition: WSDL.qm.dox.h:971
auto serializeRpcValue(string part, bool encoded, reference< hash< auto >> h, reference< string > ons)
*hash< auto > serializeDocument(*softlist< auto > parts, *WSDL::BindingMessageDescription msginfo, *MultiPartRelatedMessage mpm, bool encoded, reference< auto > h, bool fault)
serializes data into a hash with SOAP namespaces etc. with document-style messages
hash< auto > serializeAllPartData(*hash< auto > val)
serialize all values as string or binary
hash< auto > deserializeAllPartData(hash< auto > val)
deserialize all values in string or binary form
hash< auto > serializeData(Namespaces nsc, string key, *hash< auto > val)
serialized value of particular type value as string or binary
*hash< auto > serializeRpc(*softlist< auto > parts, *WSDL::BindingMessageDescription msginfo, *MultiPartRelatedMessage mpm, string n_name, bool encoded, reference< auto > h, bool fault)
serializes data into a hash with SOAP namespaces etc. with RPC-style messages
*hash< auto > deserializeRpc(*hash< auto > mrh, hash< auto > val, *string part)
deserialize RPC message
AbstractDataProviderType getDataProviderType()
Returns the data provider type for this message.
string checkPart(string pname)
check if pname is defined as message part
hash< string, hash< WSDL::ArgInfo > > args
args keys are part names for types reps. element names for element. Definition must provide unique va...
Definition: WSDL.qm.dox.h:965
hash< string, string > pmap
maps part names to args key, all parts are in hash
Definition: WSDL.qm.dox.h:968
hash< auto > deserializeData(string part, hash< auto > val)
deserialize value in string or binary form
web service operation class
Definition: WSDL.qm.dox.h:741
*WSMessage output
response message
Definition: WSDL.qm.dox.h:747
*string soapAction
the SOAPAction header value to send with this operation
Definition: WSDL.qm.dox.h:757
hash< string, bool > reqh
a hash of top-level request names for this operation (depends on bindings)
Definition: WSDL.qm.dox.h:760
*string input_name
request message name
Definition: WSDL.qm.dox.h:749
OperationalBinding getBinding(*string bname)
returns a hash representing the given binding
hash< auto > serializeResponse(auto h, *hash< auto > header, *string enc, *hash< auto > nsh, *bool soap12, *int xml_opts, *string bname, *hash< auto > http_headers)
serializes a SOAP response to an XML string for the operation
*hash< string, WSMessage > getFaultMessages()
returns a hash of fault messages keyed by fault name
Namespaces nsc
namespace container
Definition: WSDL.qm.dox.h:754
auto deserializeRequest(hash< auto > o, *string bname)
parses a hash representing a parsed XML request (parsed with parse_xml(XPF_PRESERVE_ORDER)) for the o...
static hash< auto > processNSValue(hash< auto > h)
processes a hash of raw deserialized XML data and removes any namespace prefix from keys (saved to a ...
hash< string, OperationalBinding > bindings
params per associated binding; key = binding name; value = OperationalBinding object
Definition: WSDL.qm.dox.h:763
*WSMessage input
request message
Definition: WSDL.qm.dox.h:745
auto deserializeResponse(hash< auto > o, *string bname)
parses a hash representing a parsed XML response (parsed with parse_xml(XPF_PRESERVE_ORDER)) for the ...
list< auto > getTopLevelRequestNames()
returns all top-level request names for this operation
hash< auto > serializeFault(*string fault, string faultmsg, auto h, *hash< auto > header, *string enc, *hash< auto > nsh, *int xml_opts, *string req_soapaction, *string bname)
serializes a fault response to an XML string or HTTP payload for the operation.
setDocStyleBinding(reference idocmap)
this method is called if this operation supports at least one binding with document style
hash< auto > serializeRequest(auto h, *hash< auto > header, *string enc, *hash< auto > nsh, *int xml_opts, *string req_soapaction, *string bname, *hash< auto > http_headers)
serializes a request to an XML string or HTTP payload for the operation.
bool hasFault(string fault)
returns True if the given string is a valid fault message for the operation
constructor(hash< auto > p, Namespaces nsc, *hash< auto > messages)
creates the WSOperation object from the arguments supplied
*string output_name
response message name
Definition: WSDL.qm.dox.h:751
*hash< auto > deserializeRequestPath(string path, *string bname)
bool isSoap12()
returns True if the operation is a SOAP 1.2 operation
markRpcStyleBinding()
this method is called if this operation supports at least one binding with RPC style
addBinding(WSDL::OperationalBinding b)
adds the given binding
string getTargetNS()
returns the target namespace for the operation
hash< string, WSMessage > faults
fault messages keyed by fault name
Definition: WSDL.qm.dox.h:767
main class representing a parsed WSDL file
Definition: WSDL.qm.dox.h:1636
list< hash< WSDL::ServiceInfo > > listServices()
returns a list of services defined in the WSDL
transient hash< string, XsdElement > idocmap()
a hash of element names to XsdElement objects for top-level document-style bindings
getReport(StringOutputStream stream, *string wsdl_name)
prepare a WebService report enumerating the services and operations of the WSDL, outputs to the outpu...
string name
the name of the WebService
Definition: WSDL.qm.dox.h:1654
WSDL::WSOperation getBindingOperation(*string bname, string opname)
returns the given operation for particular binding or throws an exception if it cannot be found
WSDL::Binding getBinding(string name)
return a WSDL::Binding object describing the requested binding
transient hash< string, bool > import_map
issue #4449: map of imports used while parsing
Definition: WSDL.qm.dox.h:1698
transient hash< string, hash< PortTypeInfo > > portType()
hash of port names to port type information hashes
transient Namespaces nsc
namespace container
Definition: WSDL.qm.dox.h:1662
transient hash< string, hash< string, XsdElement > > emap()
map of elements
transient *code try_import
optional closure/call reference to try to resolve import declarations
Definition: WSDL.qm.dox.h:1683
hash< auto > getType(string name, auto v)
return a hash value that can be used to serialize a value as a particular type
transient hash< string, XsdAbstractType > tmap()
map of types
WSDL::WSOperation getOperation(string opname)
returns the given operation or throws an exception if it cannot be found; operations are searched in ...
transient list< string > wsdl_services()
list of services in this WSDL
synchronized string getHash()
returns a unique hash for the WSDL that can be used to compare schemas for equality
bool isSoap12()
returns True if the WSDL describes a SOAP 1.2 service
doInit(string str, *hash< auto > opts)
supports the constructor and deserialization
*hash< auto > opts
options used in the constructor
Definition: WSDL.qm.dox.h:1646
string getName()
returns the name of the service
constructor(string str, *hash< auto > opts)
creates the WebService object
string getWSDLHash()
returns a cryptographic hash for the WSDL source
string hash_str
the digest of the WSDL source
Definition: WSDL.qm.dox.h:1659
string getWSDL(string base_url)
returns the XML string for the WSDL, adjusting the URLs for binding locations depending on the caller
string wsdl
the WSDL string
Definition: WSDL.qm.dox.h:1640
WSDL::WSOperation getPortTypeOperation(string ptname, string opname)
returns the given operation for particular porttype or throws an exception if it cannot be found
transient *string def_path
default path for retrieving XSD references
Definition: WSDL.qm.dox.h:1688
bool has_try_import
flag if the object has a "try_import" closure or call reference
Definition: WSDL.qm.dox.h:1649
transient hash< string, WSMessage > messages()
hash of messages names to messages
list< hash< OperationInfo > > listOperations()
returns a list of hashes giving supported operation names for each port in the WSDL
hash< WSDL::ServiceInfo > getService(string name)
returns a hash describing the requested service
deserializeMembers(hash< auto > members)
can be used to create a WebService object from a hash created with serialize()
string getWSDL()
returns the XML string for the WSDL
string wsdl_hash
a cryptographic hash for the WSDL source
Definition: WSDL.qm.dox.h:1643
softlist< string > getOperationNames()
returns a list of known operation names
string getReport(*string wsdl_name)
prepare a WebService report enumerating the services and operations of the WSDL
class for XSD array types; currently only supports single dimensional arrays
Definition: WSDL.qm.dox.h:458
XSD attribute class.
Definition: WSDL.qm.dox.h:497
base class with helper methods for XSD data processing
Definition: WSDL.qm.dox.h:347
class for XSD base types
Definition: WSDL.qm.dox.h:437
XSD complex type class.
Definition: WSDL.qm.dox.h:627
string cx_type
type of complexType object
Definition: WSDL.qm.dox.h:663
checkExtends(XsdAbstractType t, string ename)
throws an exception if the types are not compatible
base class for XSD data classes
Definition: WSDL.qm.dox.h:356
XSD element class.
Definition: WSDL.qm.dox.h:513
base class for XSD classes with a "name" attribute
Definition: WSDL.qm.dox.h:364
descriptive_name
descriptive name flag
Definition: WSDL.qm.dox.h:372
*string ns
input namespace prefix (if any given)
Definition: WSDL.qm.dox.h:370
XSD simple type class.
Definition: WSDL.qm.dox.h:589
XSD typed data class.
Definition: WSDL.qm.dox.h:486
main WSDL namespace
Definition: WSDL.qm.dox.h:175
const any_type_map
mapping from Qore types to xsd types for xsd type "anyType"
Definition: WSDL.qm.dox.h:220
const SOAP_11_ENV
SOAP 1.1 envelope URI.
Definition: WSDL.qm.dox.h:180
const SoapStyleMap
SOAP "style" to "document" mappings.
Definition: WSDL.qm.dox.h:213
const SoapUseMap
SOAP "use" to "encoded" mappings.
Definition: WSDL.qm.dox.h:209
const SOAP_TRANSPORT
known/supported transports
Definition: WSDL.qm.dox.h:232
const HTTP_NS
HTTP namespace URI.
Definition: WSDL.qm.dox.h:196
const version
this WSDL implementation version
Definition: WSDL.qm.dox.h:177
const ENVELOPE_12_NS
soap 1.2 envelope namespaces
Definition: WSDL.qm.dox.h:205
wsdl_set_global_compat_allow_any_header(softbool val)
sets the global_compat_allow_any_header variable to the given value to force the WSDL module to allow...
const XSI_NS
XSI namespace URI.
Definition: WSDL.qm.dox.h:193
const XSD_NS
XSD namespace URI.
Definition: WSDL.qm.dox.h:191
const SOAP_12_NS
SOAP 1.2 namespace URI.
Definition: WSDL.qm.dox.h:188
const SOAP_TRANSPORT_HTTP
SOAP HTTP transport URI.
Definition: WSDL.qm.dox.h:229
const SOAP_11_NS
SOAP 1.1 namespace URI.
Definition: WSDL.qm.dox.h:185
wsdl_set_global_compat_empty_string_is_nothing(softbool val)
sets the global_compat_empty_string_is_nothing variable to the given value to force the WSDL module t...
const RANGE_INT
range of "int" values (32 bits)
Definition: WSDL.qm.dox.h:239
const SOAP_12_ENV
SOAP 1.2 envelope URI.
Definition: WSDL.qm.dox.h:182
const MIME_NS
MIME namespace URI.
Definition: WSDL.qm.dox.h:198
const SOAP_ENCODING
soap encoding URI
Definition: WSDL.qm.dox.h:217
const ENVELOPE_11_NS
soap 1.1 envelope namespaces
Definition: WSDL.qm.dox.h:201
const RANGE_SHORT
range of "short" values (16 bits)
Definition: WSDL.qm.dox.h:236
message argument hash description
Definition: WSDL.qm.dox.h:940
XsdAbstractType type
type for the argument
Definition: WSDL.qm.dox.h:948
string part
unique part name
Definition: WSDL.qm.dox.h:945
XsdElement element
element for the argument
Definition: WSDL.qm.dox.h:951
string name
the arg name
Definition: WSDL.qm.dox.h:942
complex type choice hash
Definition: WSDL.qm.dox.h:621
WSDL operation info.
Definition: WSDL.qm.dox.h:1625
string port
the name of the port defining the operation
Definition: WSDL.qm.dox.h:1627
WSDL::WSOperation operation
the operation object
Definition: WSDL.qm.dox.h:1630
WSDL port type hash.
Definition: WSDL.qm.dox.h:1612
WSDL service info hash.
Definition: WSDL.qm.dox.h:1617
hash< string, hash > port
port info
Definition: WSDL.qm.dox.h:1621
string name
service name
Definition: WSDL.qm.dox.h:1619