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

AxisException.hpp

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/GDefine.hpp>
00031 #include <string>
00032 #include <exception>
00033 #include <new>
00034 #include <typeinfo>
00035 #include <stdexcept>
00036 
00037 AXIS_CPP_NAMESPACE_START
00038 using namespace std;
00039 
00040 /*
00041  * The following enumeration is used to serve the Axis C++ codes for 
00042  * faults.
00043  */
00044 enum AXISC_EXCEPTIONS 
00045 {
00046     /* VersionMismatch faults */
00047 /*0*/    SOAP_VERSION_MISMATCH,
00048     
00049     /* MustUnderstand faults */
00050 /*1*/    SOAP_MUST_UNDERSTAND,
00051 
00052     /*The notation used for naming these exceptions is as follows
00053      *CLIENT at the beginning means when this interpreted as a soap fault
00054      *    it's fault code is CLIENT
00055      *SERVER at the beginning means when this interpreted as a soap fault
00056      *    it's fault code is SERVER
00057      *SOAP that comes next to CLIENT/SERVER means this is a soap releated
00058      *    exception
00059      *ENGINE that comes next to CLIENT/SERVER means this is a axisc++ engine
00060      *    related exception
00061      *WSDD that comes next to CLIENT/SERVER means this is a wsdd releated
00062      *    exception
00063      *TRANSPORT that comes next to CLIENT/SERVER means this is a transport releated
00064      *    exception
00065      *CONFIG that comes next to CLIENT/SERVER means this is a axisc++ configuration
00066      *    related exception
00067      */
00068      
00069     /* Client faults */
00070 /*2*/    CLIENT_SOAP_MESSAGE_INCOMPLETE,
00071 /*3*/    CLIENT_SOAP_SOAP_ACTION_EMTPY,
00072 /*4*/    CLIENT_SOAP_SOAP_CONTENT_ERROR,
00073 /*5*/    CLIENT_SOAP_NO_SOAP_METHOD,
00074 /*6*/    CLIENT_SOAP_CONTENT_NOT_SOAP,
00075 /*7*/    CLIENT_WSDD_SERVICE_NOT_FOUND,
00076 /*8*/    CLIENT_WSDD_METHOD_NOT_ALLOWED,
00077 /*9*/    CLIENT_WSDD_PARA_TYPE_MISMATCH,
00078 /*10*/   CLIENT_ENGINE_CLIENT_HANDLER_FAILED,
00079 /*11*/   CLIENT_TRANSPORT_EXCEPTION,
00080 /*12*/   CLIENT_TRANSPORT_OPEN_CONNECTION_FAILED,
00081 /*13*/   CLIENT_TRANSPORT_TYPE_MISMATCH,
00082 /*14*/   CLIENT_TRANSPORT_HAS_NO_SECURE_TRANSPORT_LAYER,
00083 /*15*/   CLIENT_SSLCHANNEL_RECEPTION_EXCEPTION,
00084 /*16*/   CLIENT_SSLCHANNEL_SENDING_EXCEPTION,
00085 /*17*/   CLIENT_SSLCHANNEL_CHANNEL_INIT_ERROR,
00086 /*18*/   CLIENT_SSLCHANNEL_SOCKET_CREATE_ERROR,
00087 /*19*/   CLIENT_SSLCHANNEL_SOCKET_CONNECT_ERROR,
00088 /*20*/   CLIENT_SSLCHANNEL_INVALID_SOCKET_ERROR,
00089 /*21*/   CLIENT_SSLCHANNEL_CONTEXT_CREATE_ERROR,
00090 /*22*/   CLIENT_SSLCHANNEL_ERROR,
00091 
00092     /* Server faults */
00093 /*23*/    SERVER_ENGINE_EXCEPTION,
00094 /*24*/    SERVER_ENGINE_COULD_NOT_LOAD_SRV,
00095 /*25*/    SERVER_ENGINE_COULD_NOT_LOAD_HDL,
00096 /*26*/    SERVER_ENGINE_LOADING_TRANSPORT_FAILED,
00097 /*27*/    SERVER_ENGINE_LOADING_PARSER_FAILED,
00098 /*28*/    SERVER_ENGINE_HANDLER_FAILED,
00099 /*29*/    SERVER_ENGINE_WEBSERVICE_FAILED,
00100 /*30*/    SERVER_ENGINE_HANDLER_INIT_FAILED,
00101 /*31*/    SERVER_ENGINE_HANDLER_CREATION_FAILED,
00102 /*32*/    SERVER_ENGINE_LIBRARY_LOADING_FAILED,
00103 /*33*/    SERVER_ENGINE_HANDLER_NOT_LOADED,
00104 /*34*/    SERVER_ENGINE_HANDLER_BEING_USED,
00105 /*35*/    SERVER_ENGINE_GET_HANDLER_FAILED,
00106 /*36*/    SERVER_ENGINE_WRONG_HANDLER_TYPE,
00107 /*37*/    SERVER_CONFIG_EXCEPTION,
00108 /*38*/    SERVER_CONFIG_TRANSPORT_CONF_FAILED,
00109 /*39*/    SERVER_CONFIG_LIBRARY_PATH_EMPTY,
00110 /*40*/    SERVER_WSDD_FILE_NOT_FOUND,
00111 /*41*/    SERVER_WSDD_EXCEPTION,
00112 /*42*/    SERVER_WSDD_NO_HANDLERS_CONFIGURED,
00113 /*43*/    SERVER_SOAP_EXCEPTION,
00114 /*44*/    SERVER_TRANSPORT_EXCEPTION,
00115 /*45*/    SERVER_TRANSPORT_RECEPTION_EXCEPTION,
00116 /*46*/    SERVER_TRANSPORT_SENDING_EXCEPTION,
00117 /*47*/    SERVER_TRANSPORT_PROCESS_EXCEPTION,
00118 /*48*/    SERVER_TRANSPORT_UNKNOWN_HTTP_RESPONSE,
00119 /*49*/    SERVER_TRANSPORT_HTTP_EXCEPTION,
00120 /*50*/    SERVER_TRANSPORT_UNEXPECTED_STRING,
00121 /*51*/    SERVER_TRANSPORT_CHANNEL_INIT_ERROR,
00122 /*52*/    SERVER_TRANSPORT_SOCKET_CREATE_ERROR,
00123 /*53*/    SERVER_TRANSPORT_SOCKET_CONNECT_ERROR,
00124 /*54*/    SERVER_TRANSPORT_INVALID_SOCKET,
00125 /*55*/    SERVER_TRANSPORT_OUTPUT_STREAMING_ERROR,
00126 /*56*/    SERVER_TRANSPORT_INPUT_STREAMING_ERROR,
00127 /*57*/    SERVER_TRANSPORT_TIMEOUT_EXCEPTION,
00128 /*58*/    SERVER_TRANSPORT_TIMEOUT_EXPIRED,
00129 /*59*/    SERVER_TRANSPORT_LOADING_SSLCHANNEL_FAILED,
00130 /*60*/    SERVER_TRANSPORT_BUFFER_EMPTY,
00131 /*61*/    SERVER_PARSE_BUFFER_EMPTY,
00132 /*62*/    SERVER_PARSE_PARSER_FAILED, 
00133 /*63*/    SERVER_PARSE_TRANSPORT_FAILED,
00134  
00135 /*64*/    SERVER_TEST_EXCEPTION,
00136 /*65*/    SERVER_UNKNOWN_ERROR,
00137     /*Following exceptions are not releated to soap faults
00138      */
00139 /*66*/    AXISC_SERVICE_THROWN_EXCEPTION,
00140 /*67*/    AXISC_UNKNOWN_ELEMENT_EXCEPTION,
00141 /*68*/    AXISC_NODE_VALUE_MISMATCH_EXCEPTION,
00142 /*69*/    AXISC_READ_CONF_EXCEPTION,
00143 
00144     /*
00145      * This FAULT_LAST is not used as a fault code, but instead is used 
00146      * internaly in the code. Developers should not use this as a fault 
00147      * code.
00148      */
00149 /*70*/    FAULT_LAST 
00150 };
00151 
00163 class STORAGE_CLASS_INFO AxisException :public exception
00164 {
00165 
00166 public:
00168     //AxisException(){};
00169 
00179     //AxisException(const int iExceptionCode);
00180 
00192     //AxisException(const int iExceptionCode, char* pcMessage);
00193 
00202     //AxisException(const exception* e);
00203 
00210     //AxisException(const exception* e, const int iExceptionCode);
00211     
00216     //AxisException(const char* pcMessage){m_sMessage = pcMessage;};
00217     
00219     virtual ~AxisException() throw(){};
00220 
00224     virtual const char* what() throw() = 0;
00225 
00235     virtual const int getExceptionCode() = 0;
00236 };
00237 
00238 AXIS_CPP_NAMESPACE_END
00239 
00240 #endif
00241 

Generated on Fri Dec 3 18:43:41 2004 for AxisC++ by doxygen1.2.18