#include <catalog.h>
Inherits dmlite::BaseInterface.
Inherited by dmlite::BuiltInCatalog, and dmlite::DummyCatalog.
Inheritance diagram for dmlite::Catalog:
Public Member Functions | |
virtual | ~Catalog () |
Destructor. | |
virtual void | changeDir (const std::string &path) throw (DmException) |
virtual std::string | getWorkingDir (void) throw (DmException) |
virtual ExtendedStat | extendedStat (const std::string &path, bool followSym=true) throw (DmException) |
virtual ExtendedStat | extendedStatByRFN (const std::string &rfn) throw (DmException) |
virtual bool | access (const std::string &path, int mode) throw (DmException) |
virtual bool | accessReplica (const std::string &replica, int mode) throw (DmException) |
virtual void | addReplica (const Replica &replica) throw (DmException) |
virtual void | deleteReplica (const Replica &replica) throw (DmException) |
virtual std::vector< Replica > | getReplicas (const std::string &path) throw (DmException) |
virtual void | symlink (const std::string &path, const std::string &symlink) throw (DmException) |
virtual std::string | readLink (const std::string &path) throw (DmException) |
virtual void | unlink (const std::string &path) throw (DmException) |
virtual void | create (const std::string &path, mode_t mode) throw (DmException) |
virtual mode_t | umask (mode_t mask) throw () |
virtual void | setMode (const std::string &path, mode_t mode) throw (DmException) |
virtual void | setOwner (const std::string &path, uid_t newUid, gid_t newGid, bool followSymLink=true) throw (DmException) |
virtual void | setSize (const std::string &path, size_t newSize) throw (DmException) |
virtual void | setChecksum (const std::string &path, const std::string &csumtype, const std::string &csumvalue) throw (DmException) |
virtual void | setAcl (const std::string &path, const Acl &acl) throw (DmException) |
virtual void | utime (const std::string &path, const struct utimbuf *buf) throw (DmException) |
virtual std::string | getComment (const std::string &path) throw (DmException) |
virtual void | setComment (const std::string &path, const std::string &comment) throw (DmException) |
virtual void | setGuid (const std::string &path, const std::string &guid) throw (DmException) |
virtual void | updateExtendedAttributes (const std::string &path, const Extensible &attr) throw (DmException) |
virtual Directory * | openDir (const std::string &path) throw (DmException) |
virtual void | closeDir (Directory *dir) throw (DmException) |
virtual struct dirent * | readDir (Directory *dir) throw (DmException) |
virtual ExtendedStat * | readDirx (Directory *dir) throw (DmException) |
virtual void | makeDir (const std::string &path, mode_t mode) throw (DmException) |
virtual void | rename (const std::string &oldPath, const std::string &newPath) throw (DmException) |
virtual void | removeDir (const std::string &path) throw (DmException) |
virtual Replica | getReplicaByRFN (const std::string &rfn) throw (DmException) |
virtual void | updateReplica (const Replica &replica) throw (DmException) |
virtual dmlite::Catalog::~Catalog | ( | ) | [virtual] |
Destructor.
virtual bool dmlite::Catalog::access | ( | const std::string & | path, | |
int | mode | |||
) | throw (DmException) [virtual] |
Checks wether the process would be allowed to read, write, or check existence.
lfn | Logical filename. | |
mode | A mask consisting of one or more of R_OK, W_OK, X_OK and F_OK. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual bool dmlite::Catalog::accessReplica | ( | const std::string & | replica, | |
int | mode | |||
) | throw (DmException) [virtual] |
Checks wether the process would be allowed to read, write, or check existence.
rfn | Replica filename. | |
mode | A mask consisting of one or more of R_OK, W_OK, X_OK and F_OK. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::addReplica | ( | const Replica & | replica | ) | throw (DmException) [virtual] |
Add a new replica for a file.
replica | Stores the data that is going to be added. fileid must point to the id of the logical file in the catalog. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::changeDir | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Change the working dir. Future not-absolute paths will use this as root.
path | The new working dir. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::closeDir | ( | Directory * | dir | ) | throw (DmException) [virtual] |
Close a directory opened previously.
dir | The directory handle as returned by NsInterface::openDir. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::create | ( | const std::string & | path, | |
mode_t | mode | |||
) | throw (DmException) [virtual] |
Creates an entry in the catalog.
path | The new file. | |
mode | The creation mode. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::deleteReplica | ( | const Replica & | replica | ) | throw (DmException) [virtual] |
Delete a replica.
replica | The replica to remove. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual ExtendedStat dmlite::Catalog::extendedStat | ( | const std::string & | path, | |
bool | followSym = true | |||
) | throw (DmException) [virtual] |
Do an extended stat of a file or directory.
path | The path of the file or directory. | |
followSym | If true, symlinks will be followed. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual ExtendedStat dmlite::Catalog::extendedStatByRFN | ( | const std::string & | rfn | ) | throw (DmException) [virtual] |
Do an extended stat of a logical file using an associated replica file name.
rfn | The replica. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual std::string dmlite::Catalog::getComment | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Get the comment associated with a file.
path | The file or directory. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual Replica dmlite::Catalog::getReplicaByRFN | ( | const std::string & | rfn | ) | throw (DmException) [virtual] |
Get a replica.
rfn | The replica file name. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual std::vector<Replica> dmlite::Catalog::getReplicas | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Get replicas for a file.
path | The file for which replicas will be retrieved. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual std::string dmlite::Catalog::getWorkingDir | ( | void | ) | throw (DmException) [virtual] |
Get the current working dir.
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::makeDir | ( | const std::string & | path, | |
mode_t | mode | |||
) | throw (DmException) [virtual] |
Create a new empty directory.
path | The path of the new directory. | |
mode | The creation mode. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual Directory* dmlite::Catalog::openDir | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Open a directory for reading.
path | The directory to open. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual struct dirent* dmlite::Catalog::readDir | ( | Directory * | dir | ) | throw (DmException) [virtual] |
Read next entry from a directory (simple read).
dir | The directory handle as returned by NsInterface::openDir. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual ExtendedStat* dmlite::Catalog::readDirx | ( | Directory * | dir | ) | throw (DmException) [virtual] |
Read next entry from a directory (stat information added).
dir | The directory handle as returned by NsInterface::openDir. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual std::string dmlite::Catalog::readLink | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Returns the path pointed by the symlink path
path | The symlink file. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::removeDir | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Remove a directory.
path | The path of the directory to remove. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::rename | ( | const std::string & | oldPath, | |
const std::string & | newPath | |||
) | throw (DmException) [virtual] |
Rename a file or directory.
oldPath | The old name. | |
newPath | The new name. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::setAcl | ( | const std::string & | path, | |
const Acl & | acl | |||
) | throw (DmException) [virtual] |
Set the ACLs
path | The file to modify. | |
acl | The Access Control List. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::setChecksum | ( | const std::string & | path, | |
const std::string & | csumtype, | |||
const std::string & | csumvalue | |||
) | throw (DmException) [virtual] |
Set the checksum of a file.
path | The file to modify. | |
csumtype | The checksum type (CS, AD or MD). | |
csumvalue | The checksum value. |
Reimplemented in dmlite::DummyCatalog.
virtual void dmlite::Catalog::setComment | ( | const std::string & | path, | |
const std::string & | comment | |||
) | throw (DmException) [virtual] |
Set the comment associated with a file.
path | The file or directory. | |
comment | The new comment. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::setGuid | ( | const std::string & | path, | |
const std::string & | guid | |||
) | throw (DmException) [virtual] |
Set GUID of a file.
path | The file. | |
guid | The new GUID. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::setMode | ( | const std::string & | path, | |
mode_t | mode | |||
) | throw (DmException) [virtual] |
Set the mode of a file.
path | The file to modify. | |
mode | The new mode as an integer (i.e. 0755) |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::setOwner | ( | const std::string & | path, | |
uid_t | newUid, | |||
gid_t | newGid, | |||
bool | followSymLink = true | |||
) | throw (DmException) [virtual] |
Set the owner of a file.
path | The file to modify. | |
newUid | The uid of the new owneer. | |
newGid | The gid of the new group. | |
followSymLink | If set to true, symbolic links will be followed. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::setSize | ( | const std::string & | path, | |
size_t | newSize | |||
) | throw (DmException) [virtual] |
Set the size of a file.
path | The file to modify. | |
newSize | The new file size. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::symlink | ( | const std::string & | path, | |
const std::string & | symlink | |||
) | throw (DmException) [virtual] |
Creates a new symlink.
path | The existing path. | |
symlink | The new access path. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual mode_t dmlite::Catalog::umask | ( | mode_t | mask | ) | throw () [virtual] |
Sets the calling process’s file mode creation mask to mask & 0777.
mask | The new mask. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::unlink | ( | const std::string & | path | ) | throw (DmException) [virtual] |
Remove a file.
path | The path to remove. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::updateExtendedAttributes | ( | const std::string & | path, | |
const Extensible & | attr | |||
) | throw (DmException) [virtual] |
Update extended metadata on the catalog.
path | The file to update. | |
attr | The extended attributes struct. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::updateReplica | ( | const Replica & | replica | ) | throw (DmException) [virtual] |
Update a replica.
replica | The replica to modify. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.
virtual void dmlite::Catalog::utime | ( | const std::string & | path, | |
const struct utimbuf * | buf | |||
) | throw (DmException) [virtual] |
Set access and/or modification time.
path | The file path. | |
buf | A struct holding the new times. |
Reimplemented in dmlite::DummyCatalog, and dmlite::BuiltInCatalog.