Main Page   Class Hierarchy   Compound List   File List   Compound Members   File Members   Examples  

AxisException.h

Go to the documentation of this file.
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  *
00018  */
00019 
00027 #ifndef __AXISEXCEPTION_H_OF_AXIS_INCLUDED_
00028 #define __AXISEXCEPTION_H_OF_AXIS_INCLUDED_
00029 
00030 #include <axis/server/GDefine.h>
00031 
00032 #include <string>
00033 #include <exception>
00034 #include <new>
00035 #include <typeinfo>
00036 #include <stdexcept>
00037 
00038 AXIS_CPP_NAMESPACE_START
00039 
00040 using namespace std;
00041 
00042 /*
00043  * The following enumeration is used to serve the Axis C++ codes for 
00044  * faults.
00045  */
00046 enum AXISC_EXCEPTIONS 
00047 {
00048     /* VersionMismatch faults */
00049 /*0*/    SOAP_VERSION_MISMATCH,
00050     
00051     /* MustUnderstand faults */
00052 /*1*/    SOAP_MUST_UNDERSTAND,
00053 
00054     /*The notation used for naming these exceptions is as follows
00055      *CLIENT at the beginning means when this interpreted as a soap fault
00056      *    it's fault code is CLIENT
00057      *SERVER at the beginning means when this interpreted as a soap fault
00058      *    it's fault code is SERVER
00059      *SOAP that comes next to CLIENT/SERVER means this is a soap releated
00060      *    exception
00061      *ENGINE that comes next to CLIENT/SERVER means this is a axisc++ engine
00062      *    related exception
00063      *WSDD that comes next to CLIENT/SERVER means this is a wsdd releated
00064      *    exception
00065      *TRANSPORT that comes next to CLIENT/SERVER means this is a transport releated
00066      *    exception
00067      *CONFIG that comes next to CLIENT/SERVER means this is a axisc++ configuration
00068      *    related exception
00069      */
00070      
00071     /* Client faults */
00072 /*2*/    CLIENT_SOAP_MESSAGE_INCOMPLETE,
00073 /*3*/    CLIENT_SOAP_SOAP_ACTION_EMTPY,
00074 /*4*/    CLIENT_SOAP_SOAP_CONTENT_ERROR,
00075 /*5*/    CLIENT_SOAP_NO_SOAP_METHOD,
00076 /*6*/    CLIENT_SOAP_CONTENT_NOT_SOAP,
00077 /*7*/    CLIENT_WSDD_SERVICE_NOT_FOUND,
00078 /*8*/    CLIENT_WSDD_METHOD_NOT_ALLOWED,
00079 /*9*/    CLIENT_WSDD_PARA_TYPE_MISMATCH,
00080 /*10*/    CLIENT_ENGINE_CLIENT_HANDLER_FAILED,
00081 
00082     /* Server faults */
00083 /*11*/    SERVER_ENGINE_EXCEPTION,
00084 /*12*/    SERVER_ENGINE_COULD_NOT_LOAD_SRV,
00085 /*13*/    SERVER_ENGINE_COULD_NOT_LOAD_HDL,
00086 /*14*/    SERVER_ENGINE_LOADING_TRANSPORT_FAILED,
00087 /*15*/    SERVER_ENGINE_LOADING_PARSER_FAILED,
00088 /*16*/    SERVER_ENGINE_HANDLER_FAILED,
00089 /*17*/    SERVER_ENGINE_WEBSERVICE_FAILED,
00090 /*18*/    SERVER_ENGINE_HANDLER_INIT_FAILED,
00091 /*19*/    SERVER_ENGINE_HANDLER_CREATION_FAILED,
00092 /*20*/    SERVER_ENGINE_LIBRARY_LOADING_FAILED,
00093 /*21*/    SERVER_ENGINE_HANDLER_NOT_LOADED,
00094 /*22*/    SERVER_ENGINE_HANDLER_BEING_USED,
00095 /*23*/    SERVER_ENGINE_GET_HANDLER_FAILED,
00096 /*24*/    SERVER_ENGINE_WRONG_HANDLER_TYPE,
00097 /*25*/    SERVER_CONFIG_EXCEPTION,
00098 /*26*/    SERVER_CONFIG_TRANSPORT_CONF_FAILED,
00099 /*27*/    SERVER_CONFIG_LIBRARY_PATH_EMPTY,
00100 /*28*/    SERVER_WSDD_FILE_NOT_FOUND,
00101 /*29*/    SERVER_WSDD_EXCEPTION,
00102 /*30*/    SERVER_WSDD_NO_HANDLERS_CONFIGURED,
00103 /*31*/    SERVER_SOAP_EXCEPTION,
00104 /*32*/    SERVER_TRANSPORT_EXCEPTION,
00105 /*33*/    SERVER_TRANSPORT_RECEPTION_EXCEPTION,
00106 /*34*/    SERVER_TRANSPORT_SENDING_EXCEPTION,
00107 /*35*/    SERVER_TRANSPORT_PROCESS_EXCEPTION,
00108 /*36*/    SERVER_TRANSPORT_UNKNOWN_HTTP_RESPONSE,
00109 /*37*/    SERVER_TRANSPORT_HTTP_EXCEPTION,
00110 /*38*/    SERVER_TRANSPORT_UNEXPECTED_STRING,
00111 /*39*/    SERVER_TRANSPORT_CHANNEL_INIT_ERROR,
00112 /*40*/    SERVER_TRANSPORT_SOCKET_CREATE_ERROR,
00113 /*41*/    SERVER_TRANSPORT_SOCKET_CONNECT_ERROR,
00114 /*42*/    SERVER_TRANSPORT_INVALID_SOCKET,
00115 /*43*/    SERVER_TRANSPORT_OUTPUT_STREAMING_ERROR,
00116 /*44*/    SERVER_TRANSPORT_INPUT_STREAMING_ERROR,
00117 /*45*/    SERVER_TRANSPORT_TIMEOUT_EXCEPTION,
00118 /*46*/    SERVER_TRANSPORT_TIMEOUT_EXPIRED,
00119 /*47*/    SERVER_TRANSPORT_BUFFER_EMPTY,
00120 /*48*/    SERVER_PARSE_BUFFER_EMPTY,
00121 /*49*/    SERVER_PARSE_PARSER_FAILED, 
00122 /*50*/    SERVER_PARSE_TRANSPORT_FAILED,
00123  
00124 /*51*/    SERVER_TEST_EXCEPTION,
00125 /*52*/    SERVER_UNKNOWN_ERROR,
00126     /*Following exceptions are not releated to soap faults
00127      */
00128 /*53*/    AXISC_SERVICE_THROWN_EXCEPTION,
00129 /*54*/    AXISC_UNKNOWN_ELEMENT_EXCEPTION,
00130 /*55*/    AXISC_NODE_VALUE_MISMATCH_EXCEPTION,
00131 /*56*/    AXISC_READ_CONF_EXCEPTION,
00132 
00133     /*
00134      * This FAULT_LAST is not used as a fault code, but instead is used 
00135      * internaly in the code. Developers should not use this as a fault 
00136      * code.
00137      */
00138 /*57*/    FAULT_LAST 
00139 };
00140 
00152 class STORAGE_CLASS_INFO AxisException :public exception
00153 {
00154 
00155 public:
00157     //AxisException(){};
00158 
00168     //AxisException(const int iExceptionCode);
00169 
00181     //AxisException(const int iExceptionCode, char* pcMessage);
00182 
00191     //AxisException(const exception* e);
00192 
00199     //AxisException(const exception* e, const int iExceptionCode);
00200     
00205     //AxisException(const char* pcMessage){m_sMessage = pcMessage;};
00206     
00208     virtual ~AxisException() throw(){};
00209 
00213     virtual const char* what() throw() = 0;
00214 
00224     virtual const int getExceptionCode() = 0;
00225 };
00226 
00227 AXIS_CPP_NAMESPACE_END
00228 
00229 #endif
00230 

Generated on Wed Aug 18 11:42:23 2004 for AxisC++ by doxygen1.2.18