summaryrefslogtreecommitdiff
path: root/src/RequestGroup.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-11-10 16:10:31 +0000
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2008-11-10 16:10:31 +0000
commitbdff264d2ca973a2ba5126b2d021951f2a94e229 (patch)
tree1c8416da16ef5635e41efa2864a8e676db5f6291 /src/RequestGroup.cc
parent82b80c33d8bb5c12ed571971666b396b3433cb4d (diff)
2008-11-11 Tatsuhiro Tsujikawa <t-tujikawa@users.sourceforge.net>
Show an average download speed in Download results. * src/BtFileAllocationEntry.cc * src/DefaultPieceStorage.cc * src/DownloadContext.cc * src/DownloadContext.h * src/DownloadResult.h * src/RequestGroup.cc * src/RequestGroupMan.cc * src/StreamFileAllocationEntry.cc
Diffstat (limited to 'src/RequestGroup.cc')
-rw-r--r--src/RequestGroup.cc33
1 files changed, 25 insertions, 8 deletions
diff --git a/src/RequestGroup.cc b/src/RequestGroup.cc
index 4db4f21a..2124164f 100644
--- a/src/RequestGroup.cc
+++ b/src/RequestGroup.cc
@@ -877,15 +877,32 @@ DownloadResultHandle RequestGroup::createDownloadResult() const
{
std::deque<std::string> uris;
getURIs(uris);
+
+ uint64_t sessionDownloadLength = 0;
+
+#ifdef ENABLE_BITTORRENT
+ if(!_peerStorage.isNull()) {
+ sessionDownloadLength =
+ _peerStorage->calculateStat().getSessionDownloadLength();
+ } else
+#endif // ENABLE_BITTORRENT
+ if(!_segmentMan.isNull()) {
+ sessionDownloadLength =
+ _segmentMan->calculateSessionDownloadLength();
+ }
+
return
- SharedHandle<DownloadResult>(new DownloadResult(_gid,
- getFilePath(),
- getTotalLength(),
- uris.empty() ? A2STR::NIL:uris.front(),
- uris.size(),
- downloadFinished()?
- DownloadResult::FINISHED :
- DownloadResult::NOT_YET));
+ SharedHandle<DownloadResult>
+ (new DownloadResult(_gid,
+ getFilePath(),
+ getTotalLength(),
+ uris.empty() ? A2STR::NIL:uris.front(),
+ uris.size(),
+ sessionDownloadLength,
+ _downloadContext->calculateSessionTime(),
+ downloadFinished()?
+ DownloadResult::FINISHED :
+ DownloadResult::NOT_YET));
}
void RequestGroup::registerServerHost(const ServerHostHandle& serverHost)