Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef ___xmldomparseerror_h___
00023 #define ___xmldomparseerror_h___
00024
00025 #include <xercesc/util/XercesDefs.hpp>
00026 XERCES_CPP_NAMESPACE_USE
00027
00028 class ATL_NO_VTABLE CXMLDOMParseError :
00029 public CComObjectRootEx<CComSingleThreadModel>,
00030 public IDispatchImpl<IXMLDOMParseError, &IID_IXMLDOMParseError, &LIBID_Xerces, XERCES_VERSION_MAJOR, INVK_CAT2_RAW_NUMERIC(XERCES_VERSION_MINOR,XERCES_VERSION_REVISION)>
00031 {
00032 public:
00033 CXMLDOMParseError()
00034 :m_Code (0)
00035 ,m_url (_T(""))
00036 ,m_Reason (_T(""))
00037 ,m_Source (_T(""))
00038 ,m_LineNumber(0)
00039 ,m_LinePos (0)
00040 ,m_FilePos (0)
00041 {}
00042
00043 HRESULT FinalConstruct();
00044 void FinalRelease();
00045
00046 DECLARE_NOT_AGGREGATABLE(CXMLDOMParseError)
00047
00048 DECLARE_PROTECT_FINAL_CONSTRUCT()
00049
00050 BEGIN_COM_MAP(CXMLDOMParseError)
00051 COM_INTERFACE_ENTRY(IXMLDOMParseError)
00052 COM_INTERFACE_ENTRY(IDispatch)
00053 END_COM_MAP()
00054
00055
00056 STDMETHOD(get_errorCode)( long *errorCode);
00057 STDMETHOD(get_url)( BSTR *urlString);
00058 STDMETHOD(get_reason)( BSTR *reasonString);
00059 STDMETHOD(get_srcText)( BSTR *sourceString);
00060 STDMETHOD(get_line)( long *lineNumber);
00061 STDMETHOD(get_linepos)( long *linePosition);
00062 STDMETHOD(get_filepos)( long *filePosition);
00063
00064 void SetData(long code,
00065 const _bstr_t &url,
00066 const _bstr_t &reason,
00067 const _bstr_t &source,
00068 long lineNumber,
00069 long linePos,
00070 long filePos);
00071 void Reset();
00072
00073 private:
00074
00075 long m_Code;
00076 _bstr_t m_url;
00077 _bstr_t m_Reason;
00078 _bstr_t m_Source;
00079 long m_LineNumber;
00080 long m_LinePos;
00081 long m_FilePos;
00082
00083 CComCriticalSection m_CS;
00084 };
00085
00086 typedef CComObject<CXMLDOMParseError> CXMLDOMParseErrorObj;
00087
00088 #endif // ___xmldomparseerror_h___