 |
ewmscp
..
|
Go to the documentation of this file. 1 #ifndef __outputHandlerDaosFs_h__
2 #define __outputHandlerDaosFs_h__
16 std::unique_ptr<ioHandle::attrDataType>
attrData;
25 std::unique_ptr<ioHandle::attrDataType> aAttrData,
26 std::unique_ptr<acl::list> aAclData,
30 std::unique_ptr<ioHandle::attrDataType> aAttrData,
31 std::unique_ptr<acl::list> aAclData,
35 void seek(
size_t position) override;
37 size_t getSize() const override;
44 ~
daosFs() override = default;
59 const std::
string& srcPath,
63 const std::
string& toPath) override;
65 const std::unique_ptr<const
genericStat>& readInitialStat,
66 const std::
string& toPath,
69 const std::
string&
path,
70 uid_t
uid, gid_t
gid) override;
void seek(size_t position) override
void closeAndRemoveBadCopy() override
struct stat writeInitialStat
generic stat abstraction class Used to abstract the variants of the stat structure.
std::unique_ptr< acl::list > aclData
static factoryTemplate< daosFs > factory
void doAttributePreservations(const genericStat &readInitialStat) override
~writerDaosFs() noexcept(false) override
std::unique_ptr< writer > newWriter(const std::string &path, bool mightAppend, size_t sourceSize, size_t readBlockSize, copyRequest::stateType &state, bool noWrite, std::unique_ptr< ioHandle::attrDataType > attrData, std::unique_ptr< acl::list > aclData) override
size_t getMaxNameLength(const std::string &dirPath) override
options::single< int > gid
base::renameRetvalType rename(const std::string &fromPath, const std::unique_ptr< const genericStat > &readInitialStat, const std::string &toPath, copyRequest::stateType &state) override
void ensureParentDirs(const std::string &path, const std::string &srcPath, inputHandler::base *InputHandler) override
std::unique_ptr< writer > newTmpWriter(std::string &path, size_t sourceSize, bool noWrite, std::unique_ptr< ioHandle::attrDataType > attrData, std::unique_ptr< acl::list > aclData) override
bool parallelizable() const override
tell if this handler is capable of parallel IO. Unsually not the case
writerDaosFs(const std::string &aPath, bool mightAppend, size_t sourceSize, size_t readBlockSize, copyRequest::stateType &state, bool noWrite, std::unique_ptr< ioHandle::attrDataType > aAttrData, std::unique_ptr< acl::list > aAclData, daosFs &aHandler)
data block, used to hold the data that are being copied (or checksummed).
void writeBlock(const block &b) override
bool renameSimple(const std::string &fromPath, const std::string &toPath) override
options::single< int > uid
void createSymlink(const std::vector< char > &target, const std::string &path, uid_t uid, gid_t gid) override
base class for daosFs reader and writer class with the common stuff like fd, path and xattr handling
template for factoryClass-derived factories
size_t getSize() const override
class as base for inputHandler::base::reader and outputHandler::base::writer containing the common pa...
void writeBlockP(const block &b) override
std::unique_ptr< ioHandle::attrDataType > attrData
void remove(const std::string &path, copyRequest::stateType &state) override