#pragma once #include "svn_client.h" #include #include #include #include #include #pragma warning( push ) #pragma warning( disable : 4512 ) #pragma warning( disable : 4100 ) #include #include #include #include #include #pragma warning( pop ) using namespace std; using namespace boost; class CUrlInfo { friend class boost::serialization::access; public: CUrlInfo(void); ~CUrlInfo(void); wstring username; wstring password; wstring url; wstring name; __time64_t lastchecked; svn_revnum_t lastcheckedrev; int minutesinterval; bool fetchdiffs; // if the URL points to an SVNParentPath page, the // subentries map contains the name/url pairs of // all the entries below the SVNParentpath map subentries; private: template void serialize(Archive & ar, const unsigned int version) { ar & username; ar & password; ar & url; ar & name; ar & lastchecked; ar & lastcheckedrev; ar & minutesinterval; ar & fetchdiffs; ar & subentries; } }; class CUrlInfos { friend class boost::serialization::access; public: CUrlInfos(void); ~CUrlInfos(void); void Save(LPCWSTR filename); void Load(LPCWSTR filename); map infos; private: template void serialize(Archive & ar, const unsigned int version) { ar & infos; } }; BOOST_CLASS_TRACKING(CUrlInfos, boost::serialization::track_never)