dmlite  0.4
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)=0 throw (DmException)
virtual Pool getPool (const std::string &poolname)=0 throw (DmException)
 Get a specific pool.
virtual void newPool (const Pool &pool)=0 throw (DmException)
 Create a new pool.
virtual void updatePool (const Pool &pool)=0 throw (DmException)
 Update pool metadata.
virtual void deletePool (const Pool &pool)=0 throw (DmException)
 Remove a pool.
virtual Location whereToRead (const std::string &path)=0 throw (DmException)
virtual Location whereToRead (ino_t inode)=0 throw (DmException)
virtual Location whereToWrite (const std::string &path)=0 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)=0 throw (DmException)
virtual void setSecurityContext (const SecurityContext *ctx)=0 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

PoolManager::~PoolManager ( )
virtual

Destructor.


Member Function Documentation

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

Remove a pool.

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

Get a specific pool.

Implemented in dmlite::DummyPoolManager.

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

Get the list of pools.

Parameters:
availabilityFilter by availability.

Implemented in dmlite::DummyPoolManager.

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

Create a new pool.

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

Update pool metadata.

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

Get a location for a logical name.

Parameters:
pathThe path to get.

Implemented in dmlite::DummyPoolManager.

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

Get a location for an inode

Parameters:
inodeThe file inode.
virtual Location dmlite::PoolManager::whereToWrite ( const std::string &  path) throw (DmException)
pure virtual

Start the PUT of a file.

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

Implemented in dmlite::DummyPoolManager.


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