dmlite  0.6
Public Types | Public Member Functions
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]

List of all members.

Public Types

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

Public Member Functions

virtual ~PoolManager ()
 Destructor.
virtual std::vector< PoolgetPools (PoolAvailability availability=kAny) throw (DmException)
virtual Pool getPool (const std::string &poolname) throw (DmException)
 Get a specific pool.
virtual void newPool (const Pool &pool) throw (DmException)
 Create a new pool.
virtual void updatePool (const Pool &pool) throw (DmException)
 Update pool metadata.
virtual void deletePool (const Pool &pool) throw (DmException)
 Remove a pool.
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.
virtual std::string getImplId (void) const =0 throw ()
 String ID of the implementation.

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.
- 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.
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: