- added some optimization to RequestDirDetails internal functions

- improved sorting/selection in shared files flat mode
*W* Needs full recompilation.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@4121 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2011-04-03 19:59:12 +00:00
parent f9c896c3ac
commit 6c2bdbe214
12 changed files with 115 additions and 47 deletions

View file

@ -502,7 +502,25 @@ int ftServer::RequestDirDetails(void *ref, DirDetails &details, uint32_t flags)
else
return mFiStore->RequestDirDetails(ref, details, flags);
}
uint32_t ftServer::getType(void *ref, uint32_t flags)
{
#ifdef SERVER_DEBUG
std::cerr << "ftServer::RequestDirDetails(ref:" << ref;
std::cerr << ", flags:" << flags << ", ...) -> mFiStore";
std::cerr << std::endl;
if (!mFiStore)
{
std::cerr << "mFiStore not SET yet = FAIL";
std::cerr << std::endl;
}
#endif
if(flags & DIR_FLAGS_LOCAL)
return mFiMon->getType(ref);
else
return mFiStore->getType(ref);
}
/***************************************************************/
/******************** Search Interface *************************/
/***************************************************************/

View file

@ -171,6 +171,7 @@ virtual bool ExtraFileMove(std::string fname, std::string hash, uint64_t size,
***/
virtual int RequestDirDetails(std::string uid, std::string path, DirDetails &details);
virtual int RequestDirDetails(void *ref, DirDetails &details, uint32_t flags);
virtual uint32_t getType(void *ref,uint32_t flags) ;
virtual int SearchKeywords(std::list<std::string> keywords, std::list<DirDetails> &results,uint32_t flags);
virtual int SearchBoolExp(Expression * exp, std::list<DirDetails> &results,uint32_t flags);