libt2n: (reinhard) compile fixes.
authorReinhard Pfau <reinhard.pfau@intra2net.com>
Fri, 1 Aug 2008 14:32:58 +0000 (14:32 +0000)
committerReinhard Pfau <reinhard.pfau@intra2net.com>
Fri, 1 Aug 2008 14:32:58 +0000 (14:32 +0000)
src/Makefile.am
src/container.cpp
src/container.hxx
src/container.tcc [new file with mode: 0644]
src/t2n_exception.cpp
src/t2n_exception.hxx

index 204c59d..effba0a 100644 (file)
@@ -16,4 +16,5 @@ libt2n_la_LDFLAGS = -version-info 1:0:0
 pkginclude_HEADERS = client.hxx client_wrapper.hxx command.hxx \
        command_client.hxx command_server.hxx connection.hxx container.hxx log.hxx server.hxx \
        socket_client.hxx socket_handler.hxx socket_server.hxx socket_wrapper.hxx \
-       t2n_exception.hxx types.hxx
+       t2n_exception.hxx types.hxx \
+       container.tcc t2n_exception.tcc
index a3c9f31..47d0e49 100644 (file)
@@ -32,17 +32,6 @@ BOOST_CLASS_EXPORT(libt2n::command_container)
 namespace libt2n
 {
 
-template<class Archive>
-void result_container::serialize(Archive & ar, const unsigned int /* version */)
-{
-    // When the class Archive corresponds to an output archive, the
-    // & operator is defined similar to <<.  Likewise, when the class Archive
-    // is a type of input archive the & operator is defined similar to >>.
-
-    ar & BOOST_SERIALIZATION_NVP(result_type);
-    ar & BOOST_SERIALIZATION_NVP(res);
-    ar & BOOST_SERIALIZATION_NVP(ex);
-}
 
 /// deletes the carried result or exception objects
 result_container::~result_container()
@@ -63,12 +52,6 @@ result* result_container::get_result(void)
     return res;
 }
 
-template<class Archive>
-void command_container::serialize(Archive & ar, const unsigned int /* version */)
-{
-    ar & BOOST_SERIALIZATION_NVP(cmd);
-}
-
 /// deletes the carried command
 command_container::~command_container()
 {
index f869166..478c464 100644 (file)
@@ -100,5 +100,7 @@ class command_container
 BOOST_CLASS_TRACKING(libt2n::result_container, boost::serialization::track_never)
 BOOST_CLASS_TRACKING(libt2n::command_container, boost::serialization::track_never)
 
+#include "container.tcc"
+
 #endif
 
diff --git a/src/container.tcc b/src/container.tcc
new file mode 100644 (file)
index 0000000..f8064bd
--- /dev/null
@@ -0,0 +1,43 @@
+/***************************************************************************
+ *   Copyright (C) 2006 by Gerd v. Egidy                                   *
+ *   gve@intra2net.com                                                     *
+ *                                                                         *
+ *   This library is free software; you can redistribute it and/or modify  *
+ *   it under the terms of the GNU Lesser General Public License version   *
+ *   2.1 as published by the Free Software Foundation.                     *
+ *                                                                         *
+ *   This library is distributed in the hope that it will be useful,       *
+ *   but WITHOUT ANY WARRANTY; without even the implied warranty of        *
+ *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the         *
+ *   GNU Lesser General Public License for more details.                   *
+ *                                                                         *
+ *   You should have received a copy of the GNU Lesser General Public      *
+ *   License along with this program; if not, write to the                 *
+ *   Free Software Foundation, Inc.,                                       *
+ *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.             *
+ ***************************************************************************/
+
+namespace libt2n
+{
+
+template<class Archive>
+void result_container::serialize(Archive & ar, const unsigned int /* version */)
+{
+    // When the class Archive corresponds to an output archive, the
+    // & operator is defined similar to <<.  Likewise, when the class Archive
+    // is a type of input archive the & operator is defined similar to >>.
+
+    ar & BOOST_SERIALIZATION_NVP(result_type);
+    ar & BOOST_SERIALIZATION_NVP(res);
+    ar & BOOST_SERIALIZATION_NVP(ex);
+}
+
+template<class Archive>
+void command_container::serialize(Archive & ar, const unsigned int /* version */)
+{
+    ar & BOOST_SERIALIZATION_NVP(cmd);
+}
+
+
+
+}
index 1aae5c4..ca83dfa 100644 (file)
@@ -39,59 +39,5 @@ BOOST_CLASS_EXPORT(libt2n::t2n_runtime_error)
 namespace libt2n
 {
 
-template<class Archive>
-void t2n_exception::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(exception);
-    ar & BOOST_SERIALIZATION_NVP(message);
-}
-
-template<class Archive>
-void t2n_communication_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception);
-}
-
-template<class Archive>
-void t2n_connect_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error);
-}
-
-template<class Archive>
-void t2n_server_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error);
-}
-
-template<class Archive>
-void t2n_transfer_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error);
-}
-
-template<class Archive>
-void t2n_version_mismatch::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_communication_error);
-}
-
-template<class Archive>
-void t2n_command_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception);
-}
-
-template<class Archive>
-void t2n_serialization_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception);
-}
-
-template<class Archive>
-void t2n_runtime_error::serialize(Archive & ar, const unsigned int version)
-{
-    ar & BOOST_SERIALIZATION_BASE_OBJECT_NVP(t2n_exception);
-}
 
 } // namespace libt2n
index 121d482..0440f05 100644 (file)
@@ -261,4 +261,6 @@ class t2n_runtime_error : public t2n_exception
 
 }  // namespace libt2n
 
+#include "t2n_exception.tcc"
+
 #endif