You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by ro...@apache.org on 2003/07/15 09:05:07 UTC
cvs commit: xml-axis/c/src/soap SoapHeader.h SoapHeader.cpp SoapFault.h SoapFault.cpp SoapEnvelope.h SoapEnvelope.cpp SoapDeSerializer.h
roshan 2003/07/15 00:05:07
Modified: c/src/soap SoapHeader.h SoapHeader.cpp SoapFault.h
SoapFault.cpp SoapEnvelope.h SoapEnvelope.cpp
SoapDeSerializer.h
Log:
added code
Revision Changes Path
1.4 +7 -4 xml-axis/c/src/soap/SoapHeader.h
Index: SoapHeader.h
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapHeader.h,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- SoapHeader.h 27 Jun 2003 05:56:07 -0000 1.3
+++ SoapHeader.h 15 Jul 2003 07:05:06 -0000 1.4
@@ -92,9 +92,11 @@
class SoapHeader
{
-private:
- int serializeNamespaceDecl(string&);
- int serializeAttributes(string&);
+private:
+ int serializeNamespaceDecl(SoapSerializer& pSZ);
+ //int serializeNamespaceDecl(string&);
+ int serializeAttributes(SoapSerializer& pSZ);
+ //int serializeAttributes(string&);
list<Attribute*> m_attributes;
list<Attribute*> m_namespaceDecls;
list<HeaderBlock*> m_headerBlocks;
@@ -103,7 +105,8 @@
int addNamespaceDecl(Attribute* pAttribute);
int addAttribute(Attribute* pAttribute);
//string& serialize();
- int serialize(string&, SOAP_VERSION eSoapVersion);
+ int serialize(SoapSerializer& pSZ, SOAP_VERSION eSoapVersion);
+ //int serialize(string&, SOAP_VERSION eSoapVersion);
void addHeaderBlock(HeaderBlock* headerBlock);
SoapHeader();
virtual ~SoapHeader();
1.4 +75 -20 xml-axis/c/src/soap/SoapHeader.cpp
Index: SoapHeader.cpp
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapHeader.cpp,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- SoapHeader.cpp 27 Jun 2003 05:56:07 -0000 1.3
+++ SoapHeader.cpp 15 Jul 2003 07:05:06 -0000 1.4
@@ -66,6 +66,7 @@
//////////////////////////////////////////////////////////////////////
#include "SoapHeader.h"
+#include "SoapSerializer.h"
#include "../common/GDefine.h"
//////////////////////////////////////////////////////////////////////
@@ -105,6 +106,47 @@
m_headerBlocks.push_back(headerBlock);
}
+int SoapHeader::serialize(SoapSerializer& pSZ, SOAP_VERSION eSoapVersion)
+{
+ int iStatus= SUCCESS;
+
+ do {
+
+ pSZ << "<" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pchEnvelopePrefix << ":" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pcharWords[SKW_HEADER];
+
+ iStatus= serializeNamespaceDecl(pSZ);
+ iStatus= serializeAttributes(pSZ);
+
+ if(iStatus==FAIL) {
+ break;
+ }
+
+ pSZ<< ">";
+
+ list<HeaderBlock*>::iterator itCurrHeaderBlock= m_headerBlocks.begin();
+
+ while(itCurrHeaderBlock != m_headerBlocks.end()) {
+ iStatus= (*itCurrHeaderBlock)->serialize(pSZ);
+ if(iStatus==FAIL) {
+ break;
+ }
+ itCurrHeaderBlock++;
+ }
+
+ if(iStatus==FAIL) {
+ break;
+ }
+
+ pSZ<< "</" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pchEnvelopePrefix << ":" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pcharWords[SKW_HEADER] << ">";
+
+ } while(0);
+
+ return iStatus;
+
+}
+
+/*
+commented on 10/7/2003 3.50pm
int SoapHeader::serialize(string& sSerialized, SOAP_VERSION eSoapVersion)
{
int iStatus= SUCCESS;
@@ -143,26 +185,7 @@
return iStatus;
}
-
-/*string& SoapHeader::serialize()
-{
-
- m_strHeaderSerialized="";
-
- m_strHeaderSerialized= "<SOAP-ENV:Header>";
-
- list<HeaderBlock*>::iterator itCurrHeaderBlock= m_headerBlocks.begin();
-
- while(itCurrHeaderBlock != m_headerBlocks.end()) {
- m_strHeaderSerialized= m_strHeaderSerialized + (*itCurrHeaderBlock)->serialize();
- itCurrHeaderBlock++;
- }
-
- m_strHeaderSerialized= m_strHeaderSerialized + "</SOAP-ENV:Header>";
-
- return m_strHeaderSerialized;
-
-}*/
+*/
int SoapHeader::addAttribute(Attribute *pAttribute)
{
@@ -171,6 +194,21 @@
return SUCCESS;
}
+
+int SoapHeader::serializeAttributes(SoapSerializer& pSZ)
+{
+ list<Attribute*>::iterator itCurrAttribute= m_attributes.begin();
+
+ while(itCurrAttribute != m_attributes.end()) {
+ (*itCurrAttribute)->serialize(pSZ);
+ itCurrAttribute++;
+ }
+
+ return SUCCESS;
+}
+
+/*
+comm on 10/7/2003 3.55pm
int SoapHeader::serializeAttributes(string& sSerialized)
{
list<Attribute*>::iterator itCurrAttribute= m_attributes.begin();
@@ -182,6 +220,7 @@
return SUCCESS;
}
+*/
int SoapHeader::addNamespaceDecl(Attribute *pAttribute)
{
@@ -190,6 +229,21 @@
return SUCCESS;
}
+int SoapHeader::serializeNamespaceDecl(SoapSerializer& pSZ)
+{
+ list<Attribute*>::iterator itCurrNamespaceDecl= m_namespaceDecls.begin();
+
+ while(itCurrNamespaceDecl != m_namespaceDecls.end()) {
+
+ (*itCurrNamespaceDecl)->serialize(pSZ);
+ itCurrNamespaceDecl++;
+ }
+
+ return SUCCESS;
+}
+
+/*
+comm on 10/7/2003 3.55pm
int SoapHeader::serializeNamespaceDecl(string& sSerialized)
{
list<Attribute*>::iterator itCurrNamespaceDecl= m_namespaceDecls.begin();
@@ -202,3 +256,4 @@
return SUCCESS;
}
+*/
1.3 +5 -3 xml-axis/c/src/soap/SoapFault.h
Index: SoapFault.h
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapFault.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SoapFault.h 27 Jun 2003 04:15:00 -0000 1.2
+++ SoapFault.h 15 Jul 2003 07:05:06 -0000 1.3
@@ -77,15 +77,17 @@
#include <map>
#include "SoapFaults.h"
+class SoapSerializer;
+
using namespace std;
class SoapFault
{
public:
static SoapFault* getSoapFault(int);
- static void initialize();
- //string& serialize();
- int serialize(string&);
+ static void initialize();
+ int serialize(SoapSerializer& pSZ);
+ //int serialize(string&);
virtual ~SoapFault();
private:
SoapFault();
1.3 +27 -21 xml-axis/c/src/soap/SoapFault.cpp
Index: SoapFault.cpp
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapFault.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SoapFault.cpp 27 Jun 2003 04:23:15 -0000 1.2
+++ SoapFault.cpp 15 Jul 2003 07:05:06 -0000 1.3
@@ -66,6 +66,7 @@
//////////////////////////////////////////////////////////////////////
#include "SoapFault.h"
+#include "SoapSerializer.h"
#include "SoapEnvVersions.h"
#include "../common/GDefine.h"
@@ -114,6 +115,31 @@
return SUCCESS;
}*/
+int SoapFault::serialize(SoapSerializer& pSZ)
+{
+ //written according to SOAP Version 1.1
+
+ int iStatus= SUCCESS;
+
+ pSZ << "<SOAP-ENV:Fault>";
+ pSZ << "<faultcode>" << m_sFaultcode.c_str()<< "</faultcode>";
+ pSZ << "<faultstring>"<<m_sFaultstring.c_str()<<"</faultstring>";
+
+ if(!m_sFaultactor.empty()) {
+ pSZ<< "<faultactor>"<< m_sFaultactor.c_str() <<"</faultactor>";
+ }
+
+ if(!m_sDetail.empty()) {
+ pSZ<< "<detail>" << m_sDetail.c_str() <<"</detail>";
+ }
+
+ pSZ<< "</SOAP-ENV:Fault>";
+
+ return iStatus;
+}
+
+/*
+comm on 11/7/2003 at 9.30am
int SoapFault::serialize(string& sSerialized)
{
//written according to SOAP Version 1.1
@@ -136,27 +162,7 @@
return iStatus;
}
-
-/*string& SoapFault::serialize()
-{
- //written according to SOAP Version 1.2 Part 1 specification
- // 17 December 2001 Working Draft.
-
- m_sFaultSerialized="";
-
- m_sFaultSerialized= "<faultcode>"+ m_sFaultcode+ "</faultcode>"+
- "<faultstring>"+m_sFaultstring+"</faultstring>";
-
- if(!m_sFaultactor.empty()) {
- m_sFaultSerialized+= "<faultactor>"+ m_sFaultactor +"</faultactor>";
- }
-
- if(!m_sDetail.empty()) {
- m_sFaultSerialized+= "<detail>"+ m_sDetail +"</detail>";
- }
-
- return m_sFaultSerialized;
-}*/
+*/
void SoapFault::initialize()
{
1.3 +7 -7 xml-axis/c/src/soap/SoapEnvelope.h
Index: SoapEnvelope.h
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapEnvelope.h,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SoapEnvelope.h 27 Jun 2003 04:31:39 -0000 1.2
+++ SoapEnvelope.h 15 Jul 2003 07:05:06 -0000 1.3
@@ -81,10 +81,10 @@
friend class SoapSerializer;
private:
- int serializeNamespaceDecl(string&);
- //string serializeNamespaceDecl();
- int serializeAttributes(string&);
- //string serializeAttributes();
+ int serializeNamespaceDecl(SoapSerializer& pSZ);
+ //int serializeNamespaceDecl(string&);
+ int serializeAttributes(SoapSerializer& pSZ);
+ //int serializeAttributes(string&);
SoapHeader *m_pSoapHeader;
SoapBody *m_pSoapBody;
//string m_strEnvelopSerialized;
@@ -95,9 +95,9 @@
public:
int setPrefix(const string& prefix);
int addNamespaceDecl(Attribute* pAttribute);
- int addAttribute(Attribute* pAttribute);
- int serialize(string&, SOAP_VERSION iSoapVersion);
- //string& serialize()
+ int addAttribute(Attribute* pAttribute);
+ int serialize(SoapSerializer& pSZ, SOAP_VERSION eSoapVersion);
+ //int serialize(string &sSerialized, SOAP_VERSION eSoapVersion);
void setSoapBody(SoapBody* soapBody);
void setSoapHeader(SoapHeader* soapHeader);
SoapEnvelope();
1.3 +64 -61 xml-axis/c/src/soap/SoapEnvelope.cpp
Index: SoapEnvelope.cpp
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapEnvelope.cpp,v
retrieving revision 1.2
retrieving revision 1.3
diff -u -r1.2 -r1.3
--- SoapEnvelope.cpp 27 Jun 2003 04:31:40 -0000 1.2
+++ SoapEnvelope.cpp 15 Jul 2003 07:05:06 -0000 1.3
@@ -67,6 +67,7 @@
#include "SoapEnvelope.h"
#include "../common/GDefine.h"
+#include "SoapSerializer.h"
#include <stdio.h>
@@ -123,7 +124,49 @@
m_pSoapBody= soapBody;
}
-int SoapEnvelope::serialize(string& sSerialized, SOAP_VERSION eSoapVersion)
+int SoapEnvelope::serialize(SoapSerializer& pSZ, SOAP_VERSION eSoapVersion)
+{
+
+ int iStatus= SUCCESS;
+
+ do {
+
+ pSZ << "<" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pchEnvelopePrefix << ":" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pcharWords[SKW_ENVELOPE];
+
+
+ serializeNamespaceDecl(pSZ);
+ serializeAttributes(pSZ);
+
+ pSZ << ">";
+
+ if(m_pSoapHeader!=NULL) {
+ iStatus= m_pSoapHeader->serialize(pSZ, eSoapVersion);
+ if(iStatus == FAIL) {
+ break;
+ }
+ }
+
+ if(m_pSoapBody!=NULL) {
+ iStatus= m_pSoapBody->serialize(pSZ, eSoapVersion);
+ if(iStatus == FAIL) {
+ break;
+ }
+ } else {
+ //throw exception
+ //iStatus = FAIL;
+ }
+
+ pSZ << "</" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pchEnvelopePrefix << ":" << g_sObjSoapEnvVersionsStruct[eSoapVersion].pcharWords[SKW_ENVELOPE] << ">";
+
+ pSZ.flushSerializedBuffer();
+ } while(0);
+
+ return iStatus;
+}
+
+/*
+commented on 10Jul2003
+int SoapEnvelope::serialize(string &sSerialized, SOAP_VERSION eSoapVersion)
{
int iStatus= SUCCESS;
@@ -157,38 +200,6 @@
} while(0);
return iStatus;
-}
-
-/*string& SoapEnvelope::serialize()
-{
- m_strEnvelopSerialized= "<"+ m_sPrefix+ ":"+ m_sLocalname;
-
- string sNamespaceDeclSerialized= serializeNamespaceDecl();
- string sAttributeSerialized= serializeAttributes();
-
- if(!sNamespaceDeclSerialized.empty()) {
- m_strEnvelopSerialized+= " "+ sNamespaceDeclSerialized;
- }
-
- if(!sAttributeSerialized.empty()) {
- m_strEnvelopSerialized+= " "+ sAttributeSerialized;
- }
-
- m_strEnvelopSerialized+= ">";
-
- if(m_pSoapHeader!=NULL) {
- m_strEnvelopSerialized= m_strEnvelopSerialized+ m_pSoapHeader->serialize();
- }
-
- if(m_pSoapBody!=NULL) {
- m_strEnvelopSerialized= m_strEnvelopSerialized+ m_pSoapBody->serialize();
- } else {
- //throw exception
- }
-
- m_strEnvelopSerialized+= "</"+ m_sPrefix+ ":"+ m_sLocalname+ ">";
-
- return m_strEnvelopSerialized;
}*/
/*
@@ -213,12 +224,12 @@
return SUCCESS;
}
-int SoapEnvelope::serializeAttributes(string& sSerialized)
+int SoapEnvelope::serializeAttributes(SoapSerializer& pSZ)
{
list<Attribute*>::iterator itCurrAttribute= m_attributes.begin();
while(itCurrAttribute != m_attributes.end()) {
- (*itCurrAttribute)->serialize(sSerialized);
+ (*itCurrAttribute)->serialize(pSZ);
itCurrAttribute++;
}
@@ -226,58 +237,50 @@
}
/*
-string SoapEnvelope::serializeAttributes()
-{
- string strAttrSerialized="";
-
+commented on 10Jul2003 3.30 pm
+int SoapEnvelope::serializeAttributes(string& sSerialized)
+{
list<Attribute*>::iterator itCurrAttribute= m_attributes.begin();
while(itCurrAttribute != m_attributes.end()) {
-
- strAttrSerialized= strAttrSerialized+ (*itCurrAttribute)->serialize();
- itCurrAttribute++;
-
- if(itCurrAttribute != m_attributes.end()) {
- strAttrSerialized= strAttrSerialized+ " ";
- }
+ (*itCurrAttribute)->serialize(sSerialized);
+ itCurrAttribute++;
}
- return strAttrSerialized;
+ return SUCCESS;
}
*/
-int SoapEnvelope::serializeNamespaceDecl(string& sSerialized)
+int SoapEnvelope::serializeNamespaceDecl(SoapSerializer& pSZ)
{
list<Attribute*>::iterator itCurrNamespaceDecl= m_namespaceDecls.begin();
while(itCurrNamespaceDecl != m_namespaceDecls.end()) {
- (*itCurrNamespaceDecl)->serialize(sSerialized);
+ (*itCurrNamespaceDecl)->serialize(pSZ);
itCurrNamespaceDecl++;
}
return SUCCESS;
}
-/*string SoapEnvelope::serializeNamespaceDecl()
-{
- string strNamespaceDeclSerialized="";
+/*
+commented on 10Jul2003 3.30 pm
+int SoapEnvelope::serializeNamespaceDecl(string& sSerialized)
+{
list<Attribute*>::iterator itCurrNamespaceDecl= m_namespaceDecls.begin();
- while(itCurrNamespaceDecl != m_namespaceDecls.end()) {
-
- strNamespaceDeclSerialized= strNamespaceDeclSerialized+ (*itCurrNamespaceDecl)->serialize();
- itCurrNamespaceDecl++;
+ while(itCurrNamespaceDecl != m_namespaceDecls.end()) {
- if(itCurrNamespaceDecl != m_namespaceDecls.end()) {
- strNamespaceDeclSerialized= strNamespaceDeclSerialized+ " ";
- }
+ (*itCurrNamespaceDecl)->serialize(sSerialized);
+ itCurrNamespaceDecl++;
}
- return strNamespaceDeclSerialized;
-}*/
+ return SUCCESS;
+}
+*/
/*
* This method is needed in the situation where we create and fill a
1.2 +2 -1 xml-axis/c/src/soap/SoapDeSerializer.h
Index: SoapDeSerializer.h
===================================================================
RCS file: /home/cvs/xml-axis/c/src/soap/SoapDeSerializer.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -u -r1.1 -r1.2
--- SoapDeSerializer.h 25 Jun 2003 08:14:10 -0000 1.1
+++ SoapDeSerializer.h 15 Jul 2003 07:05:06 -0000 1.2
@@ -78,8 +78,9 @@
#include "SoapBody.h"
#include "SoapFault.h"
#include "../common/Param.h"
+#include "../common/ISoapDeSerializer.h"
-class SoapDeSerializer
+class SoapDeSerializer : public ISoapDeSerializer
{
private:
XMLStreamHandler* m_pHandler;