#include "SwapDir.h"
#include "DiskIO/IORequestor.h"
-
#ifndef COSS_MEMBUF_SZ
#define COSS_MEMBUF_SZ 1048576
#endif
#define COSS_ALLOC_ALLOCATE 1
#define COSS_ALLOC_REALLOC 2
-
/// \ingroup COSS
class CossSwapDir : public SwapDir, public IORequestor
{
virtual void dump(StoreEntry &)const;
~CossSwapDir();
virtual StoreSearch *search(String const url, HttpRequest *);
+ virtual bool unlinkdUseful() const;
virtual void unlink (StoreEntry &);
virtual void statfs (StoreEntry &)const;
virtual bool canStore(const StoreEntry &e, int64_t diskSpaceNeeded, int &load) const;
virtual void writeCleanDone();
virtual void logEntry(const StoreEntry & e, int op) const;
virtual void parse (int index, char *path);
- virtual void reconfigure (int, char *);
+ virtual void reconfigure();
virtual void swappedOut(const StoreEntry &e);
+ virtual uint64_t currentSize() const { return cur_size; }
+ virtual uint64_t currentCount() const { return n_disk_objects; }
/* internals */
virtual off_t storeCossFilenoToDiskOffset(sfileno);
virtual sfileno storeCossDiskOffsetToFileno(off_t);
CossMemBuf *createMemBuf(off_t start, sfileno curfn, int *collision);
sfileno allocate(const StoreEntry * e, int which);
void startMembuf();
+ StoreEntry *addDiskRestore(const cache_key *const key,
+ int file_number,
+ uint64_t swap_file_sz,
+ time_t expires,
+ time_t timestamp,
+ time_t lastref,
+ time_t lastmod,
+ uint32_t refcount,
+ uint16_t flags,
+ int clean);
private:
void changeIO(DiskIOModule *module);
const char *ioModule;
mutable ConfigOptionVector *currentIOOptions;
const char *stripe_path;
+ uint64_t cur_size; ///< currently used space in the storage area
+ uint64_t n_disk_objects; ///< total number of objects stored
};
/// \ingroup COSS
/// \ingroup COSS
extern void storeCossStartMembuf(CossSwapDir * SD);
-
#include "StoreSearch.h"
/// \ingroup COSS
virtual StoreEntry *currentItem();
private:
- CBDATA_CLASS2(StoreSearchCoss);
RefCount<CossSwapDir> sd;
void (*callback)(void *cbdata);
void *cbdata;
bool _done;
dlink_node * current;
dlink_node * next_;
+
+ CBDATA_CLASS2(StoreSearchCoss);
};
#endif