PluginScriptException.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00012 #ifndef ZYPP_PLUGINSCRIPTEXCEPTION_H
00013 #define ZYPP_PLUGINSCRIPTEXCEPTION_H
00014
00015 #include <iosfwd>
00016
00017 #include "zypp/base/Exception.h"
00018 #include "zypp/Pathname.h"
00019
00021 namespace zypp
00022 {
00023
00025 class PluginScriptException : public Exception
00026 {
00027 public:
00028 PluginScriptException();
00029 PluginScriptException( const std::string & msg_r );
00030 PluginScriptException( const std::string & msg_r, const std::string & hist_r );
00031 virtual ~PluginScriptException() throw();
00032 };
00033
00035 #define declException( EXCP, BASE ) \
00036 class EXCP : public BASE { \
00037 public: \
00038 EXCP() : BASE( #EXCP ) {} \
00039 EXCP( const std::string & msg_r ) : BASE( msg_r ) {} \
00040 EXCP( const std::string & msg_r, const std::string & hist_r ) : BASE( msg_r, hist_r ) {} \
00041 virtual ~EXCP() throw() {} \
00042 }
00043
00045 declException( PluginScriptNotConnected, PluginScriptException );
00046
00048 declException( PluginScriptDiedUnexpectedly, PluginScriptException );
00049
00050
00052 declException( PluginScriptTimeout, PluginScriptException );
00053
00055 declException( PluginScriptSendTimeout, PluginScriptTimeout );
00056
00058 declException( PluginScriptReceiveTimeout, PluginScriptTimeout );
00059
00060
00062 }
00064 #endif // ZYPP_PLUGINSCRIPTEXCEPTION_H