blob: 13f7e300f68a6141b99de582ae388c6c2e63896b [file] [log] [blame]
/*
wsa.h
Generated with:
wsdl2h -cgy -o wsa.h -t WS/WS-typemap.dat WS/WS-Addressing.xsd
Modified by Robert van Engelen:
- Removed //gsoapopt
- Added the following directive to import WS-Addressing namespace:
//gsoap wsa schema import: http://schemas.xmlsoap.org/ws/2004/08/addressing
This ensures that the WS-Addressing schemas are not copied into the generated
WSDL by soapcpp2 but are referenced with schema import in the generated WSDL.
Usage:
// header file for soapcpp2
#import "wsa.h"
struct SOAP_ENV__Header
{
mustUnderstand _wsa__MessageID wsa__MessageID 0;
mustUnderstand _wsa__RelatesTo *wsa__RelatesTo 0;
mustUnderstand _wsa__From *wsa__From 0;
mustUnderstand _wsa__ReplyTo *wsa__ReplyTo 0;
mustUnderstand _wsa__FaultTo *wsa__FaultTo 0;
mustUnderstand _wsa__To wsa__To 0;
mustUnderstand _wsa__Action wsa__Action 0;
};
// client-side source code
{ struct soap soap;
struct SOAP_ENV__Header header;
_wsa__ReplyTo replyTo;
soap_init(&soap);
soap_default_SOAP_ENV__Header(&soap, &header);
soap.header = &header;
soap_default_wsa__EndpointReferenceType(&soap, &replyTo);
replyTo.Address = "http://schemas.xmlsoap.org/ws/2004/08/addressing/role/anony
mous";
header.wsa__MessageID = "...";
header.wsa__To = "...";
header.wsa__Action = "...";
header.wsa__ReplyTo = &replyTo;
if (soap_call_ns__method(&soap, ...) != SOAP_OK)
// server-side source code
int soap_ns__method(struct soap *soap, ...)
{ if (!soap->header)
return soap_sender_fault(soap, "No SOAP header, must send one", NULL);
if (!soap->header->wsa__MessageID)
return soap_sender_fault(soap, "No WS-Addressing MessageID", NULL);
soap->header->wsa__RelatesTo = (struct wsa__Relationship*)soap_malloc(soap, sizeof(struct wsa__Relationship));
soap_default_wsa__Relationship(soap, soap->header->wsa__RelatesTo);
soap->header->wsa__RelatesTo->__item = soap->header->wsa__MessageID;
if (!soap->header->wsa__ReplyTo || !soap->header->wsa__ReplyTo->Address)
return soap_sender_fault(soap, "No WS-Addressing ReplyTo address", NULL);
soap->header->wsa__To = soap->header->wsa__ReplyTo->Address;
soap->header->wsa__MessageID = "...";
soap->header->wsa__Action = "...";
...
*/
/******************************************************************************\
* *
* http://schemas.xmlsoap.org/ws/2004/08/addressing *
* *
\******************************************************************************/
/******************************************************************************\
* *
* Import *
* *
\******************************************************************************/
/******************************************************************************\
* *
* Schema Namespaces *
* *
\******************************************************************************/
//gsoap wsa schema import: http://schemas.xmlsoap.org/ws/2004/08/addressing
//gsoap wsa schema elementForm: qualified
//gsoap wsa schema attributeForm: unqualified
/******************************************************************************\
* *
* Schema Types *
* *
\******************************************************************************/
/// Typedef synonym for struct wsa__EndpointReferenceType.
typedef struct wsa__EndpointReferenceType wsa__EndpointReferenceType;
/// Typedef synonym for struct wsa__ReferencePropertiesType.
typedef struct wsa__ReferencePropertiesType wsa__ReferencePropertiesType;
/// Typedef synonym for struct wsa__ReferenceParametersType.
typedef struct wsa__ReferenceParametersType wsa__ReferenceParametersType;
/// Typedef synonym for struct wsa__ServiceNameType.
typedef struct wsa__ServiceNameType wsa__ServiceNameType;
/// Typedef synonym for struct wsa__Relationship.
typedef struct wsa__Relationship wsa__Relationship;
/// Imported complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReplyAfterType from typemap WS/WS-typemap.dat.
/// complexType definition intentionally left blank.
/// Imported complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedQName from typemap WS/WS-typemap.dat.
/// complexType definition intentionally left blank.
/// Imported complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedURI from typemap WS/WS-typemap.dat.
/// complexType definition intentionally left blank.
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":RelationshipTypeValues is a simpleType restriction of xs:QName.
/// Note: enum values are prefixed with 'wsa__RelationshipTypeValues' to avoid name clashes, please use wsdl2h option -e to omit this prefix
enum wsa__RelationshipTypeValues
{
wsa__RelationshipTypeValues__wsa__Reply, ///< xs:QName value=""http://schemas.xmlsoap.org/ws/2004/08/addressing":Reply"
};
/// Typedef synonym for enum wsa__RelationshipTypeValues.
typedef enum wsa__RelationshipTypeValues wsa__RelationshipTypeValues;
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":FaultSubcodeValues is a simpleType restriction of xs:QName.
/// Note: enum values are prefixed with 'wsa__FaultSubcodeValues' to avoid name clashes, please use wsdl2h option -e to omit this prefix
enum wsa__FaultSubcodeValues
{
wsa__FaultSubcodeValues__wsa__InvalidMessageInformationHeader, ///< xs:QName value=""http://schemas.xmlsoap.org/ws/2004/08/addressing":InvalidMessageInformationHeader"
wsa__FaultSubcodeValues__wsa__MessageInformationHeaderRequired, ///< xs:QName value=""http://schemas.xmlsoap.org/ws/2004/08/addressing":MessageInformationHeaderRequired"
wsa__FaultSubcodeValues__wsa__DestinationUnreachable, ///< xs:QName value=""http://schemas.xmlsoap.org/ws/2004/08/addressing":DestinationUnreachable"
wsa__FaultSubcodeValues__wsa__ActionNotSupported, ///< xs:QName value=""http://schemas.xmlsoap.org/ws/2004/08/addressing":ActionNotSupported"
wsa__FaultSubcodeValues__wsa__EndpointUnavailable, ///< xs:QName value=""http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointUnavailable"
};
/// Typedef synonym for enum wsa__FaultSubcodeValues.
typedef enum wsa__FaultSubcodeValues wsa__FaultSubcodeValues;
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointReferenceType is a complexType.
struct wsa__EndpointReferenceType
{
/// Element Address of type "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedURI.
char* Address 1; ///< Required element.
/// Element ReferenceProperties of type "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReferencePropertiesType.
struct wsa__ReferencePropertiesType* ReferenceProperties 0; ///< Optional element.
/// Element ReferenceParameters of type "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReferenceParametersType.
struct wsa__ReferenceParametersType* ReferenceParameters 0; ///< Optional element.
/// Element PortType of type "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedQName.
_QName* PortType 0; ///< Optional element.
/// Element ServiceName of type "http://schemas.xmlsoap.org/ws/2004/08/addressing":ServiceNameType.
struct wsa__ServiceNameType* ServiceName 0; ///< Optional element.
/// TODO: <any namespace="##other" minOccurs="0" maxOccurs="unbounded">
/// Schema extensibility is user-definable.
/// Consult the protocol documentation to change and/or insert declarations.
/// Use wsdl2h option -x to remove this element.
_XML __any ; ///< Catch any element content in XML string.
/// TODO: <anyAttribute namespace="##other">
/// Schema extensibility is user-definable.
/// Consult the protocol documentation to change and/or insert declarations.
/// Use wsdl2h option -x to remove this attribute.
@_XML __anyAttribute ; ///< Catch any attribute content in XML string.
};
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReferencePropertiesType is a complexType.
struct wsa__ReferencePropertiesType
{
/// TODO: <any minOccurs="0" maxOccurs="unbounded">
/// Schema extensibility is user-definable.
/// Consult the protocol documentation to change and/or insert declarations.
/// Use wsdl2h option -x to remove this element.
_XML __any ; ///< Catch any element content in XML string.
};
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReferenceParametersType is a complexType.
struct wsa__ReferenceParametersType
{
/// TODO: <any minOccurs="0" maxOccurs="unbounded">
/// Schema extensibility is user-definable.
/// Consult the protocol documentation to change and/or insert declarations.
/// Use wsdl2h option -x to remove this element.
_XML __any ; ///< Catch any element content in XML string.
};
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":ServiceNameType is a complexType with simpleContent.
struct wsa__ServiceNameType
{
/// __item wraps 'xs:QName' simpleContent.
_QName __item ;
/// Attribute PortName of type xs:NCName.
@char* PortName 0; ///< Optional attribute.
/// TODO: <anyAttribute namespace="##other">
/// Schema extensibility is user-definable.
/// Consult the protocol documentation to change and/or insert declarations.
/// Use wsdl2h option -x to remove this attribute.
@_XML __anyAttribute ; ///< Catch any attribute content in XML string.
};
/// "http://schemas.xmlsoap.org/ws/2004/08/addressing":Relationship is a complexType with simpleContent.
struct wsa__Relationship
{
/// __item wraps 'xs:anyURI' simpleContent.
char* __item ;
/// Attribute RelationshipType of type xs:QName.
@_QName RelationshipType 0; ///< Optional attribute.
/// TODO: <anyAttribute namespace="##other">
/// Schema extensibility is user-definable.
/// Consult the protocol documentation to change and/or insert declarations.
/// Use wsdl2h option -x to remove this attribute.
@_XML __anyAttribute ; ///< Catch any attribute content in XML string.
};
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointReference of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointReferenceType.
typedef struct wsa__EndpointReferenceType _wsa__EndpointReference;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":MessageID of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedURI.
typedef char* _wsa__MessageID;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":RelatesTo of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":Relationship.
typedef struct wsa__Relationship _wsa__RelatesTo;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":To of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedURI.
typedef char* _wsa__To;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":Action of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":AttributedURI.
typedef char* _wsa__Action;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":From of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointReferenceType.
typedef struct wsa__EndpointReferenceType _wsa__From;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReplyTo of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointReferenceType.
typedef struct wsa__EndpointReferenceType _wsa__ReplyTo;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":FaultTo of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":EndpointReferenceType.
typedef struct wsa__EndpointReferenceType _wsa__FaultTo;
/// Element "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReplyAfter of complexType "http://schemas.xmlsoap.org/ws/2004/08/addressing":ReplyAfterType.
typedef unsigned int _wsa__ReplyAfter;
/// Attribute "http://schemas.xmlsoap.org/ws/2004/08/addressing":Action of simpleType xs:anyURI.
/// '_wsa__Action' attribute definition intentionally left blank.
/* End of wsa.h */