UFSStrategy.h
Go to the documentation of this file.
1 /*
2  * Copyright (C) 1996-2023 The Squid Software Foundation and contributors
3  *
4  * Squid software is distributed under GPLv2+ license and includes
5  * contributions from numerous individuals and organizations.
6  * Please see the COPYING and CONTRIBUTORS files for details.
7  */
8 
9 #ifndef SQUID_SRC_FS_UFS_UFSSTRATEGY_H
10 #define SQUID_SRC_FS_UFS_UFSSTRATEGY_H
11 
12 #include "DiskIO/DiskFile.h"
13 #include "StoreIOState.h"
14 
15 class Swapdir;
16 class StoreEntry;
17 class DiskIOStrategy;
18 
19 namespace Fs
20 {
21 namespace Ufs
22 {
25 {
26 public:
28  virtual ~UFSStrategy ();
29  virtual bool shedLoad();
30 
31  virtual int load();
32 
34  /* UFS specific */
35  virtual RefCount<DiskFile> newFile (char const *path);
38 
39  virtual void unlinkFile (char const *);
40  virtual void sync();
41 
42  virtual int callback();
43 
45  virtual void init();
46 
48  virtual void statfs(StoreEntry & sentry)const;
49 
52 
53 protected:
54 
55  friend class UFSSwapDir;
56 
57 private:
58  UFSStrategy(); //disabled
59  UFSStrategy(UFSStrategy const &); //disabled
60  UFSStrategy &operator=(UFSStrategy const &); //disabled
61 
62 };
63 
64 } //namespace Ufs
65 } //namespace Fs
66 
67 #endif /* SQUID_SRC_FS_UFS_UFSSTRATEGY_H */
68 
UFSStrategy & operator=(UFSStrategy const &)
virtual void init()
Definition: UFSStrategy.cc:146
manages a single cache_dir
Definition: Disk.h:21
virtual int load()
Definition: UFSStrategy.cc:26
virtual void unlinkFile(char const *)
Definition: UFSStrategy.cc:52
virtual int callback()
Definition: UFSStrategy.cc:140
virtual bool shedLoad()
Definition: UFSStrategy.cc:20
virtual RefCount< DiskFile > newFile(char const *path)
Definition: UFSStrategy.cc:46
StoreIOState::Pointer open(SwapDir *, StoreEntry *, StoreIOState::STIOCB *, void *)
Definition: UFSStrategy.cc:58
StoreIOState::Pointer create(SwapDir *, StoreEntry *, StoreIOState::STIOCB *, void *)
Definition: UFSStrategy.cc:93
StoreIOState::Pointer createState(SwapDir *SD, StoreEntry *e, StoreIOState::STIOCB *callback, void *callback_data) const
Definition: UFSStrategy.cc:40
DiskIOStrategy * io
Definition: UFSStrategy.h:51
void STIOCB(void *their_data, int errflag, StoreIOState::Pointer self)
Definition: StoreIOState.h:39
Definition: Module.h:12
virtual void sync()
Definition: UFSStrategy.cc:152
virtual void statfs(StoreEntry &sentry) const
Definition: UFSStrategy.cc:158
virtual ~UFSStrategy()
Definition: UFSStrategy.cc:34

 

Introduction

Documentation

Support

Miscellaneous