soap_fault.hpp
上传用户:yhdzpy8989
上传日期:2007-06-13
资源大小:13604k
文件大小:8k
源码类别:

生物技术

开发平台:

C/C++

  1. /*
  2.  * ===========================================================================
  3.  * PRODUCTION $Log: soap_fault.hpp,v $
  4.  * PRODUCTION Revision 1000.0  2003/10/29 17:39:05  gouriano
  5.  * PRODUCTION PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R1.1
  6.  * PRODUCTION
  7.  * ===========================================================================
  8.  */
  9. /* $Id: soap_fault.hpp,v 1000.0 2003/10/29 17:39:05 gouriano Exp $
  10.  * ===========================================================================
  11.  *
  12.  *                            PUBLIC DOMAIN NOTICE
  13.  *               National Center for Biotechnology Information
  14.  *
  15.  *  This software/database is a "United States Government Work" under the
  16.  *  terms of the United States Copyright Act.  It was written as part of
  17.  *  the author's official duties as a United States Government employee and
  18.  *  thus cannot be copyrighted.  This software/database is freely available
  19.  *  to the public for use. The National Library of Medicine and the U.S.
  20.  *  Government have not placed any restriction on its use or reproduction.
  21.  *
  22.  *  Although all reasonable efforts have been taken to ensure the accuracy
  23.  *  and reliability of the software and data, the NLM and the U.S.
  24.  *  Government do not and cannot warrant the performance or results that
  25.  *  may be obtained by using this software or data. The NLM and the U.S.
  26.  *  Government disclaim all warranties, express or implied, including
  27.  *  warranties of performance, merchantability or fitness for any particular
  28.  *  purpose.
  29.  *
  30.  *  Please cite the author in any work or product based on this material.
  31.  *
  32.  * ===========================================================================
  33.  *
  34.  * Author: Andrei Gourianov
  35.  *
  36.  * File Description:
  37.  *   SOAP Fault object
  38.  *
  39.  * ===========================================================================
  40.  */
  41. #ifndef SOAP_FAULT_HPP
  42. #define SOAP_FAULT_HPP
  43. // standard includes
  44. #include <serial/serialbase.hpp>
  45. // generated includes
  46. #include <string>
  47. #include <serial/soap/soap_code.hpp>
  48. #include <serial/soap/soap_reason.hpp>
  49. #include <serial/soap/soap_detail.hpp>
  50. #include <serial/soap/soap_subcode.hpp>
  51. #include <serial/soap/soap_text.hpp>
  52. BEGIN_NCBI_SCOPE
  53. // forward declarations
  54. //class CSoapCode;
  55. //class CSoapDetail;
  56. //class CSoapReason;
  57. // generated classes
  58. class CSoapFault : public CSerialObject
  59. {
  60.     typedef CSerialObject Tparent;
  61. public:
  62.     // constructor
  63.     CSoapFault(void);
  64.     // destructor
  65.     virtual ~CSoapFault(void);
  66.     // type info
  67.     DECLARE_INTERNAL_TYPE_INFO();
  68.     // types
  69.     typedef CSoapCode TSoapCode;
  70.     typedef CSoapReason TSoapReason;
  71.     typedef std::string TSoapNode;
  72.     typedef std::string TSoapRole;
  73.     typedef CSoapDetail TSoapDetail;
  74.     // getters
  75.     // setters
  76.     // mandatory
  77.     // typedef CSoapCode TSoapCode
  78.     bool IsSetSoapCode(void) const;
  79.     bool CanGetSoapCode(void) const;
  80.     void ResetSoapCode(void);
  81.     const TSoapCode& GetSoapCode(void) const;
  82.     void SetSoapCode(TSoapCode& value);
  83.     TSoapCode& SetSoapCode(void);
  84.     // mandatory
  85.     // typedef CSoapReason TSoapReason
  86.     bool IsSetSoapReason(void) const;
  87.     bool CanGetSoapReason(void) const;
  88.     void ResetSoapReason(void);
  89.     const TSoapReason& GetSoapReason(void) const;
  90.     void SetSoapReason(TSoapReason& value);
  91.     TSoapReason& SetSoapReason(void);
  92.     // optional
  93.     // typedef std::string TSoapNode
  94.     bool IsSetSoapNode(void) const;
  95.     bool CanGetSoapNode(void) const;
  96.     void ResetSoapNode(void);
  97.     const TSoapNode& GetSoapNode(void) const;
  98.     void SetSoapNode(const TSoapNode& value);
  99.     TSoapNode& SetSoapNode(void);
  100.     // optional
  101.     // typedef std::string TSoapRole
  102.     bool IsSetSoapRole(void) const;
  103.     bool CanGetSoapRole(void) const;
  104.     void ResetSoapRole(void);
  105.     const TSoapRole& GetSoapRole(void) const;
  106.     void SetSoapRole(const TSoapRole& value);
  107.     TSoapRole& SetSoapRole(void);
  108.     // optional
  109.     // typedef CSoapDetail TSoapDetail
  110.     bool IsSetSoapDetail(void) const;
  111.     bool CanGetSoapDetail(void) const;
  112.     void ResetSoapDetail(void);
  113.     const TSoapDetail& GetSoapDetail(void) const;
  114.     void SetSoapDetail(TSoapDetail& value);
  115.     TSoapDetail& SetSoapDetail(void);
  116.     // reset whole object
  117.     virtual void Reset(void);
  118. private:
  119.     // Prohibit copy constructor and assignment operator
  120.     CSoapFault(const CSoapFault&);
  121.     CSoapFault& operator=(const CSoapFault&);
  122.     // data
  123.     Uint4 m_set_State[1];
  124.     CRef< TSoapCode > m_SoapCode;
  125.     CRef< TSoapReason > m_SoapReason;
  126.     TSoapNode m_SoapNode;
  127.     TSoapRole m_SoapRole;
  128.     CRef< TSoapDetail > m_SoapDetail;
  129. };
  130. ///////////////////////////////////////////////////////////
  131. ///////////////////// inline methods //////////////////////
  132. ///////////////////////////////////////////////////////////
  133. inline
  134. bool CSoapFault::IsSetSoapCode(void) const
  135. {
  136.     return m_SoapCode;
  137. }
  138. inline
  139. bool CSoapFault::CanGetSoapCode(void) const
  140. {
  141.     return IsSetSoapCode();
  142. }
  143. inline
  144. const CSoapCode& CSoapFault::GetSoapCode(void) const
  145. {
  146.     if (!CanGetSoapCode()) {
  147.         ThrowUnassigned(0);
  148.     }
  149.     return (*m_SoapCode);
  150. }
  151. inline
  152. CSoapCode& CSoapFault::SetSoapCode(void)
  153. {
  154.     return (*m_SoapCode);
  155. }
  156. inline
  157. bool CSoapFault::IsSetSoapReason(void) const
  158. {
  159.     return m_SoapReason;
  160. }
  161. inline
  162. bool CSoapFault::CanGetSoapReason(void) const
  163. {
  164.     return IsSetSoapReason();
  165. }
  166. inline
  167. const CSoapReason& CSoapFault::GetSoapReason(void) const
  168. {
  169.     if (!CanGetSoapReason()) {
  170.         ThrowUnassigned(1);
  171.     }
  172.     return (*m_SoapReason);
  173. }
  174. inline
  175. CSoapReason& CSoapFault::SetSoapReason(void)
  176. {
  177.     return (*m_SoapReason);
  178. }
  179. inline
  180. bool CSoapFault::IsSetSoapNode(void) const
  181. {
  182.     return ((m_set_State[0] & 0x30) != 0);
  183. }
  184. inline
  185. bool CSoapFault::CanGetSoapNode(void) const
  186. {
  187.     return IsSetSoapNode();
  188. }
  189. inline
  190. const std::string& CSoapFault::GetSoapNode(void) const
  191. {
  192.     if (!CanGetSoapNode()) {
  193.         ThrowUnassigned(2);
  194.     }
  195.     return m_SoapNode;
  196. }
  197. inline
  198. void CSoapFault::SetSoapNode(const std::string& value)
  199. {
  200.     m_SoapNode = value;
  201.     m_set_State[0] |= 0x30;
  202. }
  203. inline
  204. std::string& CSoapFault::SetSoapNode(void)
  205. {
  206. #ifdef _DEBUG
  207.     if (!IsSetSoapNode()) {
  208.         m_SoapNode = ms_UnassignedStr;
  209.     }
  210. #endif
  211.     m_set_State[0] |= 0x10;
  212.     return m_SoapNode;
  213. }
  214. inline
  215. bool CSoapFault::IsSetSoapRole(void) const
  216. {
  217.     return ((m_set_State[0] & 0xc0) != 0);
  218. }
  219. inline
  220. bool CSoapFault::CanGetSoapRole(void) const
  221. {
  222.     return IsSetSoapRole();
  223. }
  224. inline
  225. const std::string& CSoapFault::GetSoapRole(void) const
  226. {
  227.     if (!CanGetSoapRole()) {
  228.         ThrowUnassigned(3);
  229.     }
  230.     return m_SoapRole;
  231. }
  232. inline
  233. void CSoapFault::SetSoapRole(const std::string& value)
  234. {
  235.     m_SoapRole = value;
  236.     m_set_State[0] |= 0xc0;
  237. }
  238. inline
  239. std::string& CSoapFault::SetSoapRole(void)
  240. {
  241. #ifdef _DEBUG
  242.     if (!IsSetSoapRole()) {
  243.         m_SoapRole = ms_UnassignedStr;
  244.     }
  245. #endif
  246.     m_set_State[0] |= 0x40;
  247.     return m_SoapRole;
  248. }
  249. inline
  250. bool CSoapFault::IsSetSoapDetail(void) const
  251. {
  252.     return m_SoapDetail;
  253. }
  254. inline
  255. bool CSoapFault::CanGetSoapDetail(void) const
  256. {
  257.     return IsSetSoapDetail();
  258. }
  259. inline
  260. const CSoapDetail& CSoapFault::GetSoapDetail(void) const
  261. {
  262.     if (!CanGetSoapDetail()) {
  263.         ThrowUnassigned(4);
  264.     }
  265.     return (*m_SoapDetail);
  266. }
  267. ///////////////////////////////////////////////////////////
  268. ////////////////// end of inline methods //////////////////
  269. ///////////////////////////////////////////////////////////
  270. END_NCBI_SCOPE
  271. #endif // SOAP_FAULT_HPP
  272. /* --------------------------------------------------------------------------
  273. * $Log: soap_fault.hpp,v $
  274. * Revision 1000.0  2003/10/29 17:39:05  gouriano
  275. * PRODUCTION: IMPORTED [ORIGINAL] Dev-tree R1.1
  276. *
  277. * Revision 1.1  2003/09/25 19:46:21  gouriano
  278. * Added soap Fault object
  279. *
  280. *
  281. * ===========================================================================
  282. */