25 #ifndef __XRD_CL_FILE_SYSTEM_HH__
26 #define __XRD_CL_FILE_SYSTEM_HH__
41 class FileSystemPlugIn;
42 struct MessageSendParams;
197 struct FileSystemImpl;
204 friend class AssignLBHandler;
216 FileSystem(
const URL &url,
bool enablePlugIns =
true );
238 uint16_t timeout = 0 )
254 uint16_t timeout = 0 )
272 uint16_t timeout = 0 )
273 XRD_WARN_UNUSED_RESULT;
288 uint16_t timeout = 0 )
289 XRD_WARN_UNUSED_RESULT;
302 const std::
string &dest,
304 uint16_t timeout = 0 )
305 XRD_WARN_UNUSED_RESULT;
317 const std::
string &dest,
318 uint16_t timeout = 0 )
319 XRD_WARN_UNUSED_RESULT;
336 uint16_t timeout = 0 )
337 XRD_WARN_UNUSED_RESULT;
352 uint16_t timeout = 0 )
353 XRD_WARN_UNUSED_RESULT;
368 uint16_t timeout = 0 )
369 XRD_WARN_UNUSED_RESULT;
382 uint16_t timeout = 0 )
383 XRD_WARN_UNUSED_RESULT;
396 uint16_t timeout = 0 )
397 XRD_WARN_UNUSED_RESULT;
408 uint16_t timeout = 0 )
409 XRD_WARN_UNUSED_RESULT;
426 uint16_t timeout = 0 )
427 XRD_WARN_UNUSED_RESULT;
442 uint16_t timeout = 0 )
443 XRD_WARN_UNUSED_RESULT;
456 uint16_t timeout = 0 )
457 XRD_WARN_UNUSED_RESULT;
468 uint16_t timeout = 0 )
469 XRD_WARN_UNUSED_RESULT;
484 uint16_t timeout = 0 )
485 XRD_WARN_UNUSED_RESULT;
498 uint16_t timeout = 0 )
499 XRD_WARN_UNUSED_RESULT;
510 uint16_t timeout = 0 )
511 XRD_WARN_UNUSED_RESULT;
535 uint16_t timeout = 0 )
536 XRD_WARN_UNUSED_RESULT;
550 uint16_t timeout = 0 )
551 XRD_WARN_UNUSED_RESULT;
566 uint16_t timeout = 0 )
567 XRD_WARN_UNUSED_RESULT;
580 uint16_t timeout = 0 )
581 XRD_WARN_UNUSED_RESULT;
594 uint16_t timeout = 0 )
595 XRD_WARN_UNUSED_RESULT;
606 uint16_t timeout = 0 )
607 XRD_WARN_UNUSED_RESULT;
624 uint16_t timeout = 0 )
625 XRD_WARN_UNUSED_RESULT;
640 uint16_t timeout = 0 )
641 XRD_WARN_UNUSED_RESULT;
656 uint16_t timeout = 0 )
657 XRD_WARN_UNUSED_RESULT;
670 uint16_t timeout = 0 )
671 XRD_WARN_UNUSED_RESULT;
690 uint16_t timeout = 0 )
691 XRD_WARN_UNUSED_RESULT;
708 uint16_t timeout = 0 )
709 XRD_WARN_UNUSED_RESULT;
724 const std::vector<
xattr_t> &attrs,
726 uint16_t timeout = 0 );
739 const std::vector<
xattr_t> &attrs,
741 uint16_t timeout = 0 );
756 const std::vector<std::
string> &attrs,
758 uint16_t timeout = 0 );
771 const std::vector<std::
string> &attrs,
772 std::vector<
XAttr> &result,
773 uint16_t timeout = 0 );
788 const std::vector<std::
string> &attrs,
790 uint16_t timeout = 0 );
803 const std::vector<std::
string> &attrs,
805 uint16_t timeout = 0 );
820 uint16_t timeout = 0 );
832 std::vector<
XAttr> &result,
833 uint16_t timeout = 0 );
841 bool SetProperty( const std::
string &name, const std::
string &value );
848 bool GetProperty( const std::
string &name, std::
string &value ) const;
851 FileSystem(const FileSystem &other);
852 FileSystem &operator = (const FileSystem &other);
876 const std::
string &path,
877 const std::vector<T> &attrs,
879 uint16_t timeout = 0 );
881 FileSystemImpl *pImpl;
886 #endif // __XRD_CL_FILE_SYSTEM_HH__
unsigned char kXR_char
Definition: XPtypes.hh:65
Definition: XProtocol.hh:460
ListXAttrImpl< false > ListXAttr(Ctx< File > file)
Definition: XrdClFileOperations.hh:1361
Definition: XrdClForkHandler.hh:35
Definition: XrdClFileSystem.hh:107
Definition: XProtocol.hh:615
Protocol operation (.
Definition: XrdClFileSystemOperations.hh:664
Definition: XProtocol.hh:587
Implementation dependent.
Definition: XrdClFileSystem.hh:58
Definition: XProtocol.hh:585
Definition: XProtocol.hh:457
SetXAttrImpl< false > SetXAttr(Ctx< File > file, Arg< std::string > name, Arg< std::string > value)
Definition: XrdClFileOperations.hh:1021
Definition: XProtocol.hh:447
Extended attribute operation status.
Definition: XrdClXRootDResponses.hh:294
Definition: XProtocol.hh:445
Directory list.
Definition: XrdClXRootDResponses.hh:649
Definition: XProtocol.hh:456
Object stat info.
Definition: XrdClXRootDResponses.hh:399
Definition: XrdClFileSystem.hh:78
Definition: XProtocol.hh:616
Open only for writing.
Definition: XrdClFileSystem.hh:97
Prepare flags.
Definition: XrdClFileSystem.hh:173
Extended attributes with status.
Definition: XrdClXRootDResponses.hh:312
Definition: XProtocol.hh:446
Query file checksum.
Definition: XrdClFileSystem.hh:56
Definition: XProtocol.hh:617
DelXAttrImpl< false > DelXAttr(Ctx< File > file, Arg< std::string > name)
Definition: XrdClFileOperations.hh:1256
Path location info.
Definition: XrdClXRootDResponses.hh:43
LocateImpl< false > Locate
Definition: XrdClFileSystemOperations.hh:136
Definition: XProtocol.hh:586
Visa operation (.
Definition: XrdClFileOperations.hh:928
Definition: XrdClFileSystem.hh:84
Definition: XProtocol.hh:610
Access mode.
Definition: XrdClFileSystem.hh:116
Definition: XProtocol.hh:443
Flags
Definition: XrdClFileSystem.hh:175
MkDir operation (.
Definition: XrdClFileSystemOperations.hh:384
Implementation dependent.
Definition: XrdClFileSystem.hh:57
Prepare operation (.
Definition: XrdClFileSystemOperations.hh:799
Procedure execution status.
Definition: XrdClStatus.hh:113
#define XRD_WARN_UNUSED_RESULT
Definition: XrdOucCompiler.hh:31
GetXAttrImpl< false > GetXAttr(Ctx< File > file, Arg< std::string > name)
Definition: XrdClFileOperations.hh:1139
std::vector< LocationInfo > LocationList
Location list.
Definition: XrdClFileSystem.hh:208
Ping operation (.
Definition: XrdClFileSystemOperations.hh:527
Definition: XrdClFileSystem.hh:100
Query file checksum cancellation.
Definition: XrdClFileSystem.hh:55
Definition: XProtocol.hh:467
DirList flags.
Definition: XrdClFileSystem.hh:153
Open flags, may be or'd when appropriate.
Definition: XrdClFileSystem.hh:70
Protocol response.
Definition: XrdClXRootDResponses.hh:341
Query operation (.
Definition: XrdClFileSystemOperations.hh:238
Definition: XProtocol.hh:442
Definition: XrdClFileSystem.hh:82
Definition: XProtocol.hh:444
Flags
Definition: XrdClFileSystem.hh:142
Definition: XrdClFileSystem.hh:98
Definition: XProtocol.hh:618
File will be read or written sequentially.
Definition: XrdClFileSystem.hh:104
MkDir flags.
Definition: XrdClFileSystem.hh:140
Open for reading and writing.
Definition: XrdClFileSystem.hh:96
Definition: XProtocol.hh:468
none object for initializing empty Optional
Definition: XrdClOptional.hh:35
Definition: XProtocol.hh:464
Definition: XProtocol.hh:440
RmDir operation (.
Definition: XrdClFileSystemOperations.hh:433
XRootD query request codes.
Definition: XrdClFileSystem.hh:47
Request status.
Definition: XrdClXRootDResponses.hh:218
StatVS operation (.
Definition: XrdClFileSystemOperations.hh:617
StatImpl< false > Stat(Ctx< File > file, Arg< bool > force, uint16_t timeout=0)
Definition: XrdClFileOperations.hh:535
Definition: XrdClFileSystem.hh:105
Definition: XProtocol.hh:619
Definition: XProtocol.hh:614
TruncateImpl< false > Truncate(Ctx< File > file, Arg< uint64_t > size, uint16_t timeout)
Definition: XrdClFileOperations.hh:692
VFS stat info.
Definition: XrdClXRootDResponses.hh:572
ChMod operation (.
Definition: XrdClFileSystemOperations.hh:479
Definition: XProtocol.hh:455
Definition: XProtocol.hh:441
Definition: XProtocol.hh:448
Definition: XrdClFileSystem.hh:102
Definition: XProtocol.hh:453
Handle an async response.
Definition: XrdClXRootDResponses.hh:1116
Definition: XProtocol.hh:611
Mv operation (.
Definition: XrdClFileSystemOperations.hh:190
Code
XRootD query request codes.
Definition: XrdClFileSystem.hh:52
Open only for reading.
Definition: XrdClFileSystem.hh:95
URL representation.
Definition: XrdClURL.hh:30
Rm operation (.
Definition: XrdClFileSystemOperations.hh:339
Definition: XProtocol.hh:582
Definition: XProtocol.hh:452
Flags
Definition: XrdClFileSystem.hh:155
Definition: XProtocol.hh:588
Definition: XProtocol.hh:465
Query server stats.
Definition: XrdClFileSystem.hh:61
#define XRDOUC_ENUM_OPERATORS(T)
Definition: XrdOucEnum.hh:22
Mode
Access mode.
Definition: XrdClFileSystem.hh:121
Definition: XrdClFileSystem.hh:86
Definition: XProtocol.hh:591
SendInfo operation (.
Definition: XrdClFileSystemOperations.hh:752
Send file/filesystem queries to an XRootD cluster.
Definition: XrdClFileSystem.hh:202
Definition: XProtocol.hh:466
Definition: XProtocol.hh:459
Definition: XProtocol.hh:613
Query logical space stats.
Definition: XrdClFileSystem.hh:60
Definition: XrdClFileSystem.hh:80
Definition: XProtocol.hh:469
Definition: XProtocol.hh:461
Query server configuration.
Definition: XrdClFileSystem.hh:54
Flags
Open flags, may be or'd when appropriate.
Definition: XrdClFileSystem.hh:75
std::tuple< std::string, std::string > xattr_t
Extended attribute key - value pair.
Definition: XrdClXRootDResponses.hh:289
Locate operation (.
Definition: XrdClFileSystemOperations.hh:94
Definition: XProtocol.hh:612
Definition: XProtocol.hh:454
An interface for file plug-ins.
Definition: XrdClPlugInInterface.hh:283
Definition: XrdClFileSystem.hh:88
Binary blob representation.
Definition: XrdClBuffer.hh:33
DirList operation (.
Definition: XrdClFileSystemOperations.hh:704
DeepLocate operation (.
Definition: XrdClFileSystemOperations.hh:142