diff options
-rw-r--r-- | icespider/core/exceptions.cpp | 5 | ||||
-rw-r--r-- | icespider/core/exceptions.h | 11 |
2 files changed, 10 insertions, 6 deletions
diff --git a/icespider/core/exceptions.cpp b/icespider/core/exceptions.cpp index 83ab13a..8448a0b 100644 --- a/icespider/core/exceptions.cpp +++ b/icespider/core/exceptions.cpp @@ -1,5 +1,10 @@ #include "exceptions.h" +#define DefineHttpEx(Name, Code, Message) \ + Name::Name() : ::IceSpider::HttpException(__FILE__, __LINE__, CODE, MESSAGE) { } \ + const short Name::CODE(Code); \ + const std::string Name::MESSAGE(Message); + namespace IceSpider { DefineHttpEx(Http400_BadRequest, 400, "Bad Request"); DefineHttpEx(Http404_NotFound, 404, "Not found"); diff --git a/icespider/core/exceptions.h b/icespider/core/exceptions.h index 0f1d1e8..b82f1f3 100644 --- a/icespider/core/exceptions.h +++ b/icespider/core/exceptions.h @@ -9,13 +9,11 @@ class DLL_PUBLIC Name : public ::IceSpider::HttpException { \ public: \ Name(); \ - static const short code; \ - static const std::string message; \ +\ + private: \ + static const short CODE; \ + static const std::string MESSAGE; \ } -#define DefineHttpEx(Name, Code, Message) \ - Name::Name() : ::IceSpider::HttpException(__FILE__, __LINE__, code, message) { } \ - const short Name::code(Code); \ - const std::string Name::message(Message); namespace IceSpider { DeclareHttpEx(Http400_BadRequest); @@ -25,4 +23,5 @@ namespace IceSpider { DeclareHttpEx(Http415_UnsupportedMediaType); } +#undef DeclareHttpEx #endif |