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 du...@apache.org on 2005/07/05 11:33:34 UTC

cvs commit: ws-axis/c/tools/org/apache/axis/tools/cbindings cbindinggenerator.conf

dushshantha    2005/07/05 02:33:34

  Modified:    c/include/axis AxisException.hpp
               c/src/common AxisConfigException.cpp AxisConfigException.h
                        AxisGenException.cpp AxisGenException.h
               c/src/engine Axis.cpp AxisEngineException.cpp
                        AxisEngineException.h
               c/src/engine/client ClientAxisEngine.cpp
               c/src/soap AxisSoapException.cpp AxisSoapException.h
               c/src/transport/axis3 HTTPTransportException.cpp
                        HTTPTransportException.hpp
               c/src/wsdd AxisWsddException.cpp AxisWsddException.h
               c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp
                        ExceptionHeaderWriter.java ExceptionWriter.java
               c/src/xml AxisParseException.cpp AxisParseException.h
               c/tools/org/apache/axis/tools/cbindings
                        cbindinggenerator.conf
  Log:
  Made some modifications to the current Exception model to suit Object Orientation.
  
  Revision  Changes    Path
  1.9       +28 -5     ws-axis/c/include/axis/AxisException.hpp
  
  Index: AxisException.hpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/include/axis/AxisException.hpp,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- AxisException.hpp	15 Jun 2005 20:24:22 -0000	1.8
  +++ AxisException.hpp	5 Jul 2005 09:33:31 -0000	1.9
  @@ -176,9 +176,12 @@
   class STORAGE_CLASS_INFO AxisException :public exception
   {
   
  +
  +
  +
   public:
       /** No parameter constructor*/
  -    //AxisException(){};
  +    AxisException(){};
   
       /** This can be used to throw an exception with the exception code
         * which is defined in the AxisException.h file, under AXISC_EXCEPTIONS
  @@ -202,7 +205,13 @@
         * @example throw AxisException(AXISC_NODE_VALUE_MISMATCH_EXCEPTION, 
               "Some additional exception info");
         */
  -    //AxisException(const int iExceptionCode, char* pcMessage);
  +    AxisException(const int iExceptionCode, const char* pcMessage = NULL):m_iExceptionCode(iExceptionCode)
  +	{
  +		if(pcMessage)
  +			m_sMessage = std::string(pcMessage);
  +		else
  +			m_sMessage = "";
  +	}
   
       /** This can be used to throw an exception with another exception as a
         * parameter. One situation in which this can be used is when we catch
  @@ -212,7 +221,7 @@
         *
         * @example throw AxisException(std::bad_alloc);
         */
  -    //AxisException(const exception* e);
  +    AxisException(const AxisException& e):m_iExceptionCode(e.m_iExceptionCode), m_sMessage(e.m_sMessage){};
   
       /** This accept two parameters, both an exception code an exception object
         * derived from std::exception
  @@ -234,7 +243,7 @@
       /** This method is defined in std::exception. AxisException and derived
         * classes will override this to print exception messages
         */
  -    virtual const char* what() throw() = 0;
  +    virtual const char* what() const throw() { return m_sMessage.c_str (); };
   
       /** This can be called to get the exception code which is passed
         * in the constructor. This returns -1 value when the 
  @@ -245,9 +254,23 @@
         *
         * @return exception message
         */
  -    virtual const int getExceptionCode() = 0;
  +    virtual const int getExceptionCode() const { return m_iExceptionCode; }
  +	
  +	const char* getMessage() const { return what(); }
  +
  +protected:
  +	
  +	/**
  +	  *These 2 data members are common to all the inherited classes of this base class.
  +	  *The string variable m_sMessage is used to store the Exception message
  +	  *The integer variable m_iExceptionCode stores the Exception code
  +      */
  +
  +	std::string m_sMessage;
  +    int m_iExceptionCode;
   };
   
  +
   AXIS_CPP_NAMESPACE_END
   
   #endif
  
  
  
  1.16      +11 -73    ws-axis/c/src/common/AxisConfigException.cpp
  
  Index: AxisConfigException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/common/AxisConfigException.cpp,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- AxisConfigException.cpp	23 Sep 2004 15:12:56 -0000	1.15
  +++ AxisConfigException.cpp	5 Jul 2005 09:33:32 -0000	1.16
  @@ -28,76 +28,24 @@
   
   AXIS_CPP_NAMESPACE_START
   
  -AxisConfigException::AxisConfigException()
  +AxisConfigException::AxisConfigException(const int iExceptionCode, char* pcMessage):AxisException(iExceptionCode)
   {
  -    processException(SERVER_CONFIG_EXCEPTION);
  +	AxisString sMessage = "";
  +	if (pcMessage) 
  +	{
  +		sMessage = pcMessage;
  +	}
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
   
  -AxisConfigException::AxisConfigException (const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  -}
  -
  -AxisConfigException::AxisConfigException(const int iExceptionCode, char* pcMessage)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage);
  -}
  -
  -AxisConfigException::AxisConfigException (const exception* e)
  -{
  -    m_iExceptionCode = -1;
  -    processException (e);
  -}
  -
  -AxisConfigException::AxisConfigException (const exception* e, const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (e, iExceptionCode);
  -}
  +AxisConfigException::AxisConfigException (const AxisConfigException& e):AxisException(e)
  +{}
   
   AxisConfigException::~AxisConfigException() throw ()
  -{
  -
  -}
  -
  -void AxisConfigException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage(iExceptionCode) + ":" + getMessage (e);
  -}
  -
  -void AxisConfigException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "AxisConfigException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  -
  -void AxisConfigException::processException (const exception* e)
  -{
  -    m_sMessage += "AxisConfigException:" + getMessage (e);
  -}
  -
  -void AxisConfigException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  +{}
   
  -void AxisConfigException::processException(const int iExceptionCode, char* pcMessage)
  -{
  -    AxisString sMessage = pcMessage;
  -    m_sMessage = getMessage(iExceptionCode) + " " + sMessage;
  -    if(pcMessage)
  -        delete pcMessage;
  -}
   
  -const string& AxisConfigException::getMessage (const exception* objException)
  -{
  -    static string objExDetail = objException->what();
  -
  -    return objExDetail;
  -}
  -
  -const string& AxisConfigException::getMessage (const int iExceptionCode)
  +const string AxisConfigException::getMessageForExceptionCode(const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -116,14 +64,4 @@
       return m_sMessage;
   }
   
  -const char* AxisConfigException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int AxisConfigException::getExceptionCode()
  -{
  -    return m_iExceptionCode;
  -}
  -
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.8       +5 -16     ws-axis/c/src/common/AxisConfigException.h
  
  Index: AxisConfigException.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/common/AxisConfigException.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- AxisConfigException.h	23 Nov 2004 17:21:02 -0000	1.7
  +++ AxisConfigException.h	5 Jul 2005 09:33:32 -0000	1.8
  @@ -32,24 +32,13 @@
   {
   
   public:
  -    AxisConfigException();
  -    AxisConfigException(const int iExceptionCode);
  -    AxisConfigException(const int iExceptionCode, char* pcMessage);
  -    AxisConfigException(const exception* e);
  -    AxisConfigException(const exception* e, const int iExceptionCode);
  +    AxisConfigException(const int iExceptionCode, char* pcMessage = NULL);
  +    AxisConfigException(const AxisConfigException& e);
       virtual ~AxisConfigException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
  -    const string& getMessage(const exception* e);
  -    const string& getMessage(const int iExceptionCode);
  +        
   private:
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -    void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage); 
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode(const int iExceptionCode);
  +	
   };
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.13      +12 -72    ws-axis/c/src/common/AxisGenException.cpp
  
  Index: AxisGenException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/common/AxisGenException.cpp,v
  retrieving revision 1.12
  retrieving revision 1.13
  diff -u -r1.12 -r1.13
  --- AxisGenException.cpp	23 Mar 2005 15:44:58 -0000	1.12
  +++ AxisGenException.cpp	5 Jul 2005 09:33:32 -0000	1.13
  @@ -27,70 +27,23 @@
   
   //using namespace std;
   
  -AxisGenException::AxisGenException (const int iExceptionCode)
  +AxisGenException::AxisGenException(const int iExceptionCode, char* pcMessage):AxisException(iExceptionCode)
   {
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  +	AxisString sMessage = "";
  +	if (pcMessage) 
  +	{
  +		sMessage = pcMessage;
  +	}
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
   
  -AxisGenException::AxisGenException(const int iExceptionCode, char* pcMessage, bool deleteInputMsg)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage, deleteInputMsg);
  -}
  -
  -AxisGenException::AxisGenException (const exception* e)
  -{
  -    m_iExceptionCode = -1;
  -    processException (e);
  -}
  -
  -AxisGenException::AxisGenException (const exception* e, const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (e, iExceptionCode);
  -}
  -
  -AxisGenException::AxisGenException(const char* pcMessage)
  -{
  -    m_sMessage = pcMessage;
  -/*  if(pcMessage) delete pcMessage; */
  -}
  -
  -void AxisGenException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage(iExceptionCode) + ":" + getMessage (e);
  -}
  -
  -void AxisGenException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "AxisGenException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  -
  -void AxisGenException::processException (const exception* e)
  -{
  -    m_sMessage += "AxisGenException:" + getMessage (e);
  -}
  -
  -void AxisGenException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  -
  -void AxisGenException::processException(const int iExceptionCode, char* pcMessage, bool deleteInputMsg)
  -{
  -    AxisString sMessage = pcMessage;
  -    m_sMessage = getMessage(iExceptionCode) + sMessage;
  -    if(deleteInputMsg && pcMessage)
  -        delete [] pcMessage;
  -}
  +AxisGenException::AxisGenException (AxisGenException& e):AxisException(e)
  +{}
   
  -const string AxisGenException::getMessage (const exception* objException)
  -{
  -    return objException->what();
  -}
  +AxisGenException::~AxisGenException() throw ()
  +{}
   
  -const string AxisGenException::getMessage (const int iExceptionCode)
  +const string AxisGenException::getMessageForExceptionCode (const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -110,19 +63,6 @@
       return m_sMessage;
   }
   
  -AxisGenException::~AxisGenException() throw ()
  -{
   
  -}
  -
  -const char* AxisGenException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int AxisGenException::getExceptionCode()
  -{
  -    return m_iExceptionCode; 
  -}
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.4       +5 -62     ws-axis/c/src/common/AxisGenException.h
  
  Index: AxisGenException.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/common/AxisGenException.h,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- AxisGenException.h	23 Mar 2005 15:44:58 -0000	1.3
  +++ AxisGenException.h	5 Jul 2005 09:33:32 -0000	1.4
  @@ -34,70 +34,13 @@
   {
   
   public:
  -    AxisGenException();
  -
  -    /** This can be used to throw an exception with the exception code
  -      * which is defined in the AxisException.h file, under AXISC_EXCEPTIONS
  -      * type. Axis C++ exception model heavily use this.
  -      *
  -      * @param Exception code which is defined in the AxisException.h file,
  -      * under AXISC_EXCEPTIONS type.
  -      *
  -      * @example throw AxisGenException(AXISC_NODE_VALUE_MISMATCH_EXCEPTION);
  -      */
  -    AxisGenException(const int iExceptionCode);
  -    /** This can be used to throw an exception with exception code which is
  -      * is defined in the AxisException.h file, under AXISC_EXCEPTIONS type.
  -      * An additional description of the exception could be appended.
  -      *
  -      * @param Exception code which is defined in the AxisException.h file,
  -      *  under AXISC_EXCEPTIONS type.
  -      * @param A char pointer that will point to an exception message.
  -	  * @param Whether to delete[] the pcMessage that is passed in, once it is copied
  -      *
  -      * @example throw AxisGenException(AXISC_NODE_VALUE_MISMATCH_EXCEPTION,
  -            "Some additional exception info");
  -      */
  -
  -    AxisGenException(const int iExceptionCode, char* pcMessage, bool deleteInputMsg=true);
  -
  -    /** This can be used to throw an exception with another exception as a
  -      * parameter. One situation in which this can be used is when we catch
  -      * a standard exception like std::bad_alloc
  -      *
  -      * @param An exception class derived from std::exception
  -      *
  -      * @example throw AxisGenException(std::bad_alloc);
  -      */
  -    AxisGenException(const exception* e);
  -
  -    /** This accept two parameters, both an exception code an exception object
  -      * derived from std::exception
  -      *
  -      * @param An exception class derived from std::exception
  -      * @param An exception code
  -      */
  -    AxisGenException(const exception* e, const int iExceptionCode);
  -
  -    /** This accept an exception message
  -      *
  -      * @param An exception message
  -      */
  -    AxisGenException(const char* pcMessage);
  +    AxisGenException(const int iExceptionCode, char* pcMessage = NULL);
  +	AxisGenException(AxisGenException& e);
       virtual ~AxisGenException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
  -
  +    
   private:
  -    const string getMessage(const exception* e);
  -    const string getMessage(const int iExceptionCode);
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -    void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage, bool deleteInputMsg); 
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode(const int iExceptionCode);
  +    
   };
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.97      +2 -2      ws-axis/c/src/engine/Axis.cpp
  
  Index: Axis.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/engine/Axis.cpp,v
  retrieving revision 1.96
  retrieving revision 1.97
  diff -u -r1.96 -r1.97
  --- Axis.cpp	25 Apr 2005 18:57:52 -0000	1.96
  +++ Axis.cpp	5 Jul 2005 09:33:32 -0000	1.97
  @@ -370,9 +370,9 @@
                               status = AXIS_FAIL;
                           }
                       }
  -                    catch (exception& e)
  +                    catch (AxisException& e)
                       {
  -                        throw AxisEngineException(&e);
  +                        throw AxisEngineException(e.getExceptionCode(), e.what());
                       }
       
                   }
  
  
  
  1.20      +10 -79    ws-axis/c/src/engine/AxisEngineException.cpp
  
  Index: AxisEngineException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/engine/AxisEngineException.cpp,v
  retrieving revision 1.19
  retrieving revision 1.20
  diff -u -r1.19 -r1.20
  --- AxisEngineException.cpp	1 Jul 2005 02:43:28 -0000	1.19
  +++ AxisEngineException.cpp	5 Jul 2005 09:33:32 -0000	1.20
  @@ -28,82 +28,23 @@
   
   AXIS_CPP_NAMESPACE_START
   
  -AxisEngineException::AxisEngineException()
  +AxisEngineException::AxisEngineException(const int iExceptionCode, const char* pcMessage ):AxisException(iExceptionCode)
   {
  -    processException(SERVER_ENGINE_EXCEPTION);
  -}
  -
  -AxisEngineException::AxisEngineException (const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  -}
  -
  -AxisEngineException::AxisEngineException(const int iExceptionCode, char* pcMessage)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage);
  -}
  -
  -AxisEngineException::AxisEngineException (const exception* e)
  -{
  -    processException (e);
  -}
  -
  -AxisEngineException::AxisEngineException (const exception* e, const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (e, iExceptionCode);
  -}
  -
  -AxisEngineException::~AxisEngineException() throw ()
  -{
  -
  -}
  -
  -void AxisEngineException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode) + ":" + getMessage(e);
  -}
  -
  -void AxisEngineException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "AxisEngineException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  -
  -void AxisEngineException::processException (const exception* e)
  -{
  -    m_sMessage += "AxisEngineException:" + getMessage (e);
  -}
  -
  -void AxisEngineException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  -
  -void AxisEngineException::processException(const int iExceptionCode, char* pcMessage)
  -{
  -
  +	AxisString sMessage = "";
   	if (pcMessage) 
   	{
  -		AxisString sMessage = pcMessage;
  -		m_sMessage = getMessage(iExceptionCode) + " " + sMessage;
  -	}
  -	else
  -	{
  -		m_sMessage = getMessage(iExceptionCode);
  +		sMessage = pcMessage;
   	}
  -
  -			
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
  -const string AxisEngineException::getMessage (const exception* objException)
  -{
  -    static string objExDetail = objException->what();
   
  -    return objExDetail;
  -}
  +AxisEngineException::AxisEngineException (const AxisEngineException& e):AxisException(e)
  +{}
   
  -const string AxisEngineException::getMessage (const int iExceptionCode)
  +AxisEngineException::~AxisEngineException() throw ()
  +{}
  +
  +const string AxisEngineException::getMessageForExceptionCode (const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -155,14 +96,4 @@
       return m_sMessage;
   }
   
  -const char* AxisEngineException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int AxisEngineException::getExceptionCode()
  -{
  -    return m_iExceptionCode;
  -}
  -
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.8       +5 -17     ws-axis/c/src/engine/AxisEngineException.h
  
  Index: AxisEngineException.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/engine/AxisEngineException.h,v
  retrieving revision 1.7
  retrieving revision 1.8
  diff -u -r1.7 -r1.8
  --- AxisEngineException.h	23 Nov 2004 17:21:03 -0000	1.7
  +++ AxisEngineException.h	5 Jul 2005 09:33:32 -0000	1.8
  @@ -32,25 +32,13 @@
   {
   
   public:
  -    AxisEngineException();
  -    AxisEngineException(const int iExceptionCode);
  -    AxisEngineException(const int iExceptionCode, char* pcMessage);
  -    AxisEngineException(const exception* e);
  -    AxisEngineException(const exception* e, const int iExceptionCode);
  +    AxisEngineException(const int iExceptionCode, const char* pcMessage = NULL);
  +    AxisEngineException(const AxisEngineException& e);
       virtual ~AxisEngineException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
  -                                                                                                                             
  +
   private:
  -    const string getMessage(const exception* e);
  -    const string getMessage(const int iExceptionCode);
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -    void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage);                                                                                                                           
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode(const int iExceptionCode);
  +	
   };
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.32      +1 -1      ws-axis/c/src/engine/client/ClientAxisEngine.cpp
  
  Index: ClientAxisEngine.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/engine/client/ClientAxisEngine.cpp,v
  retrieving revision 1.31
  retrieving revision 1.32
  diff -u -r1.31 -r1.32
  --- ClientAxisEngine.cpp	25 May 2005 11:13:42 -0000	1.31
  +++ ClientAxisEngine.cpp	5 Jul 2005 09:33:32 -0000	1.32
  @@ -147,7 +147,7 @@
   		 * storage, so the false as the last parameter tells AxisGenException not to try to 
   		 * delete it.
   		 */
  -		throw AxisGenException(e.getExceptionCode(), const_cast<char*>(e.what()), false);
  +		throw AxisGenException(e.getExceptionCode(), const_cast<char*>(e.what()));
       }
       return Status;
   }
  
  
  
  1.19      +11 -72    ws-axis/c/src/soap/AxisSoapException.cpp
  
  Index: AxisSoapException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/soap/AxisSoapException.cpp,v
  retrieving revision 1.18
  retrieving revision 1.19
  diff -u -r1.18 -r1.19
  --- AxisSoapException.cpp	15 Jun 2005 20:24:22 -0000	1.18
  +++ AxisSoapException.cpp	5 Jul 2005 09:33:33 -0000	1.19
  @@ -28,74 +28,23 @@
   
   AXIS_CPP_NAMESPACE_START
   
  -AxisSoapException::AxisSoapException()
  +AxisSoapException::AxisSoapException(const int iExceptionCode, char* pcMessage):AxisException(iExceptionCode)
   {
  -    processException(SERVER_SOAP_EXCEPTION);
  +   AxisString sMessage = "";
  +	if (pcMessage) 
  +	{
  +		sMessage = pcMessage;
  +	}
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
   
  -AxisSoapException::AxisSoapException (const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  -}
  -
  -AxisSoapException::AxisSoapException(const int iExceptionCode, char* pcMessage)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage);
  -}
  -
  -AxisSoapException::AxisSoapException (const exception* e)
  -{
  -    processException (e);
  -}
  -
  -AxisSoapException::AxisSoapException (const exception* e, const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (e, iExceptionCode);
  -}
  +AxisSoapException::AxisSoapException (const AxisSoapException& e):AxisException (e)
  +{}
   
   AxisSoapException::~AxisSoapException() throw ()
  -{
  -
  -}
  -
  -void AxisSoapException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage(iExceptionCode) + ":" + getMessage (e);
  -}
  -
  -void AxisSoapException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "AxisSoapException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  -
  -void AxisSoapException::processException (const exception* e)
  -{
  -    m_sMessage += "AxisSoapException:" + getMessage (e);
  -}
  -
  -void AxisSoapException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  +{}
   
  -void AxisSoapException::processException(const int iExceptionCode, char* pcMessage)
  -{
  -    AxisString sMessage = pcMessage;
  -    m_sMessage = getMessage(iExceptionCode) + " " + sMessage;
  -    if(pcMessage)
  -        delete pcMessage;
  -}
  -const string AxisSoapException::getMessage (const exception* objException)
  -{
  -    static string objExDetail = objException->what();
  -
  -    return objExDetail;
  -}
  -
  -const string AxisSoapException::getMessage (const int iExceptionCode)
  +const string AxisSoapException::getMessageForExceptionCode (const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -130,14 +79,4 @@
       return m_sMessage;
   }
   
  -const char* AxisSoapException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int AxisSoapException::getExceptionCode()
  -{
  -    return m_iExceptionCode;
  -}
  -
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.9       +5 -16     ws-axis/c/src/soap/AxisSoapException.h
  
  Index: AxisSoapException.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/soap/AxisSoapException.h,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- AxisSoapException.h	23 Nov 2004 17:21:04 -0000	1.8
  +++ AxisSoapException.h	5 Jul 2005 09:33:33 -0000	1.9
  @@ -32,25 +32,14 @@
   {
   
   public:
  -    AxisSoapException();
  -    AxisSoapException(const int iExceptionCode);
  -    AxisSoapException(const int iExceptionCode, char* pcMessage);
  -    AxisSoapException(const exception* e);
  -    AxisSoapException(const exception* e, const int iExceptionCode);
  +    AxisSoapException(const int iExceptionCode, char* pcMessage = NULL);
  +    AxisSoapException(const AxisSoapException& e);
       virtual ~AxisSoapException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
  +    
   
   private:
  -    const string getMessage(const exception* e);
  -    const string getMessage(const int iExceptionCode);
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -	void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage);                                                                                                                           
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode(const int iExceptionCode);
  +    
   };
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.3       +11 -74    ws-axis/c/src/transport/axis3/HTTPTransportException.cpp
  
  Index: HTTPTransportException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/HTTPTransportException.cpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- HTTPTransportException.cpp	23 Mar 2005 15:45:02 -0000	1.2
  +++ HTTPTransportException.cpp	5 Jul 2005 09:33:33 -0000	1.3
  @@ -22,76 +22,23 @@
   
   #include "HTTPTransportException.hpp"
   
  -/**
  - *    Default when no parameter passed. When thrown with no parameter
  - *    more general SERVER_TRANSPORT_EXCEPTION is assumed.
  -*/
  -HTTPTransportException::HTTPTransportException()
  +HTTPTransportException::HTTPTransportException(const int iExceptionCode, char* pcMessage):AxisException(iExceptionCode)
   {
  -    processException(SERVER_TRANSPORT_EXCEPTION);
  +	AxisString sMessage = "";
  +	if (pcMessage) 
  +	{
  +		sMessage = pcMessage;
  +	}
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
   
  -HTTPTransportException::HTTPTransportException (const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  -}
  -
  -HTTPTransportException::HTTPTransportException(const int iExceptionCode, char* pcMessage)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage);
  -}
  -
  -HTTPTransportException::HTTPTransportException (const exception* e)
  -{
  -    processException (e);
  -}
  -
  -HTTPTransportException::HTTPTransportException (const exception* e, const int iExceptionCode)
  -{
  -    processException (e, iExceptionCode);
  -}
  +HTTPTransportException::HTTPTransportException (HTTPTransportException& e):AxisException(e)
  +{}
   
   HTTPTransportException::~HTTPTransportException() throw ()
  -{
  -
  -}
  -
  -void HTTPTransportException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode) + ":" + getMessage(e);
  -}
  -
  -void HTTPTransportException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "HTTPTransportException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  +{}
   
  -void HTTPTransportException::processException (const exception* e)
  -{
  -    m_sMessage += "HTTPTransportException:" + getMessage (e);
  -}
  -
  -void HTTPTransportException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  -
  -void HTTPTransportException::processException(const int iExceptionCode, char* pcMessage)
  -{
  -    AxisString sMessage = pcMessage;
  -    m_sMessage = getMessage(iExceptionCode) + " " + sMessage;
  -}
  -
  -const string HTTPTransportException::getMessage (const exception* objException)
  -{
  -	static string objExDetail = objException->what();
  -
  -    return objExDetail;
  -}
  -
  -const string HTTPTransportException::getMessage (const int iExceptionCode)
  +const string HTTPTransportException::getMessageForExceptionCode (const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -216,13 +163,3 @@
       return m_sMessage;
   }
   
  -const char* HTTPTransportException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int HTTPTransportException::getExceptionCode()
  -{
  -    return m_iExceptionCode;
  -}
  -
  
  
  
  1.3       +4 -16     ws-axis/c/src/transport/axis3/HTTPTransportException.hpp
  
  Index: HTTPTransportException.hpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/transport/axis3/HTTPTransportException.hpp,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- HTTPTransportException.hpp	23 Mar 2005 15:45:02 -0000	1.2
  +++ HTTPTransportException.hpp	5 Jul 2005 09:33:33 -0000	1.3
  @@ -33,25 +33,13 @@
   {
   
   public:
  -    HTTPTransportException();
  -    HTTPTransportException(const int iExceptionCode);
  -    HTTPTransportException(const int iExceptionCode, char* pcMessage);
  -    HTTPTransportException(const exception* e);
  -    HTTPTransportException(const exception* e, const int iExceptionCode);
  +    HTTPTransportException(const int iExceptionCode, char* pcMessage = NULL);
  +    HTTPTransportException(HTTPTransportException& e);
       virtual ~HTTPTransportException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
                                                                                                                                
   private:
  -    const string getMessage(const exception* e);
  -    const string getMessage(const int iExceptionCode);
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -	void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage);                                                                                                                           
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode(const int iExceptionCode);
  +    
   };
   
   #endif
  
  
  
  1.18      +11 -72    ws-axis/c/src/wsdd/AxisWsddException.cpp
  
  Index: AxisWsddException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdd/AxisWsddException.cpp,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- AxisWsddException.cpp	18 Oct 2004 09:40:27 -0000	1.17
  +++ AxisWsddException.cpp	5 Jul 2005 09:33:33 -0000	1.18
  @@ -28,74 +28,23 @@
   
   AXIS_CPP_NAMESPACE_START
   
  -AxisWsddException::AxisWsddException()
  +AxisWsddException::AxisWsddException(const int iExceptionCode, char* pcMessage):AxisException(iExceptionCode)
   {
  -    processException(SERVER_WSDD_EXCEPTION);
  +	AxisString sMessage = "";
  +	if (pcMessage) 
  +	{
  +		sMessage = pcMessage;
  +	}
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
   
  -AxisWsddException::AxisWsddException (const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  -}
  -
  -AxisWsddException::AxisWsddException(const int iExceptionCode, char* pcMessage)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage);
  -}
  -
  -AxisWsddException::AxisWsddException (const exception* e)
  -{
  -    processException (e);
  -}
  -
  -AxisWsddException::AxisWsddException (const exception* e, const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (e, iExceptionCode);
  -}
  +AxisWsddException::AxisWsddException (AxisWsddException& e):AxisException(e)
  +{}
   
   AxisWsddException::~AxisWsddException() throw ()
  -{
  -
  -}
  -
  -void AxisWsddException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage(iExceptionCode) + ":" + getMessage (e);
  -}
  -
  -void AxisWsddException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "AxisWsddException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  -
  -void AxisWsddException::processException (const exception* e)
  -{
  -    m_sMessage += "AxisWsddException:" + getMessage (e);
  -}
  -
  -void AxisWsddException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  +{}
   
  -void AxisWsddException::processException(const int iExceptionCode, char* pcMessage)
  -{
  -    AxisString sMessage = pcMessage;
  -    m_sMessage = getMessage(iExceptionCode) + " " + sMessage;
  -    if(pcMessage)
  -        delete pcMessage;
  -}
  -const string AxisWsddException::getMessage (const exception* objException)
  -{
  -    static string objExDetail = objException->what();
  -
  -    return objExDetail;
  -}
  -
  -const string AxisWsddException::getMessage (const int iExceptionCode)
  +const string AxisWsddException::getMessageForExceptionCode (const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -123,14 +72,4 @@
       return m_sMessage;
   }
   
  -const char* AxisWsddException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int AxisWsddException::getExceptionCode()
  -{
  -    return m_iExceptionCode;
  -}
  -
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.9       +5 -18     ws-axis/c/src/wsdd/AxisWsddException.h
  
  Index: AxisWsddException.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdd/AxisWsddException.h,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- AxisWsddException.h	23 Nov 2004 17:21:06 -0000	1.8
  +++ AxisWsddException.h	5 Jul 2005 09:33:33 -0000	1.9
  @@ -32,26 +32,13 @@
   {
   
   public:
  -    AxisWsddException();
  -    AxisWsddException(const int iExceptionCode);
  -    AxisWsddException(const int iExceptionCode, char* pcMessage);
  -    AxisWsddException(const exception* e);
  -    AxisWsddException(const exception* e, const int iExceptionCode);
  +    AxisWsddException(const int iExceptionCode, char* pcMessage = NULL);
  +    AxisWsddException(AxisWsddException& e);
       virtual ~AxisWsddException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
  -
  +    
   private:
  -    const string getMessage(const exception* e);
  -    const string getMessage(const int iExceptionCode);
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -	void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage);                                                                  
  -                                                                                                                             
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode(const int iExceptionCode);
  +    
   };
   
   AXIS_CPP_NAMESPACE_END
  
  
  
  1.18      +7 -16     ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ExceptionHeaderWriter.java
  
  Index: ExceptionHeaderWriter.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ExceptionHeaderWriter.java,v
  retrieving revision 1.17
  retrieving revision 1.18
  diff -u -r1.17 -r1.18
  --- ExceptionHeaderWriter.java	23 Mar 2005 15:45:04 -0000	1.17
  +++ ExceptionHeaderWriter.java	5 Jul 2005 09:33:33 -0000	1.18
  @@ -146,12 +146,11 @@
                   faultName = getServiceName() + "_" + faultInfoName;
               }
   
  -            writer.write("public:\n\tSTORAGE_CLASS_INFO " + faultName + "();\n");
  +            writer.write("public:\n");
               writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(ISoapFault* pFault);\n");
  -            writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(int iExceptionCode);\n");
  -            writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(exception* e);\n");
  -            writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(exception* e, int iExceptionCode);\n");
  -            writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(string sMessage);\n");
  +            writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(const int iExceptionCode, const char* pcMessage = NULL );\n");
  +            writer.write("\tSTORAGE_CLASS_INFO " + faultName + "(" + faultName + "& e);\n");
  +            
           }
           catch (IOException e)
           {
  @@ -187,18 +186,10 @@
       {
           try
           {
  -            writer.write("\tSTORAGE_CLASS_INFO const char* what() throw();\n");
  -            writer.write("\tSTORAGE_CLASS_INFO const int getExceptionCode();\n");
  -            writer.write("\tSTORAGE_CLASS_INFO const string getMessage(exception* e);\n");
  -            writer.write("\tSTORAGE_CLASS_INFO const string getMessage(int iExceptionCode);\n");
  +            
               writer.write("\tSTORAGE_CLASS_INFO const ISoapFault* getFault();\n\n");
  -            writer.write("private:\n\t void processException(exception* e);\n");
  -            writer.write("\t void processException(ISoapFault* pFault);\n");
  -            writer.write(
  -                "\t void processException(exception* e, int iExceptionCode);\n");
  -            writer.write("\t void processException(int iExceptionCode);\n");
  -            writer.write("\t string m_sMessage;\n");
  -            writer.write("\t int m_iExceptionCode;\n");
  +            writer.write("private:\n");
  +            writer.write("\tSTORAGE_CLASS_INFO const string getMessageForExceptionCode(int iExceptionCode);\n");
               writer.write("\t ISoapFault* m_pISoapFault;\n\n");
           }
           catch (Exception e)
  
  
  
  1.16      +11 -86    ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ExceptionWriter.java
  
  Index: ExceptionWriter.java
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/wsdl/org/apache/axis/wsdl/wsdl2ws/cpp/ExceptionWriter.java,v
  retrieving revision 1.15
  retrieving revision 1.16
  diff -u -r1.15 -r1.16
  --- ExceptionWriter.java	23 Mar 2005 15:45:04 -0000	1.15
  +++ ExceptionWriter.java	5 Jul 2005 09:33:33 -0000	1.16
  @@ -183,51 +183,27 @@
                   faultName = getServiceName() + "_" + faultInfoName;
               }
   
  -            writer.write(faultName + "::" + faultName + "()\n{\n");
  -            writer.write(
  -                "/* This only serves the purpose of indicating that the \n");
  -            writer.write(" * service has thrown an excpetion \n");
  -            writer.write(" */ \n");
  -            writer.write(
  -                "\tm_iExceptionCode = AXISC_SERVICE_THROWN_EXCEPTION; \n");
  -            writer.write("\tprocessException(m_iExceptionCode); \n");
  -            writer.write("}\n\n");
  -
               writer.write(
                   faultName + "::" + faultName + "(ISoapFault* pFault)\n");
               writer.write("{\n");
               writer.write(
                   "\tm_iExceptionCode = AXISC_SERVICE_THROWN_EXCEPTION;\n");
               writer.write("\tm_pISoapFault = pFault;\n"); // Fred Preston
  -            writer.write("\tprocessException(pFault);");
               writer.write("}\n\n");
   
               writer.write(
  -                faultName + "::" + faultName + "(int iExceptionCode)\n");
  -            writer.write("{\n\n");
  -            writer.write("\tm_iExceptionCode = iExceptionCode;\n");
  -            writer.write("\tprocessException (iExceptionCode);\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(faultName + "::" + faultName + "(exception* e)\n");
  -            writer.write("{\n");
  -            writer.write("\tprocessException (e);\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(
  -                faultName
  -                    + "::"
  -                    + faultName
  -                    + "(exception* e,int iExceptionCode)\n");
  +                faultName + "::" + faultName + "(const int iExceptionCode, const char* pcMessage):AxisException(iExceptionCode)\n");
               writer.write("{\n\n");
  -            writer.write("\tprocessException (e, iExceptionCode);\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(faultName + "::" + faultName + "(string sMessage)\n");
  -            writer.write("{\n");
  -            writer.write("\t m_sMessage =sMessage;\n");
  +            writer.write("\tAxisString sMessage = \"\";\n");
  +            writer.write("\tif (pcMessage)\n\t{\n");
  +            writer.write("\t\tsMessage = pcMessage;\n\t}\n");
  +            writer.write("\tm_sMessage = getMessageForExceptionCode(m_iExceptionCode) + \" \" + sMessage;\n");
               writer.write("}\n\n");
   
  +            writer.write(faultName + "::" + faultName + "(" + faultName + "& e):AxisException(e)\n");
  +            writer.write("{}\n\n");
  +            
  +            
           }
           catch (IOException e)
           {
  @@ -273,51 +249,11 @@
               {
                   faultName = getServiceName() + "_" + faultInfoName;
               }
  -            writer.write(
  -                "void "
  -                    + faultName
  -                    + ":: processException(exception* e, int iExceptionCode)\n");
  -            writer.write("{\n");
  -            writer.write(
  -                "\tm_sMessage = getMessage (e) + getMessage (iExceptionCode);\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(
  -                "void "
  -                    + faultName
  -                    + "::processException (ISoapFault* pFault)\n");
  -            writer.write("{\n");
  -            writer.write(
  -                "\t/*User can do something like deserializing the struct into a string*/\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(
  -                "void " + faultName + "::processException(exception* e)\n");
  -            writer.write("{\n");
  -            writer.write("\tm_sMessage = getMessage (e);\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(
  -                "void "
  -                    + faultName
  -                    + "::processException(int iExceptionCode)\n");
  -            writer.write("{\n");
  -            writer.write("\tm_sMessage = getMessage (iExceptionCode);\n");
  -            writer.write("}\n\n");
  -
  +            
               writer.write(
                   "const string "
                       + faultName
  -                    + "::getMessage (exception* objException)\n");
  -            writer.write("{\n");
  -            writer.write("\tstring sMessage = objException->what();\n");
  -            writer.write("\treturn sMessage;\n");
  -            writer.write("}\n\n");
  -
  -            writer.write(
  -                "const string "
  -                    + faultName
  -                    + "::getMessage (int iExceptionCode)\n");
  +                    + "::getMessageForExceptionCode (int iExceptionCode)\n");
               writer.write("{\n");
               writer.write("\tstring sMessage;\n");
               writer.write("\tswitch(iExceptionCode)\n");
  @@ -337,17 +273,6 @@
               writer.write("return sMessage;\n");
               writer.write("}\n\n");
   
  -            writer.write("const char* " + faultName + "::what() throw ()\n");
  -            writer.write("{\n");
  -            writer.write("\treturn m_sMessage.c_str ();\n");
  -            writer.write("}\n\n");
  -
  -            writer.write("const int " + faultName + "::getExceptionCode()");
  -            //damitha
  -            writer.write("{\n");
  -            writer.write("\treturn m_iExceptionCode;\n");
  -            writer.write("}\n\n");
  -
               writer.write("const ISoapFault* " + faultName + "::getFault()");
               //Fred Preston
               writer.write("{\n");
  
  
  
  1.11      +11 -75    ws-axis/c/src/xml/AxisParseException.cpp
  
  Index: AxisParseException.cpp
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/xml/AxisParseException.cpp,v
  retrieving revision 1.10
  retrieving revision 1.11
  diff -u -r1.10 -r1.11
  --- AxisParseException.cpp	18 Oct 2004 09:40:27 -0000	1.10
  +++ AxisParseException.cpp	5 Jul 2005 09:33:33 -0000	1.11
  @@ -21,77 +21,23 @@
   
   #include "AxisParseException.h"
   
  -/**
  - *    Default when no parameter passed. When thrown with no parameter
  - *    more general SERVER_TRANSPORT_EXCEPTION is assumed.
  -*/
  -AxisParseException::AxisParseException()
  +AxisParseException::AxisParseException(const int iExceptionCode, char* pcMessage):AxisException(iExceptionCode)
   {
  -    processException(SERVER_TRANSPORT_EXCEPTION);
  +	AxisString sMessage = "";
  +	if (pcMessage) 
  +	{
  +		sMessage = pcMessage;
  +	}
  +	m_sMessage = getMessageForExceptionCode(m_iExceptionCode) + " " + sMessage;
   }
   
  -AxisParseException::AxisParseException (const int iExceptionCode)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException (iExceptionCode);
  -}
  -
  -AxisParseException::AxisParseException(const int iExceptionCode, char* pcMessage)
  -{
  -    m_iExceptionCode = iExceptionCode;
  -    processException(iExceptionCode, pcMessage);
  -}
  -
  -AxisParseException::AxisParseException (const exception* e)
  -{
  -    processException (e);
  -}
  -
  -AxisParseException::AxisParseException (const exception* e, const int iExceptionCode)
  -{
  -    processException (e, iExceptionCode);
  -}
  +AxisParseException::AxisParseException (AxisParseException& e):AxisException (e)
  +{}
   
   AxisParseException::~AxisParseException() throw ()
  -{
  -
  -}
  -
  -void AxisParseException::processException (const exception* e, const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode) + ":" + getMessage(e);
  -}
  -
  -void AxisParseException::processException (const exception* e, char* pcMessage)
  -{
  -    m_sMessage += "AxisParseException:" + string(pcMessage) + ":" + getMessage (e);
  -}
  -
  -void AxisParseException::processException (const exception* e)
  -{
  -    m_sMessage = "AxisParseException:" + getMessage (e);
  -}
  -
  -void AxisParseException::processException(const int iExceptionCode)
  -{
  -    m_sMessage = getMessage (iExceptionCode);
  -}
  +{}
   
  -void AxisParseException::processException(const int iExceptionCode, char* pcMessage)
  -{
  -    AxisString sMessage = pcMessage;
  -    m_sMessage = getMessage(iExceptionCode) + " " + sMessage;
  -    if(pcMessage)
  -        delete pcMessage;
  -}
  -const string AxisParseException::getMessage (const exception* objException)
  -{
  -	static string objExDetail = objException->what();
  -
  -    return objExDetail;
  -}
  -
  -const string AxisParseException::getMessage (const int iExceptionCode)
  +const string AxisParseException::getMessageForExceptionCode (const int iExceptionCode)
   {
       switch(iExceptionCode)
       {
  @@ -110,13 +56,3 @@
       return m_sMessage;
   }
   
  -const char* AxisParseException::what() throw ()
  -{
  -    return m_sMessage.c_str ();
  -}
  -
  -const int AxisParseException::getExceptionCode()
  -{
  -    return m_iExceptionCode;
  -}
  -
  
  
  
  1.6       +4 -16     ws-axis/c/src/xml/AxisParseException.h
  
  Index: AxisParseException.h
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/src/xml/AxisParseException.h,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- AxisParseException.h	23 Nov 2004 17:21:08 -0000	1.5
  +++ AxisParseException.h	5 Jul 2005 09:33:33 -0000	1.6
  @@ -31,25 +31,13 @@
   {
   
   public:
  -    AxisParseException();
  -    AxisParseException(const int iExceptionCode);
  -    AxisParseException(const int iExceptionCode, char* pcMessage);
  -    AxisParseException(const exception* e);
  -    AxisParseException(const exception* e, const int iExceptionCode);
  +    AxisParseException(const int iExceptionCode, char* pcMessage = NULL);
  +    AxisParseException(AxisParseException& e);
       virtual ~AxisParseException() throw();
  -    const char* what() throw();
  -    const int getExceptionCode();
                                                                                                                                
   private:
  -    const string getMessage(const exception* e);
  -    const string getMessage(const int iExceptionCode);
  -    void processException(const exception* e);
  -    void processException(const exception* e, const int iExceptionCode);
  -	void processException (const exception* e, char* pcMessage);
  -    void processException(const int iExceptionCode);
  -    void processException(const int iExceptionCode, char* pcMessage);                                                                                                                           
  -    string m_sMessage;
  -    int m_iExceptionCode;
  +    const string getMessageForExceptionCode (const int iExceptionCode);
  +    
   };
   
   #endif
  
  
  
  1.9       +1 -1      ws-axis/c/tools/org/apache/axis/tools/cbindings/cbindinggenerator.conf
  
  Index: cbindinggenerator.conf
  ===================================================================
  RCS file: /home/cvs/ws-axis/c/tools/org/apache/axis/tools/cbindings/cbindinggenerator.conf,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- cbindinggenerator.conf	28 Jan 2005 16:16:55 -0000	1.8
  +++ cbindinggenerator.conf	5 Jul 2005 09:33:34 -0000	1.9
  @@ -40,7 +40,7 @@
   excludemethod=BasicNode::BasicNode
   excludemethod=IHeaderBlock::IHeaderBlock
   excludemethod=IWrapperSoapSerializer::serializeVargs
  -
  +excludemethod=AxisException::AxisException