summaryrefslogtreecommitdiff
path: root/src/WrDiskCacheEntry.cc
diff options
context:
space:
mode:
authorTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2016-03-26 17:12:52 +0900
committerTatsuhiro Tsujikawa <tatsuhiro.t@gmail.com>2016-03-26 17:20:27 +0900
commitd64089632e82a2548752c7a6baaa68365a795a74 (patch)
tree57fc7b85a8c1290975d58fa4761b04a7695bf7e3 /src/WrDiskCacheEntry.cc
parentc81b1321122e8509b55c94c0cbca0d8d6d319f0c (diff)
parenta7cd943a06b1a5ff4515b57060b84037f8d01f9f (diff)
Merge branch 'master' into random-webseeding
Diffstat (limited to 'src/WrDiskCacheEntry.cc')
-rw-r--r--src/WrDiskCacheEntry.cc47
1 files changed, 24 insertions, 23 deletions
diff --git a/src/WrDiskCacheEntry.cc b/src/WrDiskCacheEntry.cc
index c0579a0e..c1686a31 100644
--- a/src/WrDiskCacheEntry.cc
+++ b/src/WrDiskCacheEntry.cc
@@ -44,19 +44,20 @@
namespace aria2 {
-WrDiskCacheEntry::WrDiskCacheEntry
-(const std::shared_ptr<DiskAdaptor>& diskAdaptor)
- : sizeKey_(0),
- lastUpdate_(0),
- size_(0),
- error_(CACHE_ERR_SUCCESS),
- errorCode_(error_code::UNDEFINED),
- diskAdaptor_(diskAdaptor)
-{}
+WrDiskCacheEntry::WrDiskCacheEntry(
+ const std::shared_ptr<DiskAdaptor>& diskAdaptor)
+ : sizeKey_(0),
+ lastUpdate_(0),
+ size_(0),
+ error_(CACHE_ERR_SUCCESS),
+ errorCode_(error_code::UNDEFINED),
+ diskAdaptor_(diskAdaptor)
+{
+}
WrDiskCacheEntry::~WrDiskCacheEntry()
{
- if(!set_.empty()) {
+ if (!set_.empty()) {
A2_LOG_WARN(fmt("WrDiskCacheEntry is not empty size=%lu",
static_cast<unsigned long>(size_)));
}
@@ -65,8 +66,8 @@ WrDiskCacheEntry::~WrDiskCacheEntry()
void WrDiskCacheEntry::deleteDataCells()
{
- for(auto& e: set_) {
- delete [] e->data;
+ for (auto& e : set_) {
+ delete[] e->data;
delete e;
}
set_.clear();
@@ -77,7 +78,8 @@ void WrDiskCacheEntry::writeToDisk()
{
try {
diskAdaptor_->writeCache(this);
- } catch(RecoverableException& e) {
+ }
+ catch (RecoverableException& e) {
A2_LOG_ERROR_EX("Error when trying to flush write cache", e);
error_ = CACHE_ERR_ERROR;
errorCode_ = e.getErrorCode();
@@ -85,38 +87,37 @@ void WrDiskCacheEntry::writeToDisk()
deleteDataCells();
}
-void WrDiskCacheEntry::clear()
-{
- deleteDataCells();
-}
+void WrDiskCacheEntry::clear() { deleteDataCells(); }
bool WrDiskCacheEntry::cacheData(DataCell* dataCell)
{
A2_LOG_DEBUG(fmt("WrDiskCacheEntry cache goff=%" PRId64 ", len=%lu",
dataCell->goff, static_cast<unsigned long>(dataCell->len)));
- if(set_.insert(dataCell).second) {
+ if (set_.insert(dataCell).second) {
size_ += dataCell->len;
return true;
- } else {
+ }
+ else {
return false;
}
}
-size_t WrDiskCacheEntry::append(int64_t goff, const unsigned char *data,
+size_t WrDiskCacheEntry::append(int64_t goff, const unsigned char* data,
size_t len)
{
- if(set_.empty()) {
+ if (set_.empty()) {
return 0;
}
auto i = set_.end();
--i;
- if(static_cast<int64_t>((*i)->goff + (*i)->len) == goff) {
+ if (static_cast<int64_t>((*i)->goff + (*i)->len) == goff) {
size_t wlen = std::min((*i)->capacity - (*i)->len, len);
memcpy((*i)->data + (*i)->offset + (*i)->len, data, wlen);
(*i)->len += wlen;
size_ += wlen;
return wlen;
- } else {
+ }
+ else {
return 0;
}
}