Integration of ft into a working system.

* Made ftTransferModule compile.
 * bugfixes to make ftserver1test work.
 * New P3Pipe / P3Hub ...
 * Added Test Notes.
 * First functions added to ftcontroller
 * added isOnline to p3ConnectMgr.



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@698 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
drbob 2008-08-17 15:23:11 +00:00
parent c4a3792500
commit eb8dacc798
15 changed files with 647 additions and 143 deletions

View file

@ -67,6 +67,7 @@ class ftFileControl
std::string mHash;
std::string mName;
uint64_t mSize;
uint32_t mFlags;
};
@ -103,6 +104,15 @@ std::string getDownloadDirectory();
std::string getPartialsDirectory();
bool FileDetails(std::string hash, FileInfo &info);
/***************************************************************/
/********************** Cache Transfer *************************/
/***************************************************************/
protected:
virtual bool RequestCacheFile(RsPeerId id, std::string path, std::string hash, uint64_t size);
virtual bool CancelCacheFile(RsPeerId id, std::string path, std::string hash, uint64_t size);
/***************************************************************/
/********************** Controller Access **********************/
/***************************************************************/
@ -143,6 +153,46 @@ bool completeFile(std::string hash);
std::string mConfigPath;
std::string mDownloadPath;
std::string mPartialPath;
/**** SPEED QUEUES ****/
std::list<std::string> mSlowQueue;
std::list<std::string> mStreamQueue;
std::list<std::string> mFastQueue;
};
#endif
#if 0
class CacheTransfer
{
public:
CacheTransfer(CacheStrapper *cs) :strapper(cs) { return; }
virtual ~CacheTransfer() {}
/* upload side of things .... searches through CacheStrapper. */
bool FindCacheFile(std::string hash, std::string &path, uint64_t &size);
/* At the download side RequestCache() => overloaded RequestCacheFile()
* the class should then call CompletedCache() or FailedCache()
*/
bool RequestCache(CacheData &data, CacheStore *cbStore); /* request from CacheStore */
protected:
/* to be overloaded */
virtual bool RequestCacheFile(RsPeerId id, std::string path, std::string hash, uint64_t size);
virtual bool CancelCacheFile(RsPeerId id, std::string path, std::string hash, uint64_t size);
bool CompletedCache(std::string hash); /* internal completion -> does cb */
bool FailedCache(std::string hash); /* internal completion -> does cb */
private:
CacheStrapper *strapper;
std::map<std::string, CacheData> cbData;
std::map<std::string, CacheStore *> cbStores;
};
#endif