Main Page   Class Hierarchy   Compound List   File List   Compound Members   Examples  

AxisEngine.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 #ifdef WIN32
00018 #pragma warning (disable : 4786)
00019 #endif
00020 
00021 #if !defined(__AXISENGINE_OF_AXIS_INCLUDED__)
00022 #define __AXISENGINE_OF_AXIS_INCLUDED__
00023 
00024 
00025 #include "GDefine.h"
00026 #include "Packet.h"
00027 #include "SoapSerializer.h"
00028 #include "SoapDeSerializer.h"
00029 #include "BasicHandler.h"
00030 #include "MessageData.h"
00031 #include "HandlerChain.h"
00032 
00033 /*
00034  *   @class AxisEngine
00035  *   @brief
00036  *
00037  *   @author Susantha Kumara (skumara@virtusa.com)
00038  */
00039 
00040 class AxisEngine 
00041 {
00042 protected:    
00043     SoapSerializer* m_pSZ;
00044     SoapDeSerializer* m_pDZ;
00045     HandlerChain* m_pGReqFChain;
00046     HandlerChain* m_pGResFChain;
00047     HandlerChain* m_pTReqFChain;
00048     HandlerChain* m_pTResFChain;
00049     HandlerChain* m_pSReqFChain;
00050     HandlerChain* m_pSResFChain;
00051     MessageData* m_pMsgData;
00052     PROVIDERTYPE m_CurrentProviderType;
00053 public:
00054     static int m_bServer;
00055 public:
00056     AxisEngine();
00057     virtual ~AxisEngine();
00058     virtual int initialize();
00059     virtual void unInitialize();
00060     virtual int process(SOAPTransport* pSoap)=0;
00061 protected:
00062     virtual int invoke(MessageData* pMsg)=0;
00063     virtual void onFault(MessageData* pMsg)=0;
00064     virtual int initializeHandlers(string& sSessionId, 
00065         AXIS_PROTOCOL_TYPE protocol);
00066 };
00067 
00068 #endif
00069 

Generated on Tue Jun 15 19:13:22 2004 for axiscpp by doxygen1.2.18