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 da...@apache.org on 2004/07/06 16:01:42 UTC

cvs commit: ws-axis/c/tests/client/xsdAnyTest1/gen_src AxisClientException.cpp AxisClientException.h

damitha     2004/07/06 07:01:42

  Added:       c/tests/client/xsdAnyTest1/gen_src AxisClientException.cpp
                        AxisClientException.h
  Log:
  (null)
  
  Revision  Changes    Path
  1.1                  ws-axis/c/tests/client/xsdAnyTest1/gen_src/AxisClientException.cpp
  
  Index: AxisClientException.cpp
  ===================================================================
  /*
   * This file was auto-generated by the Axis C++ Web Service Generator (WSDL2Ws)
   * This file contains implementations of an Exception class of the web service.
   */
  
  #include "AxisClientException.h"
  
  //#include <axis/server/AxisWrapperAPI.h>
  
  AxisClientException::AxisClientException()
  {
  /* This only serves the pupose of indicating that the 
   * service has thrown an excpetion 
   */ 
  	m_iExceptionCode = AXISC_SERVICE_THROWN_EXCEPTION; 
  	processException(m_iExceptionCode); 
  }
  
  AxisClientException::AxisClientException(ISoapFault* pFault)
  {
  	m_iExceptionCode = AXISC_SERVICE_THROWN_EXCEPTION;
  	processException(pFault);}
  
  AxisClientException::AxisClientException(int iExceptionCode)
  {
  
  	m_iExceptionCode = iExceptionCode;
  	processException (iExceptionCode);
  }
  
  AxisClientException::AxisClientException(exception* e)
  {
  	processException (e);
  }
  
  AxisClientException::AxisClientException(exception* e,int iExceptionCode)
  {
  
  	processException (e, iExceptionCode);
  }
  
  AxisClientException::~AxisClientException() throw () 
  {
  	m_sMessage ="";
  }
  
  void AxisClientException:: processException(exception* e, int iExceptionCode)
  {
  	m_sMessage = getMessage (e) + getMessage (iExceptionCode);
  }
  
  void AxisClientException::processException (ISoapFault* pFault)
  {
  	/*User can do something like deserializing the struct into a string*/
          
  	m_sMessage += "Fault Code:";
          m_sMessage += pFault->getFaultcode();
          m_sMessage += "\n";
  	m_sMessage += "Fault String:";
          m_sMessage += pFault->getFaultstring();
          m_sMessage += "\n";
  	m_sMessage += "Fault Actor:";
          m_sMessage += pFault->getFaultactor();
          m_sMessage += "\n";
  	m_sMessage = "Fault Detail:";
          m_sMessage += pFault->getSimpleFaultDetail();
          m_sMessage += "\n";
  
  }
  
  void AxisClientException::processException(exception* e)
  {
  	m_sMessage = getMessage (e);
  }
  
  void AxisClientException::processException(int iExceptionCode)
  {
  	m_sMessage = getMessage (iExceptionCode);
  }
  
  const string AxisClientException::getMessage (exception* objException)
  {
  	string sMessage = objException->what();
  	return sMessage;
  }
  
  const string AxisClientException::getMessage (int iExceptionCode)
  {
  	string sMessage;
  	switch(iExceptionCode)
  	{
  		case AXISC_SERVICE_THROWN_EXCEPTION:
  		sMessage = "A service has thrown an exception. see detail";
  		break;
  		default:
  		sMessage = "Unknown Exception has occured";
  	}
  return sMessage;
  }
  
  const char* AxisClientException::what() throw ()
  {
  	return m_sMessage.c_str ();
  }
  
  const int AxisClientException::getExceptionCode(){
  	return m_iExceptionCode;
  }
  
  
  
  
  1.1                  ws-axis/c/tests/client/xsdAnyTest1/gen_src/AxisClientException.h
  
  Index: AxisClientException.h
  ===================================================================
  /*
   * This file was auto-generated by the Axis C++ Web Service Generator (WSDL2Ws)
   * This file contains an Exception class of the web service.
   */
  
  #if !defined(__AXISCLIENTEXCEPTION_EXCEPTION_H__INCLUDED_)
  #define __AXISCLIENTEXCEPTION_EXCEPTION_H__INCLUDED_
  
  #include <string>
  #include <exception>
  #include <axis/server/AxisException.h>
  #include <axis/ISoapFault.h>
  
  using namespace std;
  class AxisClientException: public AxisException
  {
  public:
  	AxisClientException();
  	AxisClientException(ISoapFault* pFault);
  	AxisClientException(int iExceptionCode);
  	AxisClientException(exception* e);
  	AxisClientException(exception* e, int iExceptionCode);
  	virtual ~AxisClientException() throw();
  	 const char* what() throw();
  	 const int getExceptionCode();
  	 const string getMessage(exception* e);
  	 const string getMessage(int iExceptionCode);
  private:
  	 void processException(exception* e);
  	 void processException(ISoapFault* pFault);
  	 void processException(exception* e, int iExceptionCode);
  	 void processException(int iExceptionCode);
  	 string m_sMessage;
  	 int m_iExceptionCode;
  
  };
  
  #endif /* !defined(__AXISCLIENTEXCEPTION_EXCEPTION_H__INCLUDED_)*/