diff options
Diffstat (limited to 'inc/ABRTException.h')
-rw-r--r-- | inc/ABRTException.h | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/inc/ABRTException.h b/inc/ABRTException.h new file mode 100644 index 00000000..730faf3b --- /dev/null +++ b/inc/ABRTException.h @@ -0,0 +1,35 @@ +#ifndef ABRTEXCEPTION_H_ +#define ABRTEXCEPTION_H_ + +#include <string> + +typedef enum {EXCEP_UNKNOW, + EXCEP_DD_OPEN, + EXCEP_DD_LOAD, + EXCEP_DD_SAVE, + EXCEP_DD_DELETE, + EXCEP_DL, + EXCEP_PLUGIN, + EXCEP_ERROR, + EXCEP_FATAL} abrt_exception_t; + +class CABRTException : public std::exception +{ + private: + std::string m_sWhat; + abrt_exception_t m_Type; + public: + virtual ~CABRTException() throw() {} + CABRTException(const abrt_exception_t& pType, const char* pWhat) : + m_sWhat(pWhat), + m_Type(pType) + {} + CABRTException(const abrt_exception_t& pType, const std::string& pWhat) : + m_sWhat(pWhat), + m_Type(pType) + {} + abrt_exception_t type() { return m_Type; } + std::string what() { return m_sWhat; } +}; + +#endif /* ABRTEXCEPTION_H_ */ |