184 const SOAP_12_NS =
"http://schemas.xmlsoap.org/wsdl/soap12/";
187 const XSD_NS =
"http://www.w3.org/2001/XMLSchema";
189 const XSI_NS =
"http://www.w3.org/2001/XMLSchema-instance";
192 const HTTP_NS =
"http://schemas.xmlsoap.org/wsdl/http/";
194 const MIME_NS =
"http://schemas.xmlsoap.org/wsdl/mime/";
220 const SOAP_SERIALIZATION_ERROR =
"SOAP-SERIALIZATION-ERROR";
221 const SOAP_DESERIALIZATION_ERROR =
"SOAP-DESERIALIZATION-ERROR";
222 const WSDL_ERROR =
"WSDL-ERROR";
238 extern bool global_compat_empty_string_is_nothing;
239 extern bool global_compat_allow_any_header;
257 static string getSoapMimeType12(
bool soap12);
262 static data
getFile(
string fn,
bool as_string = True);
267 static string getHTTP(
string url, *
string path, *HTTPClient hc, *hash<auto> headers,
bool as_string = True);
272 static data
getFTP(
string url,
string path,
bool as_string = True);
282 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);
292 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);
301 static string getWSDL(
string wsdl, *HTTPClient http_client, *hash<auto> http_headers, *reference new_def_path);
323 static processHref(reference xmldata,
string hr, hash<auto> parts);
328 static substHref(reference xmldata, hash<auto> parts);
337 static bool isContentType(
string ct, list<auto> MimeTypes);
339 static checkContentType(
string ct, list<auto> MimeTypes);
346 static removeNS(reference v);
348 static removeNS2(reference v);
355 auto getValue(*hash<auto> mrh,
auto val);
370 constructor(
string n_name,
string n_ns);
373 constructor(reference e, *
string desc_name);
379 *
string getInputNamespacePrefix();
395 constructor(reference e,
Namespaces nsc, *
string desc_name) ;
398 constructor(
string name,
string ns,
Namespaces nsc) ;
406 checkExtends(XsdAbstractType t,
string ename);
409 string getNameWithNS();
418 bool requiresValue();
421 string getOutputNamespacePrefix();
424 abstract auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
425 abstract auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
426 abstract AbstractDataProviderType getDataProviderType();
434 constructor(
string t,
Namespaces nsc,
string ns =
'xsd') ;
437 auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
440 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
443 AbstractDataProviderType getDataProviderType();
446 Type getDataProviderBaseType();
459 *hash<auto> typeinfo;
460 XsdAbstractType elementType;
462 constructor(
string t,
string ns,
string arrayType,
Namespaces nsc, XsdLateResolverHelper unresolved) ;
465 AbstractDataProviderType getDataProviderType();
468 finalize(hash<string, XsdAbstractType> tmap,
Namespaces nsc);
471 auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
474 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
482 *hash<auto> typeinfo;
483 XsdAbstractType type;
485 constructor(reference e) ;
493 string use =
"optional";
495 const AllowedUseValues = ...;
498 constructor(hash<auto> attr,
Namespaces nsc, *XsdAbstractType n_type, XsdLateResolverHelper unresolved) ;
501 auto getValue(
string val);
511 bool nillable = False;
518 constructor(hash<auto> e,
Namespaces nsc, *XsdAbstractType n_type, XsdLateResolverHelper unresolved,
bool n_usedocns) ;
521 AbstractDataProviderType getDataProviderType();
533 auto serialize(
Namespaces nsc,
auto h, *softbool omitType,
string key,
string typename);
537 auto serializeAsIntern(
Namespaces nsc, XsdAbstractType type,
auto h, *softbool omitType,
string key,
string typename);
541 auto deserialize(hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val,
bool present);
551 list<hash<auto>>
union;
552 list<XsdAbstractType> unionTypes;
554 XsdAbstractType type;
557 constructor(hash<auto> st,
Namespaces nsc, XsdLateResolverHelper unresolved,
bool n_usedocns, *
string desc_name) ;
560 AbstractDataProviderType getDataProviderType();
563 auto serialize(
Namespaces nsc,
auto val, *softbool omitType);
566 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto val);
572 hash<string, XsdElement> elementmap;
587 hash<string, XsdElement> elementmap();
588 bool anyAttribute = False;
590 bool nillable = False;
591 bool required = False;
592 bool requires_value = False;
595 hash<string, XsdAttribute> attrs();
598 *
string documentation;
601 *hash<auto> simpleTypeInfo;
603 XsdAbstractType simpleType;
606 bool finalized = False;
609 list<hash<ChoiceInfo>> choices();
615 const XET_ALL =
"ALL";
616 const XET_CHOICE =
"CHOICE";
617 const XET_SEQUENCE =
"SEQUENCE";
618 const XET_SIMPLE =
"SIMPLE";
619 const XET_NONE =
"NONE";
624 constructor(*hash<auto> ct,
Namespaces nsc, XsdLateResolverHelper unresolved,
bool n_usedocns, *
string desc_name) ;
627 finalize(hash<string, XsdAbstractType> tmap,
Namespaces nsc);
635 parseData(hash<auto> d, XsdLateResolverHelper unresolved,
Namespaces nsc);
640 parseAttributes(reference d, XsdLateResolverHelper unresolved,
Namespaces nsc);
650 bool requiresValue();
657 hash<string, XsdElement> parseElements(softlist<auto> el, XsdLateResolverHelper unresolved,
Namespaces nsc,
bool for_object = True);
661 AbstractDataProviderType getDataProviderType();
665 *hash<auto> serializeElement(
Namespaces nsc,
string key,
XsdElement element,
auto h, *softbool omitType);
669 *hash<auto> serialize(
Namespaces nsc,
auto h, *softbool omitType);
673 hash<auto> serializeChoice(
Namespaces nsc, hash<string, XsdElement> emap, hash<auto> h, *softbool omitType,
bool all_members);
677 auto deserialize(
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh,
auto oval);
681 *hash<auto> parseChoice(hash<auto> val, hash<string, XsdElement> emap,
string en, hash<string, XsdAbstractType> tmap, *hash<auto> mrh, *
bool required);
789 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);
814 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);
838 hash<auto>
serializeResponse(
auto h, *hash<auto> header, *
string enc, *hash<auto> nsh, *
bool soap12, *
int xml_opts, *
string bname, *hash<auto> http_headers);
911 hash<string, hash<WSDL::ArgInfo>>
args;
917 hash<string, XsdAbstractType>
tmap;
922 constructor(hash<auto> m, hash<
string, hash<string, XsdElement>> emap, hash<string, XsdAbstractType>
tmap,
Namespaces nsc) ;
933 auto serializeRpcValue(
string part,
bool encoded, reference<hash<auto>> h, reference<string> ons);
969 *hash<auto> deserializeDocument(*hash<auto> mrh,
auto val, *
string parts);
1022 string getSerializedKey(
string part);
1033 class WSDL::XsdLateResolverHelper {
1047 list<auto> getList();
1061 static bool isResolved(
auto t);
1076 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);
1079 auto deserializeMessage(
WSOperation op, hash<auto> o,
bool request);
1082 auto deserializeRequestPath(
WSOperation op,
string path);
1085 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);
1087 abstract auto deserializeMessageImpl(
WSOperation op, hash<auto> o,
bool request);
1089 abstract auto deserializeRequestPathImpl(
WSOperation op,
string path);
1095 string soapTransport;
1100 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);
1104 hash<auto> serializeSoapMessage(
WSOperation op, *
WSMessage msg,
auto val, *hash<auto> header, *hash<auto> nsh,
bool request,
bool soap12, reference mpm, *
string faultmsg);
1108 auto deserializeMessageImpl(
WSOperation op, hash<auto> orig_msg,
bool request);
1113 static list<auto> processMultiRef(hash<auto> body);
1117 hash<auto> deserializeRequestPathImpl(
WSOperation op,
string path);
1130 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);
1135 string serializeRequestPath(WSOperation op,
auto h);
1139 auto deserializeMessageImpl(WSOperation op, hash<auto> v,
bool request);
1142 hash<auto> deserializeRequestPathImpl(WSOperation op,
string path);
1210 list<auto> acceptedContentTypes = ();
1213 list<auto> acceptedContentTypeSubtypes = ();
1221 addContentType(
string type);
1236 constructor(
string part);
1274 list<BindingMessageHeaderDescription>
headers = cast<list<BindingMessageHeaderDescription>>(());
1289 setUrlReplacement(
string loc);
1307 *
string soapTransport;
1311 constructor(hash<auto> data,
Namespaces nsc, reference portTypes, reference idocmap, *hash<auto> messages) ;
1323 bool isSoapBinding();
1326 bool isHttpBinding();
1331 class WSDL::NamespacePrefixHelper {
1355 static int count = 0;
1359 constructor(
Namespaces nsc, *hash<auto> nsattr);
1365 save(
string k,
string v);
1377 bool opt_empty_string_is_nothing = False;
1378 bool opt_allow_any_header = False;
1382 hash<string, string>
ns = {
1437 *
string getDefaultNs();
1440 addNamespaces(hash<auto> nsh, *NamespacePrefixHelper nph);
1443 restorePrefixes(hash<auto> h);
1447 addNamespaceIntern(
string ns,
string val, *
bool override);
1529 bool doType(
string t, reference<hash> typeinfo, reference<XsdAbstractType> rtype, *hash<string, XsdAbstractType> tmap);
1532 hash<auto> getTypeHash(
string t);
1544 XsdAbstractType tmap_get(hash<string, XsdAbstractType> tmap,
string name);
1547 *XsdAbstractType tmap_try_get(hash<string, XsdAbstractType> tmap,
string name);
1551 XsdElement emap_get(hash<
string, hash<string, XsdElement>> emap,
string ns,
string name);
1554 *
XsdElement emap_try_get(hash<
string, hash<string, XsdElement>> emap,
string ns,
string name);
1559 hash<string, WSOperation> operations;
1617 transient hash<string, hash<string, XsdElement>>
emap();
1623 transient hash<string, XsdAbstractType>
tmap();
1638 hash<string, hash<WSDL::ServiceInfo>> services();
1641 hash<string, Binding> binding();
1772 XsdAbstractType resolveType(hash<auto> v);
1778 parseTypes(*hash<auto> data,
auto http_client,
auto http_headers);
1783 parseMessages(*softlist<auto> message);
1788 parseService(*softlist<auto> svcs);
1793 parsePortType(*softlist<auto> data);
1798 parseBinding(*softlist<auto> bindings);
1830 string getOperationParams(
WSMessage msg);
1880 const DefaultOpts = ...;
1908 hash<auto> getMessage(
XsdElement elem, *softlist<auto> comments);
describes MIME content information for SOAP operational binding message descriptions
Definition: WSDL.qm.dox.h:1203
string part
specifies the name of the message part
Definition: WSDL.qm.dox.h:1207
bool acceptAllContentTypes
are all content-types accepted?
Definition: WSDL.qm.dox.h:1219
bool formUrlEncoded
are all content-types form URL encoded?
Definition: WSDL.qm.dox.h:1216
class for WSDL bindings
Definition: WSDL.qm.dox.h:1294
bool docstyle
use RPC or document style
Definition: WSDL.qm.dox.h:1304
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:1149
bool encoded
required attribute
Definition: WSDL.qm.dox.h:1156
*string ns
namespace; "only applies to content not explicitly defined by the abstract types"
Definition: WSDL.qm.dox.h:1162
*string encodingStyle
when encoded True, this is used to produce a concrete message by applying the specified encoding
Definition: WSDL.qm.dox.h:1159
*list< auto > parts
indicates which parts appear somewhere within the SOAP Body portion of the message
Definition: WSDL.qm.dox.h:1165
describes an input or output message in a SOAP operational binding
Definition: WSDL.qm.dox.h:1241
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:1264
*WSDL::MimeXmlMessageDescription mimeXml
optional mimeXml message scription
Definition: WSDL.qm.dox.h:1270
list< BindingMessageHeaderDescription > getHeaders()
returns a list of WSDL::BindingMessageHeaderDescription objects
*WSDL::BindingContentDescription content
optional content-type descriptions
Definition: WSDL.qm.dox.h:1267
list< BindingMessageHeaderDescription > headers
a list of WSDL::BindingMessageHeaderDescription objects
Definition: WSDL.qm.dox.h:1274
*hash< auto > urlReplacement
a hash of URL replacement values keyed by part name, values are URI paths
Definition: WSDL.qm.dox.h:1250
*WSDL::BindingMessageBodyDescription body
the description of the message body
Definition: WSDL.qm.dox.h:1245
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:1228
string part
refers to a message part defining the concrete schema of the root XML element
Definition: WSDL.qm.dox.h:1234
namespace container class
Definition: WSDL.qm.dox.h:1373
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:1402
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:1392
hash< string, string > nsr
maps namespace URIs to output namespace prefixes
Definition: WSDL.qm.dox.h:1387
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:1422
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:1428
*string target_ns
current target namespace
Definition: WSDL.qm.dox.h:1413
hash< string, string > ns
maps output namespace prefixes to namespace URIs
Definition: WSDL.qm.dox.h:1382
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:1407
list< auto > nss
target namespace stack;
Definition: WSDL.qm.dox.h:1416
string registerNamespaceIntern(string uri, *string default_pfx)
registers a namespace internally
*string default_ns
default namespace for unprefixed definitions
Definition: WSDL.qm.dox.h:1419
hash< string, string > imap
hash mapping input namespace prefixes to namespaces URIs
Definition: WSDL.qm.dox.h:1397
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:1425
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:1410
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:1065
contains helper methods for retrieving WSDLs from a URL
Definition: WSDL.qm.dox.h:251
static *hash< auto > parseSOAPMessage(hash< auto > msg)
const SoapMimeTypes
Mime types recognized as SOAP messages.
Definition: WSDL.qm.dox.h:255
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:1871
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:907
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:917
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:911
hash< string, string > pmap
maps part names to args key, all parts are in hash
Definition: WSDL.qm.dox.h:914
hash< auto > deserializeData(string part, hash< auto > val)
deserialize value in string or binary form
web service operation class
Definition: WSDL.qm.dox.h:687
*WSMessage output
response message
Definition: WSDL.qm.dox.h:693
*string soapAction
the SOAPAction header value to send with this operation
Definition: WSDL.qm.dox.h:703
hash< string, bool > reqh
a hash of top-level request names for this operation (depends on bindings)
Definition: WSDL.qm.dox.h:706
*string input_name
request message name
Definition: WSDL.qm.dox.h:695
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:700
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:709
*WSMessage input
request message
Definition: WSDL.qm.dox.h:691
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:697
*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:713
main class representing a parsed WSDL file
Definition: WSDL.qm.dox.h:1582
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:1600
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:1644
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:1608
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:1629
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:1592
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:1605
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:1586
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:1634
bool has_try_import
flag if the object has a "try_import" closure or call reference
Definition: WSDL.qm.dox.h:1595
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:1589
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:451
XSD attribute class.
Definition: WSDL.qm.dox.h:490
base class with helper methods for XSD data processing
Definition: WSDL.qm.dox.h:343
class for XSD base types
Definition: WSDL.qm.dox.h:430
XSD complex type class.
Definition: WSDL.qm.dox.h:577
string cx_type
type of complexType object
Definition: WSDL.qm.dox.h:613
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:352
XSD element class.
Definition: WSDL.qm.dox.h:506
base class for XSD classes with a "name" attribute
Definition: WSDL.qm.dox.h:360
descriptive_name
descriptive name flag
Definition: WSDL.qm.dox.h:368
*string ns
input namespace prefix (if any given)
Definition: WSDL.qm.dox.h:366
XSD simple type class.
Definition: WSDL.qm.dox.h:546
XSD typed data class.
Definition: WSDL.qm.dox.h:479
main WSDL namespace
Definition: WSDL.qm.dox.h:171
const any_type_map
mapping from Qore types to xsd types for xsd type "anyType"
Definition: WSDL.qm.dox.h:216
const SOAP_11_ENV
SOAP 1.1 envelope URI.
Definition: WSDL.qm.dox.h:176
const SoapStyleMap
SOAP "style" to "document" mappings.
Definition: WSDL.qm.dox.h:209
const SoapUseMap
SOAP "use" to "encoded" mappings.
Definition: WSDL.qm.dox.h:205
const SOAP_TRANSPORT
known/supported transports
Definition: WSDL.qm.dox.h:228
const HTTP_NS
HTTP namespace URI.
Definition: WSDL.qm.dox.h:192
const version
this WSDL implementation version
Definition: WSDL.qm.dox.h:173
const ENVELOPE_12_NS
soap 1.2 envelope namespaces
Definition: WSDL.qm.dox.h:201
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:189
const XSD_NS
XSD namespace URI.
Definition: WSDL.qm.dox.h:187
const SOAP_12_NS
SOAP 1.2 namespace URI.
Definition: WSDL.qm.dox.h:184
const SOAP_TRANSPORT_HTTP
SOAP HTTP transport URI.
Definition: WSDL.qm.dox.h:225
const SOAP_11_NS
SOAP 1.1 namespace URI.
Definition: WSDL.qm.dox.h:181
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:235
const SOAP_12_ENV
SOAP 1.2 envelope URI.
Definition: WSDL.qm.dox.h:178
const MIME_NS
MIME namespace URI.
Definition: WSDL.qm.dox.h:194
const SOAP_ENCODING
soap encoding URI
Definition: WSDL.qm.dox.h:213
const ENVELOPE_11_NS
soap 1.1 envelope namespaces
Definition: WSDL.qm.dox.h:197
const RANGE_SHORT
range of "short" values (16 bits)
Definition: WSDL.qm.dox.h:232
message argument hash description
Definition: WSDL.qm.dox.h:886
XsdAbstractType type
type for the argument
Definition: WSDL.qm.dox.h:894
string part
unique part name
Definition: WSDL.qm.dox.h:891
XsdElement element
element for the argument
Definition: WSDL.qm.dox.h:897
string name
the arg name
Definition: WSDL.qm.dox.h:888
complex type choice hash
Definition: WSDL.qm.dox.h:571
WSDL operation info.
Definition: WSDL.qm.dox.h:1571
string port
the name of the port defining the operation
Definition: WSDL.qm.dox.h:1573
WSDL::WSOperation operation
the operation object
Definition: WSDL.qm.dox.h:1576
WSDL port type hash.
Definition: WSDL.qm.dox.h:1558
WSDL service info hash.
Definition: WSDL.qm.dox.h:1563
hash< string, hash > port
port info
Definition: WSDL.qm.dox.h:1567
string name
service name
Definition: WSDL.qm.dox.h:1565