mirror of
https://github.com/Relintai/rcpp_framework.git
synced 2024-11-14 04:57:21 +01:00
Added clear method to FileCache.
This commit is contained in:
parent
60ed46b5e6
commit
60e7dfe7e9
@ -101,6 +101,24 @@ void FileCache::set_cached_body(const String &path, const String &body) {
|
|||||||
cache_mutex.unlock();
|
cache_mutex.unlock();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void FileCache::clear() {
|
||||||
|
cache_mutex.lock();
|
||||||
|
|
||||||
|
registered_files.clear();
|
||||||
|
|
||||||
|
for (std::map<String, CacheEntry *>::iterator E = cache_map.begin(); E != cache_map.end(); E++) {
|
||||||
|
CacheEntry * ce = E->second;
|
||||||
|
|
||||||
|
if (ce) {
|
||||||
|
delete ce;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
cache_map.clear();
|
||||||
|
|
||||||
|
cache_mutex.unlock();
|
||||||
|
}
|
||||||
|
|
||||||
FileCache::FileCache(bool singleton) {
|
FileCache::FileCache(bool singleton) {
|
||||||
if (singleton) {
|
if (singleton) {
|
||||||
if (_instance) {
|
if (_instance) {
|
||||||
|
@ -24,6 +24,8 @@ public:
|
|||||||
bool get_cached_body(const String &path, String *body);
|
bool get_cached_body(const String &path, String *body);
|
||||||
void set_cached_body(const String &path, const String &body);
|
void set_cached_body(const String &path, const String &body);
|
||||||
|
|
||||||
|
void clear();
|
||||||
|
|
||||||
FileCache(bool singleton = false);
|
FileCache(bool singleton = false);
|
||||||
virtual ~FileCache();
|
virtual ~FileCache();
|
||||||
|
|
||||||
@ -43,7 +45,6 @@ protected:
|
|||||||
};
|
};
|
||||||
|
|
||||||
std::mutex cache_mutex;
|
std::mutex cache_mutex;
|
||||||
|
|
||||||
std::map<String, CacheEntry *> cache_map;
|
std::map<String, CacheEntry *> cache_map;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
|
Loading…
Reference in New Issue
Block a user