]> git.ipfire.org Git - thirdparty/squid.git/blob - src/DiskIO/DiskThreads/DiskThreadsDiskIOModule.cc
SourceFormat Enforcement
[thirdparty/squid.git] / src / DiskIO / DiskThreads / DiskThreadsDiskIOModule.cc
1 /*
2 * Copyright (C) 1996-2017 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 #include "squid.h"
10 #include "DiskThreadsDiskIOModule.h"
11 #include "DiskThreadsIOStrategy.h"
12
13 DiskThreadsDiskIOModule DiskThreadsDiskIOModule::Instance;
14 DiskThreadsDiskIOModule &
15 DiskThreadsDiskIOModule::GetInstance()
16 {
17 return Instance;
18 }
19
20 DiskThreadsDiskIOModule::DiskThreadsDiskIOModule()
21 {
22 ModuleAdd(*this);
23 }
24
25 void
26 DiskThreadsDiskIOModule::init()
27 {
28 DiskThreadsIOStrategy::Instance.init();
29 }
30
31 void
32 DiskThreadsDiskIOModule::gracefulShutdown()
33 {
34 DiskThreadsIOStrategy::Instance.done();
35 }
36
37 DiskIOStrategy *
38 DiskThreadsDiskIOModule::createStrategy()
39 {
40 return new SingletonIOStrategy(&DiskThreadsIOStrategy::Instance);
41 }
42
43 char const *
44 DiskThreadsDiskIOModule::type () const
45 {
46 return "DiskThreads";
47 }
48