4 #ifndef DMLITE_CPP_POOLMANAGER_H
5 #define DMLITE_CPP_POOLMANAGER_H
7 #include "dmlite/common/config.h"
90 virtual void getDirSpaces(
const std::string& path, int64_t &totalfree, int64_t &used) ;
Base class for factories.
Definition: base.h:48
Base class for interfaces.
Definition: base.h:18
CatalogInterface can only be instantiated through this class.
Definition: dmlite.h:42
Plug-ins must implement a concrete factory to be instantiated.
Definition: poolmanager.h:108
virtual PoolManager * createPoolManager(PluginManager *pm)
Instantiate a implementation of Pool.
static PoolManager * createPoolManager(PoolManagerFactory *factory, PluginManager *pm)
Children of PoolManagerFactory are allowed to instantiate too (decorator)
virtual ~PoolManagerFactory()
Virtual destructor.
Interface for pool types.
Definition: poolmanager.h:40
virtual void newPool(const Pool &pool)
Create a new pool.
virtual std::vector< Pool > getPools(PoolAvailability availability=kAny)
virtual void updatePool(const Pool &pool)
Update pool metadata.
virtual Location whereToRead(const std::string &path)
virtual Location whereToRead(ino_t inode)
virtual void getDirSpaces(const std::string &path, int64_t &totalfree, int64_t &used)
virtual void deletePool(const Pool &pool)
Remove a pool.
PoolAvailability
Definition: poolmanager.h:42
@ kForBoth
Definition: poolmanager.h:42
@ kForWrite
Definition: poolmanager.h:42
@ kForRead
Definition: poolmanager.h:42
@ kNone
Definition: poolmanager.h:42
@ kAny
Definition: poolmanager.h:42
virtual DmStatus fileCopyPush(const std::string &localsrcpath, const std::string &remotedesturl, int cksumcheck, char *cksumtype, dmlite_xferinfo *progressdata)
virtual Location whereToWrite(const std::string &path)
virtual DmStatus fileCopyPull(const std::string &localdestpath, const std::string &remotesrcurl, int cksumcheck, char *cksumtype, dmlite_xferinfo *progressdata)
virtual Location chooseServer(const std::string &path)
virtual ~PoolManager()
Destructor.
virtual Pool getPool(const std::string &poolname)
Get a specific pool.
virtual void cancelWrite(const Location &loc)
Exceptions used by the API.
Extensible types (hold metadata).
Namespace for the dmlite C++ API.
Definition: authn.h:15
struct dmlite::xferprogmarker xferprogmarker
Progress markers for file copies. FTS jargon calls these "FTS performance markers" beware,...
C wrapper for DMLite Pool API.
Helpful typedef for KeyValue containers.
Definition: extensible.h:20
Represent the complete location of a file.
Definition: pooldriver.h:49
Internal interface for handling pool metadata.
Definition: poolmanager.h:22
bool operator<(const Pool &) const
bool operator!=(const Pool &) const
std::string name
Definition: poolmanager.h:23
std::string type
Definition: poolmanager.h:24
bool operator==(const Pool &) const
bool operator>(const Pool &) const
Progress markers for file copies. FTS jargon calls these "FTS performance markers" beware,...
Definition: poolmanager.h:34
int64_t xferred
Definition: poolmanager.h:35
Progress markers for file copies. FTS jargon calls these "FTS performance markers".
Definition: pool.h:73