Main Page   Class Hierarchy   Compound List   File List   Compound Members   Related Pages  

SoapEnvelope.h

00001 /*
00002  *   Copyright 2003-2004 The Apache Software Foundation.
00003  *
00004  *   Licensed under the Apache License, Version 2.0 (the "License");
00005  *   you may not use this file except in compliance with the License.
00006  *   You may obtain a copy of the License at
00007  *
00008  *       http://www.apache.org/licenses/LICENSE-2.0
00009  *
00010  *   Unless required by applicable law or agreed to in writing, software
00011  *   distributed under the License is distributed on an "AS IS" BASIS,
00012  *   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
00013  *   See the License for the specific language governing permissions and
00014  *   limitations under the License.
00015  */
00016 
00017 #if !defined(AXIS_SOAPENVELOPE_H__INCLUDED_)
00018 #define AXIS_SOAPENVELOPE_H__INCLUDED_
00019 
00020 #include <axis/server/SoapHeader.h>
00021 #include "SoapBody.h"
00022 #include <axis/server/SoapEnvVersions.h>
00023 
00024 /*
00025  * @class SoapEnvelope
00026  * @brief interface for the SoapEnvelope class.
00027  *
00028  * @author Roshan Weerasuriya (roshan@jkcs.slt.lk)
00029  */
00030 
00031 class SoapEnvelope  
00032 {
00033 friend class SoapSerializer;
00034 
00035 private:
00036     int serializeStandardNamespaceDecl(SoapSerializer& pSZ);
00037     int addStandardNamespaceDecl(const Attribute* pAttribute);
00038     int serializeNamespaceDecl(SoapSerializer& pSZ);
00039     /* int serializeNamespaceDecl(string&); */
00040     int serializeAttributes(SoapSerializer& pSZ);
00041     /* int serializeAttributes(string&); */
00042     SoapHeader *m_pSoapHeader;
00043     SoapBody *m_pSoapBody;
00044     /* string m_strEnvelopSerialized; */
00045     list<Attribute*> m_attributes;
00046     list<Attribute*> m_namespaceDecls;
00047     list<const Attribute*> m_StandardNamespaceDecls;
00048     AxisString m_sPrefix;    
00049 
00050 public:    
00051 
00052     int initializeForTesting(SOAP_VERSION eSoapVersion);
00053     int setPrefix(const AxisChar* prefix);
00054     int addNamespaceDecl(Attribute* pAttribute);
00055     int addAttribute(Attribute* pAttribute);    
00056     int serialize(SoapSerializer& pSZ, SOAP_VERSION eSoapVersion);
00057     /* int serialize(string &sSerialized, SOAP_VERSION eSoapVersion); */
00058     void setSoapBody(SoapBody* soapBody);
00059     void setSoapHeader(SoapHeader* soapHeader);
00060     SoapEnvelope();
00061     virtual ~SoapEnvelope();
00062 };
00063 
00064 #endif

Generated on Fri Apr 9 12:21:29 2004 for axiscpp by doxygen1.2.18