dmlite  0.6
Public Types | Public Member Functions | List of all members
dmlite::PoolManager Class Reference

Interface for pool types. More...

#include <poolmanager.h>

Inheritance diagram for dmlite::PoolManager:
Inheritance graph
[legend]
Collaboration diagram for dmlite::PoolManager:
Collaboration graph
[legend]

Public Types

enum  PoolAvailability {
  kAny, kNone, kForRead, kForWrite,
  kForBoth
}
 

Public Member Functions

virtual ~PoolManager ()
 Destructor. More...
 
virtual std::vector< PoolgetPools (PoolAvailability availability=kAny) throw (DmException)
 
virtual Pool getPool (const std::string &poolname) throw (DmException)
 Get a specific pool. More...
 
virtual void newPool (const Pool &pool) throw (DmException)
 Create a new pool. More...
 
virtual void updatePool (const Pool &pool) throw (DmException)
 Update pool metadata. More...
 
virtual void deletePool (const Pool &pool) throw (DmException)
 Remove a pool. More...
 
virtual Location whereToRead (const std::string &path) throw (DmException)
 
virtual Location whereToRead (ino_t inode) throw (DmException)
 
virtual Location whereToWrite (const std::string &path) throw (DmException)
 
virtual void cancelWrite (const Location &loc) throw (DmException)
 
- Public Member Functions inherited from dmlite::BaseInterface
virtual ~BaseInterface ()
 Virtual destructor. More...
 
virtual std::string getImplId (void) const =0 throw ()
 String ID of the implementation. More...
 

Additional Inherited Members

- Protected Member Functions inherited from dmlite::BaseInterface
virtual void setStackInstance (StackInstance *si) throw (DmException)
 
virtual void setSecurityContext (const SecurityContext *ctx) throw (DmException)
 Set the security context. More...
 
- Static Protected Member Functions inherited from dmlite::BaseInterface
static void setStackInstance (BaseInterface *i, StackInstance *si) throw (DmException)
 These method allows plugins to call other plugins setStackInstance and setSecurityContext. More...
 
static void setSecurityContext (BaseInterface *i, const SecurityContext *ctx) throw (DmException)
 

Detailed Description

Interface for pool types.

Member Enumeration Documentation

Enumerator
kAny 
kNone 
kForRead 
kForWrite 
kForBoth 

Constructor & Destructor Documentation

virtual dmlite::PoolManager::~PoolManager ( )
virtual

Destructor.

Member Function Documentation

virtual void dmlite::PoolManager::cancelWrite ( const Location loc)
throw (DmException
)
virtual

Cancel a write.

Parameters
pathThe logical file name.
locAs returned by whereToWrite
virtual void dmlite::PoolManager::deletePool ( const Pool pool)
throw (DmException
)
virtual

Remove a pool.

Reimplemented in dmlite::DummyPoolManager.

virtual Pool dmlite::PoolManager::getPool ( const std::string &  poolname)
throw (DmException
)
virtual

Get a specific pool.

Reimplemented in dmlite::DummyPoolManager.

virtual std::vector<Pool> dmlite::PoolManager::getPools ( PoolAvailability  availability = kAny)
throw (DmException
)
virtual

Get the list of pools.

Parameters
availabilityFilter by availability.

Reimplemented in dmlite::DummyPoolManager.

virtual void dmlite::PoolManager::newPool ( const Pool pool)
throw (DmException
)
virtual

Create a new pool.

Reimplemented in dmlite::DummyPoolManager.

virtual void dmlite::PoolManager::updatePool ( const Pool pool)
throw (DmException
)
virtual

Update pool metadata.

Reimplemented in dmlite::DummyPoolManager.

virtual Location dmlite::PoolManager::whereToRead ( const std::string &  path)
throw (DmException
)
virtual

Get a location for a logical name.

Parameters
pathThe path to get.

Reimplemented in dmlite::DummyPoolManager.

virtual Location dmlite::PoolManager::whereToRead ( ino_t  inode)
throw (DmException
)
virtual

Get a location for an inode

Parameters
inodeThe file inode.

Reimplemented in dmlite::DummyPoolManager.

virtual Location dmlite::PoolManager::whereToWrite ( const std::string &  path)
throw (DmException
)
virtual

Start the PUT of a file.

Parameters
pathThe path of the file to create.
Returns
The physical location where to write.

Reimplemented in dmlite::DummyPoolManager.


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