From 54bb6300773c2639c4e38c719c3b82fa7cf182fe Mon Sep 17 00:00:00 2001 From: Tatsuhiro Tsujikawa Date: Fri, 26 Sep 2008 16:05:45 +0000 Subject: 2008-09-27 Tatsuhiro Tsujikawa When error occurs while aria2 is parsing an command-line option, print the usage of the option. * src/Makefile.am * src/NameMatchOptionHandler.h * src/OptionHandlerException.h * src/option_processing.cc --- src/OptionHandlerException.h | 69 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 src/OptionHandlerException.h (limited to 'src/OptionHandlerException.h') diff --git a/src/OptionHandlerException.h b/src/OptionHandlerException.h new file mode 100644 index 00000000..7302ef80 --- /dev/null +++ b/src/OptionHandlerException.h @@ -0,0 +1,69 @@ +/* */ +#ifndef _D_OPTION_HANDLER_EXCEPTION_H_ +#define _D_OPTION_HANDLER_EXCEPTION_H_ +#include "FatalException.h" + +namespace aria2 { + +class OptionHandlerException:public FatalException { +private: + std::string _optName; +protected: + virtual SharedHandle copy() const + { + SharedHandle e(new OptionHandlerException(*this)); + return e; + } +public: + OptionHandlerException(const std::string& msg, const std::string& optName): + FatalException(msg), _optName(optName) {} + + OptionHandlerException(const std::string& msg, const std::string& optName, + const Exception& cause): + FatalException(msg, cause), _optName(optName) {} + + OptionHandlerException(const OptionHandlerException& e): + FatalException(e), + _optName(e._optName) {} + + virtual ~OptionHandlerException() throw() {} + + const std::string& getOptionName() const throw() { return _optName; } +}; + +} // namespace aria2 + +#endif // _D_OPTION_HANDLER_EXCEPTION_EX_H_ -- cgit