X-Git-Url: http://developer.intra2net.com/git/?p=libt2n;a=blobdiff_plain;f=src%2Ft2n_exception.cpp;h=1aae5c4af38814b42dccc32700ce408de4dc3e3f;hp=37c71b0b15b58cff39763f08a2ab4f6a327072a4;hb=e453407db5951aa7f504282ea82d1ca1f19d22fb;hpb=d535333ffe637c9e547e68b792f334c229641520 diff --git a/src/t2n_exception.cpp b/src/t2n_exception.cpp index 37c71b0..1aae5c4 100644 --- a/src/t2n_exception.cpp +++ b/src/t2n_exception.cpp @@ -17,7 +17,13 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ +#include +#include +#include +#include + #include "t2n_exception.hxx" + #include BOOST_CLASS_EXPORT(libt2n::t2n_exception) @@ -29,3 +35,63 @@ BOOST_CLASS_EXPORT(libt2n::t2n_version_mismatch) BOOST_CLASS_EXPORT(libt2n::t2n_command_error) BOOST_CLASS_EXPORT(libt2n::t2n_serialization_error) BOOST_CLASS_EXPORT(libt2n::t2n_runtime_error) + +namespace libt2n +{ + +template +void t2n_exception::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(exception); + ar & BOOST_SERIALIZATION_NVP(message); +} + +template +void t2n_communication_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception); +} + +template +void t2n_connect_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error); +} + +template +void t2n_server_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error); +} + +template +void t2n_transfer_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error); +} + +template +void t2n_version_mismatch::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error); +} + +template +void t2n_command_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception); +} + +template +void t2n_serialization_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception); +} + +template +void t2n_runtime_error::serialize(Archive & ar, const unsigned int version) +{ + ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception); +} + +} // namespace libt2n