Iproved file list handling:

- Implemented correct cacheData send to clients usign constant subid value.
- At start, the association between peers and available file list is always recomputed
- overloaded cacheAvailable() and refreshCache() in FileIndexMonitor
- added callback in rsFiles to force re-generating cache items when group layout has changed
- force re-sent file lists when moving peers between groups in the GUI
(Fixes group leaking problem) Needs full recompilation of libretroshare.


git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@5813 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2012-11-12 22:51:27 +00:00
parent 03dbf7bc1b
commit 454daf1981
10 changed files with 133 additions and 43 deletions

View file

@ -29,6 +29,7 @@
#include "util/rsthreads.h"
#include <list>
#include <set>
#include <map>
#include <string>
#include <iostream>
@ -181,7 +182,7 @@ class CacheSource
virtual bool loadLocalCache(const CacheData &data);
/* control Caches available */
bool refreshCache(const CacheData &data,const std::list<std::string>& destination_peers);
bool refreshCache(const CacheData &data,const std::set<std::string>& destination_peers);
bool refreshCache(const CacheData &data);
bool clearCache(CacheId id);
@ -400,7 +401,7 @@ virtual void statusChange(const std::list<pqipeer> &plist);
*
*/
void refreshCache(const CacheData &data);
void refreshCache(const CacheData &data,const std::list<std::string>& destination_peers); // specify a particular list of destination peers (self not added!)
void refreshCache(const CacheData &data,const std::set<std::string>& destination_peers); // specify a particular list of destination peers (self not added!)
/*!
* forces config savelist