25#ifndef __XRD_CL_FILE_HH__
26#define __XRD_CL_FILE_HH__
58 File(
bool enablePlugIns =
true );
85 uint16_t timeout = 0 )
101 uint16_t timeout = 0 )
113 uint16_t timeout = 0 )
138 uint16_t timeout = 0 )
152 uint16_t timeout = 0 )
174 uint16_t timeout = 0 )
192 uint16_t timeout = 0 )
212 uint16_t timeout = 0 )
230 std::vector<uint32_t> &cksums,
232 uint16_t timeout = 0 )
253 uint16_t timeout = 0 )
273 uint16_t timeout = 0 )
290 uint16_t timeout = 0 );
304 uint16_t timeout = 0 );
325 uint16_t timeout = 0 );
344 uint16_t timeout = 0 );
361 std::vector<uint32_t> &cksums,
363 uint16_t timeout = 0 )
380 std::vector<uint32_t> &cksums,
381 uint16_t timeout = 0 )
393 uint16_t timeout = 0 )
417 uint16_t timeout = 0 )
430 uint16_t timeout = 0 )
453 uint16_t timeout = 0 )
476 uint16_t timeout = 0 )
490 uint16_t timeout = 0 )
502 uint16_t timeout = 0 )
517 const struct iovec *
iov,
520 uint16_t timeout = 0 );
533 const struct iovec *
iov,
535 uint16_t timeout = 0 );
552 uint16_t timeout = 0 );
569 uint16_t timeout = 0 );
585 uint16_t timeout = 0 )
600 uint16_t timeout = 0 )
614 uint16_t timeout = 0 )
626 uint16_t timeout = 0 )
643 uint16_t timeout = 0 );
657 uint16_t timeout = 0 );
673 uint16_t timeout = 0 );
686 std::vector<
XAttr> &result,
687 uint16_t timeout = 0 );
703 uint16_t timeout = 0 );
717 uint16_t timeout = 0 );
731 uint16_t timeout = 0 );
743 uint16_t timeout = 0 );
789 template<
bool HasHndl>
792 template<
bool HasHndl>
795 template <
bool HasHndl>
811 uint16_t timeout = 0 );
828 uint16_t timeout = 0 );
842 const struct iovec *
iov,
845 uint16_t timeout = 0 );
#define XRD_WARN_UNUSED_RESULT
Binary blob representation.
An interface for file plug-ins.
bool IsSecure() const
Check if the file is using an encrypted connection.
bool IsOpen() const
Check if the file is open.
friend class ChkptWrtImpl
friend class CheckpointImpl
XRootDStatus Open(const std::string &url, OpenFlags::Flags flags, Access::Mode mode, ResponseHandler *handler, uint16_t timeout=0) XRD_WARN_UNUSED_RESULT
friend class ChkptWrtVImpl
bool GetProperty(const std::string &name, std::string &value) const
File(bool enablePlugIns=true)
Constructor.
virtual ~File()
Destructor.
bool SetProperty(const std::string &name, const std::string &value)
XRootDStatus TryOtherServer(uint16_t timeout=0)
XRootDStatus ReadV(uint64_t offset, struct iovec *iov, int iovcnt, ResponseHandler *handler, uint16_t timeout=0)
Handle an async response.
VectorWriteImpl< false > VectorWrite(Ctx< File > file, Arg< ChunkList > chunks, uint16_t timeout=0)
Factory for creating VectorWriteImpl objects.
GetXAttrImpl< false > GetXAttr(Ctx< File > file, Arg< std::string > name)
ReadImpl< false > Read(Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout=0)
Factory for creating ReadImpl objects.
SyncImpl< false > Sync(Ctx< File > file, uint16_t timeout=0)
Factory for creating SyncImpl objects.
StatImpl< false > Stat(Ctx< File > file, Arg< bool > force, uint16_t timeout=0)
CloseImpl< false > Close(Ctx< File > file, uint16_t timeout=0)
Factory for creating CloseImpl objects.
DelXAttrImpl< false > DelXAttr(Ctx< File > file, Arg< std::string > name)
TruncateImpl< false > Truncate(Ctx< File > file, Arg< uint64_t > size, uint16_t timeout)
PgReadImpl< false > PgRead(Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout=0)
Factory for creating PgReadImpl objects.
WriteVImpl< false > WriteV(Ctx< File > file, Arg< uint64_t > offset, Arg< std::vector< iovec > > iov, uint16_t timeout=0)
Factory for creating WriteVImpl objects.
SetXAttrImpl< false > SetXAttr(Ctx< File > file, Arg< std::string > name, Arg< std::string > value)
ListXAttrImpl< false > ListXAttr(Ctx< File > file)
WriteImpl< false > Write(Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< const void * > buffer, uint16_t timeout=0)
Factory for creating WriteImpl objects.
std::tuple< std::string, std::string > xattr_t
Extended attribute key - value pair.
PgWriteImpl< false > PgWrite(Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, Arg< std::vector< uint32_t > > cksums, uint16_t timeout=0)
Factory for creating PgReadImpl objects.
std::vector< ChunkInfo > ChunkList
List of chunks.
VectorReadImpl< false > VectorRead(Ctx< File > file, Arg< ChunkList > chunks, Arg< void * > buffer, uint16_t timeout=0)
Factory for creating VectorReadImpl objects.
OpenImpl< false > Open(Ctx< File > file, Arg< std::string > url, Arg< OpenFlags::Flags > flags, Arg< Access::Mode > mode=Access::None, uint16_t timeout=0)
Factory for creating ReadImpl objects.
Response NullRef< Response >::value
none object for initializing empty Optional
Open flags, may be or'd when appropriate.
Flags
Open flags, may be or'd when appropriate.
Extended attribute operation status.
Extended attributes with status.