Go to the documentation of this file.
26 #ifndef __XRD_CL_FILE_SYSTEM_OPERATIONS_HH__
27 #define __XRD_CL_FILE_SYSTEM_OPERATIONS_HH__
43 template<
template<
bool>
class Derived,
bool HasHndl,
typename Response,
typename ... Args>
102 template<
bool HasHndl>
140 std::string path = std::get<PathArg>( this->args ).Get();
142 return this->filesystem->Locate( path, flags, this->handler.get() );
148 catch(
const std::exception& ex )
159 template<
bool HasHndl>
161 Resp<LocationInfo>, Arg<std::string>, Arg<OpenFlags::Flags>>
197 std::string path = std::get<PathArg>( this->
args ).Get();
205 catch(
const std::exception& ex )
216 template<
bool HasHndl>
254 std::string source = std::get<SourceArg>( this->
args ).Get();
255 std::string dest = std::get<DestArg>( this->
args ).Get();
262 catch(
const std::exception& ex )
273 template<
bool HasHndl>
275 Arg<QueryCode::Code>, Arg<Buffer>>
312 const Buffer buffer( std::get<BufferArg>( this->
args ).Get() );
319 catch(
const std::exception& ex )
330 template<
bool HasHndl>
332 Arg<std::string>, Arg<uint64_t>>
368 std::string path = std::get<PathArg>( this->
args ).Get();
369 uint64_t size = std::get<SizeArg>( this->
args ).Get();
376 catch(
const std::exception& ex )
396 template<
bool HasHndl>
432 std::string path = std::get<PathArg>( this->
args ).Get();
439 catch(
const std::exception& ex )
450 template<
bool HasHndl>
452 Arg<std::string>, Arg<MkDirFlags::Flags>, Arg<Access::Mode>>
488 std::string path = std::get<PathArg>( this->
args ).Get();
497 catch(
const std::exception& ex )
508 template<
bool HasHndl>
545 std::string path = std::get<PathArg>( this->
args ).Get();
552 catch(
const std::exception& ex )
563 template<
bool HasHndl>
565 Arg<std::string>, Arg<Access::Mode>>
601 std::string path = std::get<PathArg>( this->
args ).Get();
609 catch(
const std::exception& ex )
620 template<
bool HasHndl>
657 template<
bool HasHndl>
695 std::string path = std::get<PathArg>( this->
args ).Get();
702 catch(
const std::exception& ex )
722 template<
bool HasHndl>
724 Resp<StatInfoVFS>, Arg<std::string>>
760 std::string path = std::get<PathArg>( this->
args ).Get();
767 catch(
const std::exception& ex )
778 template<
bool HasHndl>
816 template<
bool HasHndl>
818 Arg<std::string>, Arg<DirListFlags::Flags>>
854 std::string path = std::get<PathArg>( this->
args ).Get();
862 catch(
const std::exception& ex )
873 template<
bool HasHndl>
911 std::string info = std::get<InfoArg>( this->
args ).Get();
918 catch(
const std::exception& ex )
929 template<
bool HasHndl>
931 Arg<std::vector<std::string>>, Arg<PrepareFlags::Flags>, Arg<uint8_t>>
967 std::vector<std::string> fileList = std::get<FileListArg>( this->
args ).Get();
969 uint8_t priority = std::get<PriorityArg>( this->
args ).Get();
977 catch(
const std::exception& ex )
986 #endif // __XRD_CL_FILE_SYSTEM_OPERATIONS_HH__
Locate operation (.
Definition: XrdClFileSystemOperations.hh:103
RmImpl< false > Rm
Definition: XrdClFileSystemOperations.hh:445
RmDirImpl< false > RmDir
Definition: XrdClFileSystemOperations.hh:558
@ PathArg
Definition: XrdClFileSystemOperations.hh:578
SendInfoImpl< false > SendInfo
Definition: XrdClFileSystemOperations.hh:924
const XRootDStatus & GetError() const
Definition: XrdClOperationHandlers.hh:351
@ PathArg
Definition: XrdClFileSystemOperations.hh:522
@ SourceArg
Definition: XrdClFileSystemOperations.hh:231
XRootDStatus Mv(const std::string &source, const std::string &dest, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
StatVS operation (.
Definition: XrdClFileSystemOperations.hh:723
Protocol operation (.
Definition: XrdClFileSystemOperations.hh:779
LocateImpl< false > Locate
Definition: XrdClFileSystemOperations.hh:154
friend class FileSystemOperation
Definition: XrdClFileSystemOperations.hh:47
@ PathArg
Definition: XrdClFileSystemOperations.hh:409
@ PathArg
Definition: XrdClFileSystemOperations.hh:737
@ BufferArg
Definition: XrdClFileSystemOperations.hh:288
XRootDStatus RmDir(const std::string &path, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
MkDirImpl< false > MkDir
Definition: XrdClFileSystemOperations.hh:503
std::string ToString()
Definition: XrdClFileSystemOperations.hh:949
@ FlagsArg
Definition: XrdClFileSystemOperations.hh:465
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:597
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:907
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:193
Flags
Definition: XrdClFileSystem.hh:141
@ ModeArg
Definition: XrdClFileSystemOperations.hh:578
XRootDStatus DeepLocate(const std::string &path, OpenFlags::Flags flags, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
@ PathArg
Definition: XrdClFileSystemOperations.hh:345
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:541
std::string ToString()
Definition: XrdClFileSystemOperations.hh:350
Stat operation (.
Definition: XrdClFileSystemOperations.hh:658
TruncateImpl< false > Truncate(File *file, Arg< uint64_t > size)
Definition: XrdClFileOperations.hh:564
std::string ToString()
Definition: XrdClFileSystemOperations.hh:179
Definition: XrdClArg.hh:285
std::unique_ptr< PipelineHandler > handler
Operation handler.
Definition: XrdClOperations.hh:280
FileSystemOperation(FileSystemOperation< Derived, from, Response, Args... > &&op)
Definition: XrdClFileSystemOperations.hh:79
Pipeline exception, wrapps an XRootDStatus.
Definition: XrdClOperationHandlers.hh:311
MvImpl< false > Mv
Definition: XrdClFileSystemOperations.hh:268
std::string ToString()
Definition: XrdClFileSystemOperations.hh:236
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:963
FileSystemOperation(FileSystem *fs, Args... args)
Definition: XrdClFileSystemOperations.hh:56
XRootDStatus Ping(ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:250
Mode
Access mode.
Definition: XrdClFileSystem.hh:120
std::tuple< Args... > args
Operation arguments.
Definition: XrdClOperations.hh:686
Definition: XrdClOperations.hh:467
PingImpl< false > Ping
Definition: XrdClFileSystemOperations.hh:652
@ PathArg
Definition: XrdClFileSystemOperations.hh:465
XRootDStatus MkDir(const std::string &path, MkDirFlags::Flags flags, Access::Mode mode, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
@ PriorityArg
Definition: XrdClFileSystemOperations.hh:944
Code
XRootD query request codes.
Definition: XrdClFileSystem.hh:53
@ FileListArg
Definition: XrdClFileSystemOperations.hh:944
Request status.
Definition: XrdClXRootDResponses.hh:212
XRootDStatus DirList(const std::string &path, DirListFlags::Flags flags, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
std::string ToString()
Definition: XrdClFileSystemOperations.hh:293
XRootDStatus SendInfo(const std::string &info, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
@ SizeArg
Definition: XrdClFileSystemOperations.hh:345
MkDir operation (.
Definition: XrdClFileSystemOperations.hh:451
@ ModeArg
Definition: XrdClFileSystemOperations.hh:465
DirListImpl< false > DirList
Definition: XrdClFileSystemOperations.hh:868
std::string ToString()
Definition: XrdClFileSystemOperations.hh:633
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:691
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:647
@ FlagsArg
Definition: XrdClFileSystemOperations.hh:831
XRootDStatus Protocol(ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
Query operation (.
Definition: XrdClFileSystemOperations.hh:274
XRootDStatus Rm(const std::string &path, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:850
DeepLocateImpl< false > DeepLocate
Definition: XrdClFileSystemOperations.hh:211
std::string ToString()
Definition: XrdClFileSystemOperations.hh:583
SendInfo operation (.
Definition: XrdClFileSystemOperations.hh:874
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:756
std::string ToString()
Definition: XrdClFileSystemOperations.hh:677
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:307
@ FlagsArg
Definition: XrdClFileSystemOperations.hh:174
ChModImpl< false > ChMod
Definition: XrdClFileSystemOperations.hh:615
@ DestArg
Definition: XrdClFileSystemOperations.hh:231
std::string ToString()
Definition: XrdClFileSystemOperations.hh:893
FileSystem * filesystem
The file system object itself.
Definition: XrdClFileSystemOperations.hh:96
StatImpl< false > Stat(File *file, Arg< bool > force)
Definition: XrdClFileOperations.hh:398
QueryImpl< false > Query
Definition: XrdClFileSystemOperations.hh:325
StatVFSImpl< false > StatVFS
Definition: XrdClFileSystemOperations.hh:773
DirList operation (.
Definition: XrdClFileSystemOperations.hh:817
virtual ~FileSystemOperation()
Destructor.
Definition: XrdClFileSystemOperations.hh:87
RmDir operation (.
Definition: XrdClFileSystemOperations.hh:509
FileSystemOperation(FileSystem &fs, Args... args)
Definition: XrdClFileSystemOperations.hh:67
Send file/filesystem queries to an XRootD cluster.
Definition: XrdClFileSystem.hh:195
Mv operation (.
Definition: XrdClFileSystemOperations.hh:217
@ PathArg
Definition: XrdClFileSystemOperations.hh:831
DeepLocate operation (.
Definition: XrdClFileSystemOperations.hh:160
Definition: XrdClAnyObject.hh:25
Rm operation (.
Definition: XrdClFileSystemOperations.hh:397
PrepareImpl< false > Prepare
Definition: XrdClFileSystemOperations.hh:983
XRootDStatus Truncate(const std::string &path, uint64_t size, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
ProtocolImpl< false > Protocol
Definition: XrdClFileSystemOperations.hh:811
ChMod operation (.
Definition: XrdClFileSystemOperations.hh:564
Definition: XrdClFileSystemOperations.hh:44
@ FlagsArg
Definition: XrdClFileSystemOperations.hh:944
XRootDStatus Query(QueryCode::Code queryCode, const Buffer &arg, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:428
Flags
Definition: XrdClFileSystem.hh:173
Definition: XrdClArg.hh:223
@ PathArg
Definition: XrdClFileSystemOperations.hh:117
XRootDStatus Prepare(const std::vector< std::string > &fileList, PrepareFlags::Flags flags, uint8_t priority, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
@ PathArg
Definition: XrdClFileSystemOperations.hh:672
@ QueryCodeArg
Definition: XrdClFileSystemOperations.hh:288
XRootDStatus StatVFS(const std::string &path, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:484
const uint16_t stError
An error occurred that could potentially be retried.
Definition: XrdClStatus.hh:32
Prepare operation (.
Definition: XrdClFileSystemOperations.hh:930
std::string ToString()
Definition: XrdClFileSystemOperations.hh:527
Flags
Definition: XrdClFileSystem.hh:154
@ InfoArg
Definition: XrdClFileSystemOperations.hh:888
XRootDStatus ChMod(const std::string &path, Access::Mode mode, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
Truncate operation (.
Definition: XrdClFileSystemOperations.hh:331
Binary blob representation.
Definition: XrdClBuffer.hh:33
Ping operation (.
Definition: XrdClFileSystemOperations.hh:621
std::string ToString()
Definition: XrdClFileSystemOperations.hh:792
std::string ToString()
Definition: XrdClFileSystemOperations.hh:414
std::string ToString()
Definition: XrdClFileSystemOperations.hh:122
std::string ToString()
Definition: XrdClFileSystemOperations.hh:836
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:136
std::string ToString()
Definition: XrdClFileSystemOperations.hh:470
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:364
Flags
Open flags, may be or'd when appropriate.
Definition: XrdClFileSystem.hh:76
std::string ToString()
Definition: XrdClFileSystemOperations.hh:742
@ PathArg
Definition: XrdClFileSystemOperations.hh:174
XRootDStatus RunImpl()
Definition: XrdClFileSystemOperations.hh:806