Line data Source code
1 : // file : xsd/cxx/xml/dom/bits/error-handler-proxy.hxx
2 : // copyright : Copyright (c) 2005-2017 Code Synthesis Tools CC
3 : // license : GNU GPL v2 + exceptions; see accompanying LICENSE file
4 :
5 : #ifndef XSD_CXX_XML_DOM_BITS_ERROR_HANDLER_PROXY_HXX
6 : #define XSD_CXX_XML_DOM_BITS_ERROR_HANDLER_PROXY_HXX
7 :
8 : #include <xercesc/dom/DOMError.hpp>
9 : #include <xercesc/dom/DOMLocator.hpp>
10 : #include <xercesc/dom/DOMErrorHandler.hpp>
11 :
12 : #include <xsd/cxx/xml/error-handler.hxx>
13 :
14 : namespace xsd
15 : {
16 : namespace cxx
17 : {
18 : namespace xml
19 : {
20 : namespace dom
21 : {
22 : namespace bits
23 : {
24 : template <typename C>
25 : class error_handler_proxy: public xercesc::DOMErrorHandler
26 : {
27 : public:
28 0 : error_handler_proxy (error_handler<C>& eh)
29 0 : : failed_ (false), eh_ (&eh), native_eh_ (0)
30 : {
31 0 : }
32 :
33 0 : error_handler_proxy (xercesc::DOMErrorHandler& eh)
34 0 : : failed_ (false), eh_ (0), native_eh_ (&eh)
35 : {
36 0 : }
37 :
38 : virtual bool
39 : handleError (const xercesc::DOMError& e);
40 :
41 : bool
42 0 : failed () const
43 : {
44 0 : return failed_;
45 : }
46 :
47 : private:
48 : bool failed_;
49 : error_handler<C>* eh_;
50 : xercesc::DOMErrorHandler* native_eh_;
51 : };
52 : }
53 : }
54 : }
55 : }
56 : }
57 :
58 : #include <xsd/cxx/xml/dom/bits/error-handler-proxy.txx>
59 :
60 : #endif // XSD_CXX_XML_DOM_BITS_ERROR_HANDLER_PROXY_HXX
|