/*
- * Copyright 2001-2006 Internet2
+ * Copyright 2001-2007 Internet2
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
#ifndef __xmltooling_soap_h__
#define __xmltooling_soap_h__
-#include <xmltooling/AttributeExtensibleXMLObject.h>
#include <xmltooling/ElementProxy.h>
#include <xmltooling/XMLObjectBuilder.h>
#include <xmltooling/util/XMLConstants.h>
#include <xercesc/util/XMLUniDefs.hpp>
+/**
+ * Macro for declaring SOAP builders.
+ *
+ * @param cname name of class being built
+ */
#define DECL_SOAP11OBJECTBUILDER(cname) \
- DECL_XMLOBJECTBUILDER(XMLTOOL_API,cname,xmltooling::XMLConstants::SOAP11ENV_NS,xmltooling::XMLConstants::SOAP11ENV_PREFIX)
+ DECL_XMLOBJECTBUILDER(XMLTOOL_API,cname,xmlconstants::SOAP11ENV_NS,xmlconstants::SOAP11ENV_PREFIX)
/**
* @namespace soap11
BEGIN_XMLOBJECT(XMLTOOL_API,Faultcode,xmltooling::XMLObject,SOAP 1.1 faultcode element);
/** Gets the QName content of the element. */
- virtual xmltooling::QName* getCode() const=0;
+ virtual const xmltooling::QName* getCode() const=0;
/** Sets the QName content of the element. */
virtual void setCode(const xmltooling::QName* qname)=0;
+ /** Client Fault code. **/
+ static xmltooling::QName CLIENT;\r
+ /** Server Fault code. **/\r
+ static xmltooling::QName SERVER;\r
+ /** MustUnderstand Fault code. **/\r
+ static xmltooling::QName MUSTUNDERSTAND;\r
+ /** Version Mismatch Fault code. **/\r
+ static xmltooling::QName VERSIONMISMATCH;\r
END_XMLOBJECT;
- BEGIN_XMLOBJECT2(XMLTOOL_API,Detail,xmltooling::ElementProxy,xmltooling::AttributeExtensibleXMLObject,SOAP 1.1 detail element);
+ BEGIN_XMLOBJECT(XMLTOOL_API,Detail,xmltooling::ElementProxy,SOAP 1.1 detail element);
/** detail (type) local name */
static const XMLCh TYPE_NAME[];
END_XMLOBJECT;
static const XMLCh TYPE_NAME[];
END_XMLOBJECT;
- BEGIN_XMLOBJECT2(XMLTOOL_API,Body,xmltooling::ElementProxy,xmltooling::AttributeExtensibleXMLObject,SOAP 1.1 Body element);
+ BEGIN_XMLOBJECT(XMLTOOL_API,Body,xmltooling::ElementProxy,SOAP 1.1 Body element);
DECL_STRING_ATTRIB(EncodingStyle,ENCODINGSTYLE);
/** Body (type) local name */
static const XMLCh TYPE_NAME[];
END_XMLOBJECT;
- BEGIN_XMLOBJECT2(XMLTOOL_API,Header,xmltooling::ElementProxy,xmltooling::AttributeExtensibleXMLObject,SOAP 1.1 Header element);
- DECL_BOOLEAN_ATTRIB(MustUnderstand,MUSTUNDERSTAND,false);
- DECL_STRING_ATTRIB(Actor,ACTOR);
+ BEGIN_XMLOBJECT(XMLTOOL_API,Header,xmltooling::ElementProxy,SOAP 1.1 Header element);
+ /** Actor header block attribute name */
+ static const XMLCh ACTOR_ATTRIB_NAME[];
+ /** mustUnderstand header block attribute name */
+ static const XMLCh MUSTUNDERSTAND_ATTRIB_NAME[];
/** Header (type) local name */
static const XMLCh TYPE_NAME[];
END_XMLOBJECT;
END_XMLOBJECT;
DECL_SOAP11OBJECTBUILDER(Body);
- DECL_SOAP11OBJECTBUILDER(Detail);
DECL_SOAP11OBJECTBUILDER(Envelope);
DECL_SOAP11OBJECTBUILDER(Fault);
- DECL_SOAP11OBJECTBUILDER(Faultactor);
- DECL_SOAP11OBJECTBUILDER(Faultcode);
- DECL_SOAP11OBJECTBUILDER(Faultstring);
DECL_SOAP11OBJECTBUILDER(Header);
+ DECL_XMLOBJECTBUILDER(XMLTOOL_API,Detail,NULL,NULL);
+ DECL_XMLOBJECTBUILDER(XMLTOOL_API,Faultactor,NULL,NULL);
+ DECL_XMLOBJECTBUILDER(XMLTOOL_API,Faultcode,NULL,NULL);
+ DECL_XMLOBJECTBUILDER(XMLTOOL_API,Faultstring,NULL,NULL);
/**
* Registers builders and validators for SOAP 1.1 classes into the runtime.