From 4083c982656fe3d79168b228aca56cef2de2ea0e Mon Sep 17 00:00:00 2001 From: Othmar Gsenger Date: Wed, 27 Feb 2008 22:43:14 +0000 Subject: added route syncing --- syncCommand.h | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) (limited to 'syncCommand.h') diff --git a/syncCommand.h b/syncCommand.h index b2f3fc5..29b063c 100644 --- a/syncCommand.h +++ b/syncCommand.h @@ -5,26 +5,40 @@ #include "connectionList.h" #include "threadUtils.hpp" +#include "syncConnectionCommand.h" +#include "syncRouteCommand.h" +#include class SyncCommand { public: SyncCommand(ConnectionList & cl ); SyncCommand(ConnectionList & cl ,u_int16_t mux); - u_int16_t getMux() const; + SyncCommand(u_int16_t mux); + ~SyncCommand(); private: SyncCommand(const SyncCommand &); - ConnectionList & cl_; - u_int16_t mux_; + SyncConnectionCommand * scc_; + SyncRouteCommand * src_; friend class boost::serialization::access; template void serialize(Archive & ar, const unsigned int version) { - Lock lock(cl_.getMutex()); - ar & mux_; - ConnectionParam & conn = cl_.getOrNewConnectionUnlocked(mux_); - ar & conn; + std::string syncstr; + if (scc_) + { + syncstr = "connection"; + } + if ( src_) + { + syncstr = "route"; + } + ar & syncstr; + if (syncstr == "connection") + ar & *scc_; + if (syncstr == "route") + ar & *src_; } }; -- cgit v1.2.3