use unittest include from util!
[senf.git] / Socket / Protocols / AddressExceptions.hh
index 51338ca..2409cd0 100644 (file)
 #define HH_AddressExceptions_ 1
 
 // Custom includes
+#include "../Utils/Exception.hh"
 
 //#include "AddressExceptions.mpp"
 ///////////////////////////////hh.p////////////////////////////////////////
 
 namespace senf {
 
-    /** \brief Base-class for INet4Address exceptions */
-    struct AddressException : public std::exception {};
+    /** \brief Base-class for Address exceptions */
+    struct AddressException : public senf::Exception
+    {
+    protected:
+        AddressException(std::string const & msg)
+            : senf::Exception(msg) {}
+    };
 
-    /** \brief Invalid INet4 address syntax */
+    /** \brief Invalid address syntax */
     struct AddressSyntaxException : public AddressException
-    { virtual char const * what() const throw() 
-            { return "invalid INet4 address syntax"; } };
+    {
+        AddressSyntaxException() : AddressException("invalid address syntax") {}
+        AddressSyntaxException(std::string const & msg) : AddressException(msg) {}
+    };
 
     /** \brief Resolver failure */
     struct UnknownHostnameException : public AddressException
-    { virtual char const * what() const throw() 
-            { return "failed to resolve INet4 hostname"; } };
+    { 
+        UnknownHostnameException() : AddressException("failed to resolve hostname") {} 
+        UnknownHostnameException(std::string const & msg) : AddressException(msg) {}
+    };
 
 }