#include <DiskIOModule.h>

Inheritance diagram for DiskIOModule:
Collaboration diagram for DiskIOModule:

Public Types

typedef std::vector
< DiskIOModule * >::iterator 
iterator
 
typedef std::vector
< DiskIOModule * >
::const_iterator 
const_iterator
 

Public Member Functions

 DiskIOModule ()
 
virtual ~DiskIOModule ()
 
virtual void init ()=0
 
virtual void gracefulShutdown ()=0
 
virtual DiskIOStrategycreateStrategy ()=0
 
virtual char const * type () const =0
 
 DiskIOModule (DiskIOModule const &)
 
DiskIOModuleoperator= (DiskIOModule const &)
 

Static Public Member Functions

static void SetupAllModules ()
 
static void ModuleAdd (DiskIOModule &)
 
static void FreeAllModules ()
 
static DiskIOModuleFind (char const *type)
 
static DiskIOModuleFindDefault ()
 
static std::vector
< DiskIOModule * > const & 
Modules ()
 

Static Protected Member Functions

static void RegisterAllModulesWithCacheManager (void)
 

Static Private Member Functions

static std::vector
< DiskIOModule * > & 
GetModules ()
 

Static Private Attributes

static std::vector
< DiskIOModule * > * 
_Modules = NULL
 

Detailed Description

Definition at line 20 of file DiskIOModule.h.

Member Typedef Documentation

Definition at line 36 of file DiskIOModule.h.

Constructor & Destructor Documentation

DiskIOModule::DiskIOModule ( )

We cannot call ModuleAdd(*this) here as the virtual methods are not yet available. We leave that to SetupAllModules() later.

Definition at line 36 of file DiskIOModule.cc.

virtual DiskIOModule::~DiskIOModule ( )
inlinevirtual

Definition at line 39 of file DiskIOModule.h.

DiskIOModule::DiskIOModule ( DiskIOModule const &  )

Definition at line 25 of file stub_libdiskio.cc.

References STUB.

Member Function Documentation

virtual DiskIOStrategy* DiskIOModule::createStrategy ( )
pure virtual
DiskIOModule * DiskIOModule::FindDefault ( )
static

Find any usable disk module. This will look for the 'best' available module for this system.

Best IO options are in order:

Definition at line 124 of file DiskIOModule.cc.

References Find(), and NULL.

Referenced by testDiskIO::testFindDefault().

void DiskIOModule::FreeAllModules ( )
static

Called when a graceful shutdown is to occur of each fs module.

Definition at line 104 of file DiskIOModule.cc.

References GetModules(), and gracefulShutdown().

Referenced by SquidShutdown().

std::vector< DiskIOModule * > & DiskIOModule::GetModules ( )
staticprivate

Definition at line 91 of file DiskIOModule.cc.

References _Modules.

Referenced by Find(), FreeAllModules(), ModuleAdd(), Modules(), and SetupAllModules().

virtual void DiskIOModule::gracefulShutdown ( )
pure virtual
virtual void DiskIOModule::init ( )
pure virtual
std::vector< DiskIOModule * > const & DiskIOModule::Modules ( )
static

Definition at line 85 of file DiskIOModule.cc.

References GetModules().

DiskIOModule & DiskIOModule::operator= ( DiskIOModule const &  )

Definition at line 26 of file stub_libdiskio.cc.

References STUB.

static void DiskIOModule::RegisterAllModulesWithCacheManager ( void  )
staticprotected
void DiskIOModule::SetupAllModules ( )
static
virtual char const* DiskIOModule::type ( ) const
pure virtual

Member Data Documentation

std::vector< DiskIOModule * > * DiskIOModule::_Modules = NULL
staticprivate

Definition at line 57 of file DiskIOModule.h.

Referenced by GetModules().


The documentation for this class was generated from the following files:

 

Introduction

Documentation

Support

Miscellaneous

Web Site Translations

Mirrors