xrootd
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Classes | Typedefs | Enumerations | Functions | Variables
XrdCl Namespace Reference

Classes

class  AnyObject
 
struct  sequence
 
struct  seq_gen
 
struct  seq_gen< I, Ns...>
 
struct  seq_gen< 0, Ns...>
 
class  ArgBase
 Base class for Arg. More...
 
class  Arg
 
class  Arg< std::string >
 
class  AsyncHSReader
 Utility class encapsulating reading hand-shake response logic. More...
 
class  AsyncHSWriter
 Utility class encapsulating writing hand-shake request logic. More...
 
class  AsyncMsgReader
 Utility class encapsulating reading response message logic. More...
 
class  AsyncMsgWriter
 Utility class encapsulating writing request logic. More...
 
class  AsyncPageReader
 Object for reading out data from the PgRead response. More...
 
class  AsyncSocketHandler
 
class  Buffer
 Binary blob representation. More...
 
class  Channel
 A communication channel between the client and the server. More...
 
class  ChannelHandlerList
 A helper for handling channel event handlers. More...
 
class  CheckpointImpl
 Checkpoint operation (. More...
 
class  ChkptWrtImpl
 Checkpointed write operation (. More...
 
class  ChkptWrtVImpl
 Checkpointed WriteV operation (. More...
 
class  CheckSumHelper
 Check sum helper for stdio. More...
 
class  CheckSumManager
 Manage the checksum calc objects. More...
 
class  ClassicCopyJob
 
class  CopyJob
 Copy job. More...
 
class  CopyProgressHandler
 Interface for copy progress notification. More...
 
class  CopyProcess
 Copy the data from one point to another. More...
 
struct  Ctx
 Utility class for storing a pointer to operation context. More...
 
class  DefaultEnv
 
class  DlgEnv
 
class  EcPgReadResponseHandler
 
class  EcHandler
 
class  EcPlugInFactory
 Plugin factory. More...
 
class  Env
 
class  File
 A file. More...
 
class  FileOperation
 
class  OpenImpl
 Open operation (. More...
 
class  ReadImpl
 Read operation (. More...
 
class  PgReadImpl
 PgRead operation (. More...
 
struct  ReadTrait
 RdWithRsp: factory for creating ReadImpl/PgReadImpl objects. More...
 
struct  ReadTrait< ChunkInfo >
 
struct  ReadTrait< PageInfo >
 
class  PgWriteImpl
 PgWrite operation (. More...
 
class  CloseImpl
 Close operation (. More...
 
class  StatImpl
 Stat operation (. More...
 
class  WriteImpl
 Write operation (. More...
 
class  SyncImpl
 Sync operation (. More...
 
class  TruncateImpl
 Truncate operation (. More...
 
class  VectorReadImpl
 VectorRead operation (. More...
 
class  VectorWriteImpl
 VectorWrite operation (. More...
 
class  WriteVImpl
 WriteV operation (. More...
 
class  FcntlImpl
 Fcntl operation (. More...
 
class  VisaImpl
 Visa operation (. More...
 
class  SetXAttrImpl
 SetXAttr operation (. More...
 
class  SetXAttrBulkImpl
 SetXAttr bulk operation (. More...
 
class  GetXAttrImpl
 GetXAttr operation (. More...
 
class  GetXAttrBulkImpl
 GetXAttr bulk operation (. More...
 
class  DelXAttrImpl
 DelXAttr operation (. More...
 
class  DelXAttrBulkImpl
 DelXAttr bulk operation (. More...
 
class  ListXAttrImpl
 ListXAttr bulk operation (. More...
 
struct  PgReadFlags
 PgRead flags. More...
 
class  FileStateHandler
 Handle the stateful operations. More...
 
struct  QueryCode
 XRootD query request codes. More...
 
struct  OpenFlags
 Open flags, may be or'd when appropriate. More...
 
struct  Access
 Access mode. More...
 
struct  MkDirFlags
 MkDir flags. More...
 
struct  DirListFlags
 DirList flags. More...
 
struct  PrepareFlags
 Prepare flags. More...
 
class  FileSystem
 Send file/filesystem queries to an XRootD cluster. More...
 
class  FileSystemOperation
 
class  LocateImpl
 Locate operation (. More...
 
class  DeepLocateImpl
 DeepLocate operation (. More...
 
class  MvImpl
 Mv operation (. More...
 
class  QueryImpl
 Query operation (. More...
 
class  TruncateFsImpl
 Truncate operation (. More...
 
class  RmImpl
 Rm operation (. More...
 
class  MkDirImpl
 MkDir operation (. More...
 
class  RmDirImpl
 RmDir operation (. More...
 
class  ChModImpl
 ChMod operation (. More...
 
class  PingImpl
 Ping operation (. More...
 
class  StatFsImpl
 Stat operation (. More...
 
class  StatVFSImpl
 StatVS operation (. More...
 
class  ProtocolImpl
 Protocol operation (. More...
 
class  DirListImpl
 DirList operation (. More...
 
class  SendInfoImpl
 SendInfo operation (. More...
 
class  PrepareImpl
 Prepare operation (. More...
 
class  SetXAttrFsImpl
 SetXAttr operation (. More...
 
class  SetXAttrFsBulkImpl
 SetXAttr bulk operation (. More...
 
class  GetXAttrFsImpl
 GetXAttr operation (. More...
 
class  GetXAttrFsBulkImpl
 GetXAttr bulk operation (. More...
 
class  DelXAttrFsImpl
 DelXAttr operation (. More...
 
class  DelXAttrFsBulkImpl
 DelXAttr bulk operation (. More...
 
class  ListXAttrFsImpl
 ListXAttr bulk operation (. More...
 
class  FileSystemUtils
 
class  FileTimer
 Task generating timeout events for FileStateHandlers in recovery mode. More...
 
class  FinalOperation
 
class  ForkHandler
 
class  FSExecutor
 Execute queries given as a commandline. More...
 
struct  FwdStorage
 
struct  Fwd
 
class  InQueue
 A synchronize queue for incoming data. More...
 
class  Job
 Interface for a job to be run by the job manager. More...
 
class  JobManager
 A synchronized queue. More...
 
class  LocalFileHandler
 
class  LocalFileTask
 
class  LogOut
 Interface for logger outputs. More...
 
class  LogOutFile
 Write log messages to a file. More...
 
class  LogOutCerr
 Write log messages to stderr. More...
 
class  Log
 Handle diagnostics. More...
 
class  Message
 The message representation used throughout the system. More...
 
class  SyncResponseHandler
 Synchronize the response. More...
 
class  NullResponseHandler
 
struct  MessageSendParams
 
class  MessageUtils
 
class  MetalinkRedirector
 
class  Monitor
 An abstract class to describe the client-side monitoring plugin interface. More...
 
class  UnpackXAttrStatus
 Helper class for unpacking single XAttrStatus from bulk response. More...
 
class  UnpackXAttr
 Helper class for unpacking single XAttr from bulk response. More...
 
struct  NullRef
 
class  FunctionWrapper
 
class  FunctionWrapper< void >
 
class  TaskWrapper
 
class  TaskWrapper< void, Return >
 
class  ExOpenFuncWrapper
 Lambda wrapper. More...
 
class  PipelineException
 Pipeline exception, wrapps an XRootDStatus. More...
 
class  FutureWrapperBase
 
class  FutureWrapper
 
class  FutureWrapper< void >
 A wrapper handler for a std::promise / std::future, overload for void type. More...
 
class  RawWrapper
 Wrapper class for raw response handler (ResponseHandler). More...
 
struct  RespBase
 
struct  Resp
 
struct  Resp< void >
 
class  Operation
 
class  PipelineHandler
 
class  Pipeline
 
class  ConcreteOperation
 
class  operation_expired
 
class  Timeout
 
struct  None
 none object for initializing empty Optional More...
 
class  Optional
 
class  OutQueue
 A synchronized queue for the outgoing data. More...
 
struct  PolicyExecutor
 
class  ParallelOperation
 
class  FilePlugIn
 An interface for file plug-ins. More...
 
class  FileSystemPlugIn
 An interface for file plug-ins. More...
 
class  PlugInFactory
 Plugin factory. More...
 
class  PlugInManager
 Manage client-side plug-ins and match them agains URLs. More...
 
class  SocketHandler
 Interface. More...
 
class  Poller
 Interface for socket pollers. More...
 
class  PollerBuiltIn
 A poller implementation using the build-in XRootD poller. More...
 
class  PollerFactory
 Helper for creating poller objects. More...
 
class  PostMaster
 A hub for dispatching and receiving messages. More...
 
class  MsgHandler
 Message handler. More...
 
class  ChannelEventHandler
 Channel event handler. More...
 
struct  HandShakeData
 Data structure that carries the handshake information. More...
 
struct  PathID
 
struct  TransportQuery
 
class  TransportHandler
 Perform the handshake and the authentication for each physical stream. More...
 
class  PropertyList
 A key-value pair map storing both keys and values as strings. More...
 
class  RedirectJob
 A job class for redirect handling in the thread-pool. More...
 
class  VirtualRedirector
 An interface for metadata redirectors. More...
 
class  RedirectorRegistry
 Singleton access to URL to virtual redirector mapping. More...
 
class  RequestSync
 A helper running a fixed number of requests at a given time. More...
 
class  ResponseJob
 Call the user callback. More...
 
class  SIDManager
 Handle XRootD stream IDs. More...
 
class  SIDMgrPool
 Pool of SID manager objects. More...
 
class  Socket
 A network socket. More...
 
struct  Status
 Procedure execution status. More...
 
class  Stream
 Stream. More...
 
class  SyncQueue
 A synchronized queue. More...
 
class  Task
 Interface for a task to be run by the TaskManager. More...
 
class  TaskManager
 
class  ThirdPartyCopyJob
 
class  Tls
 TLS layer for socket connection. More...
 
class  TPFallBackCopyJob
 
class  TransportManager
 Manage transport handler objects. More...
 
class  URL
 URL representation. More...
 
class  Utils
 Random utilities. More...
 
class  ScopedDescriptor
 Smart descriptor - closes the descriptor on destruction. More...
 
class  XCpCtx
 
class  XCpSrc
 
struct  RedirectEntry
 
class  XRootDMsgHandler
 Handle/Process/Forward XRootD messages. More...
 
class  LocationInfo
 Path location info. More...
 
class  XRootDStatus
 Request status. More...
 
struct  XAttrStatus
 Extended attribute operation status. More...
 
struct  XAttr
 Extended attributes with status. More...
 
class  ProtocolInfo
 Protocol response. More...
 
class  StatInfo
 Object stat info. More...
 
class  StatInfoVFS
 VFS stat info. More...
 
class  DirectoryList
 Directory list. More...
 
class  OpenInfo
 Information returned by file open operation. More...
 
struct  ChunkInfo
 Describe a data chunk for vector read. More...
 
struct  PageInfo
 
struct  RetryInfo
 
class  VectorReadInfo
 Vector read info. More...
 
struct  HostInfo
 
class  ResponseHandler
 Handle an async response. More...
 
struct  XRootDQuery
 XRootD related protocol queries. More...
 
class  XRootDTransport
 XRootD transport handler. More...
 
class  ZipArchive
 
struct  ZipError
 An exception for carrying the XRootDStatus of InflCache. More...
 
class  ZipCache
 Utility class for inflating a compressed buffer. More...
 
class  ZipListHandler
 
class  ZipOperation
 
class  OpenArchiveImpl
 OpenArchive operation (. More...
 
class  OpenFileImpl
 OpenFile operation (. More...
 
class  ZipReadImpl
 Read operation (. More...
 
class  ZipReadFromImpl
 Read operation (. More...
 
class  ZipWriteImpl
 Write operation (. More...
 
class  AppendFileImpl
 AppendFile operation (. More...
 
class  CloseFileImpl
 CloseFile operation (. More...
 
class  ZipStatImpl
 ZipStat operation (. More...
 
class  ZipListImpl
 ZipList operation (. More...
 
class  CloseArchiveImpl
 CloseArchive operation (. More...
 
class  HttpFilePlugIn
 
class  HttpFileSystemPlugIn
 

Typedefs

typedef FcntlImpl< false > Fcntl
 
typedef VisaImpl< false > Visa
 
typedef LocateImpl< false > Locate
 
typedef DeepLocateImpl< false > DeepLocate
 
typedef MvImpl< false > Mv
 
typedef QueryImpl< false > Query
 
typedef RmImpl< false > Rm
 
typedef MkDirImpl< false > MkDir
 
typedef RmDirImpl< false > RmDir
 
typedef ChModImpl< false > ChMod
 
typedef PingImpl< false > Ping
 
typedef StatVFSImpl< false > StatVFS
 
typedef ProtocolImpl< false > Protocol
 
typedef DirListImpl< false > DirList
 
typedef SendInfoImpl< false > SendInfo
 
typedef PrepareImpl< false > Prepare
 
typedef FinalOperation Final
 
typedef std::function
< Operation< true > *(const
XRootDStatus &)> 
rcvry_func
 Type of the recovery function to be provided by the user. More...
 
typedef std::tuple
< std::string, std::string > 
xattr_t
 Extended attribute key - value pair. More...
 
typedef Buffer BinaryDataInfo
 Binary buffer. More...
 
typedef std::vector< ChunkInfoChunkList
 List of chunks. More...
 
typedef std::vector< HostInfoHostList
 
typedef CloseFileImpl< false > CloseFile
 

Enumerations

enum  ChkPtCode { BEGIN = kXR_ckpBegin, COMMIT = kXR_ckpCommit, ROLLBACK = kXR_ckpRollback }
 Checkpoint operation code. More...
 
enum  { xattr_name = 0, xattr_value = 1 }
 Tuple indexes of name and value fields in xattr_t. More...
 

Functions

template<typename T >
T & To (AnyObject &any)
 
template<typename FUNC , typename TUPL , int... INDICES>
static auto tuple_call_impl (FUNC &func, TUPL &args, sequence< INDICES...>) -> decltype(func(std::move(std::get< INDICES >(args))...))
 
template<typename FUNC , typename... ARGs>
static auto Apply (FUNC &&func, std::tuple< ARGs...> &tup) -> decltype(tuple_call_impl(func, tup, typename seq_gen< sizeof...(ARGs)>::type
 
return tuple_call_impl (func, tup, typename seq_gen< sizeof...(ARGs)>::type{})
 
template<typename METH , typename OBJ , typename... ARGs>
static auto Apply (METH &&method, OBJ &obj, std::tuple< ARGs...> &tup) -> decltype(Apply(std::bind(method,&obj, std::placeholders::_1, std::placeholders::_2), tup))
 
CheckpointImpl< false > Checkpoint (Ctx< File > file, Arg< ChkPtCode > code, uint16_t timeout=0)
 Factory for creating ReadImpl objects. More...
 
ChkptWrtImpl< false > ChkptWrt (Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< const void * > buffer, uint16_t timeout=0)
 Factory for creating ReadImpl objects. More...
 
ChkptWrtVImpl< false > ChkptWrtV (Ctx< File > file, Arg< uint64_t > offset, Arg< std::vector< iovec >> iov, uint16_t timeout=0)
 Factory for creating ChkptWrtVImpl objects. More...
 
static std::string to_lower (std::string str)
 
EcHandlerGetEcHandler (const URL &headnode, const URL &redirurl)
 
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. More...
 
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. More...
 
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. More...
 
template<typename RSP >
ReadTrait< RSP >::RET RdWithRsp (Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout=0)
 
template<>
ReadImpl< false > RdWithRsp< ChunkInfo > (Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout)
 
template<>
PgReadImpl< false > RdWithRsp< PageInfo > (Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout)
 
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. More...
 
PgWriteImpl< false > PgWrite (Ctx< File > file, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout=0)
 Factory for creating PgReadImpl objects. More...
 
CloseImpl< false > Close (Ctx< File > file, uint16_t timeout=0)
 Factory for creating CloseImpl objects. More...
 
StatImpl< false > Stat (Ctx< File > file, Arg< bool > force, uint16_t timeout=0)
 
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. More...
 
SyncImpl< false > Sync (Ctx< File > file, uint16_t timeout=0)
 Factory for creating SyncImpl objects. More...
 
TruncateImpl< false > Truncate (Ctx< File > file, Arg< uint64_t > size, uint16_t timeout)
 
VectorReadImpl< false > VectorRead (Ctx< File > file, Arg< ChunkList > chunks, Arg< void * > buffer, uint16_t timeout=0)
 Factory for creating VectorReadImpl objects. More...
 
VectorReadImpl< false > VectorRead (Ctx< File > file, Arg< ChunkList > chunks, uint16_t timeout=0)
 
VectorWriteImpl< false > VectorWrite (Ctx< File > file, Arg< ChunkList > chunks, uint16_t timeout=0)
 Factory for creating VectorWriteImpl objects. More...
 
WriteVImpl< false > WriteV (Ctx< File > file, Arg< uint64_t > offset, Arg< std::vector< iovec >> iov, uint16_t timeout=0)
 Factory for creating WriteVImpl objects. More...
 
SetXAttrImpl< false > SetXAttr (Ctx< File > file, Arg< std::string > name, Arg< std::string > value)
 
SetXAttrBulkImpl< false > SetXAttr (Ctx< File > file, Arg< std::vector< xattr_t >> attrs)
 
GetXAttrImpl< false > GetXAttr (Ctx< File > file, Arg< std::string > name)
 
GetXAttrBulkImpl< false > GetXAttr (Ctx< File > file, Arg< std::vector< std::string >> attrs)
 
DelXAttrImpl< false > DelXAttr (Ctx< File > file, Arg< std::string > name)
 
DelXAttrBulkImpl< false > DelXAttr (Ctx< File > file, Arg< std::vector< std::string >> attrs)
 
ListXAttrImpl< false > ListXAttr (Ctx< File > file)
 
TruncateFsImpl< false > Truncate (Ctx< FileSystem > fs, Arg< std::string > path, Arg< uint64_t > size)
 
StatFsImpl< false > Stat (Ctx< FileSystem > fs, Arg< std::string > path)
 
SetXAttrFsImpl< false > SetXAttr (Ctx< FileSystem > fs, Arg< std::string > path, Arg< std::string > name, Arg< std::string > value)
 
SetXAttrFsBulkImpl< false > SetXAttr (Ctx< FileSystem > fs, Arg< std::string > path, Arg< std::vector< xattr_t >> attrs)
 
GetXAttrFsImpl< false > GetXAttr (Ctx< FileSystem > fs, Arg< std::string > path, Arg< std::string > name)
 
GetXAttrFsBulkImpl< false > GetXAttr (Ctx< FileSystem > fs, Arg< std::string > path, Arg< std::vector< std::string >> attrs)
 
DelXAttrFsImpl< false > DelXAttr (Ctx< FileSystem > fs, Arg< std::string > path, Arg< std::string > name)
 
DelXAttrFsBulkImpl< false > DelXAttr (Ctx< FileSystem > fs, Arg< std::string > path, Arg< std::vector< std::string >> attrs)
 
ListXAttrFsImpl< false > ListXAttr (Ctx< FileSystem > fs, Arg< std::string > path)
 
template<typename T , typename... Args>
std::shared_ptr< FwdStorage< T > > make_fwd (Args &&...args)
 
template<typename Response >
Response * GetResponse (AnyObject *rsp)
 
template<typename Response >
Response * GetResponse (XRootDStatus *status, AnyObject *rsp)
 
std::future< XRootDStatusAsync (Pipeline pipeline, uint16_t timeout=0)
 
XRootDStatus WaitFor (Pipeline pipeline, uint16_t timeout=0)
 
template<class Container >
ParallelOperation< false > Parallel (Container &&container)
 Factory function for creating parallel operation from a vector. More...
 
void PipesToVec (std::vector< Pipeline > &)
 Helper function for converting parameter pack into a vector. More...
 
template<typename... Others>
void PipesToVec (std::vector< Pipeline > &v, Operation< false > &operation, Others &...others)
 
template<typename... Others>
void PipesToVec (std::vector< Pipeline > &v, Operation< true > &operation, Others &...others)
 
template<typename... Others>
void PipesToVec (std::vector< Pipeline > &v, Pipeline &pipeline, Others &...others)
 
template<typename... Operations>
ParallelOperation< false > Parallel (Operations &&...operations)
 
template<>
bool PropertyList::Get< std::string > (const std::string &name, std::string &item) const
 
template<>
std::string PropertyList::Get< std::string > (const std::string &name) const
 
template<>
void PropertyList::Set< std::vector< std::string > > (const std::string &name, const std::vector< std::string > &item)
 
template<>
bool PropertyList::Get< std::vector< std::string > > (const std::string &name, std::vector< std::string > &item) const
 
OpenArchiveImpl< false > OpenArchive (Ctx< ZipArchive > zip, Arg< std::string > fn, Arg< OpenFlags::Flags > flags, uint16_t timeout=0)
 Factory for creating OpenArchiveImpl objects. More...
 
OpenFileImpl< false > OpenFile (Ctx< ZipArchive > zip, Arg< std::string > fn, Arg< OpenFlags::Flags > flags=OpenFlags::None, Arg< uint64_t > size=0, Arg< uint32_t > crc32=0, uint16_t timeout=0)
 Factory for creating OpenFileImpl objects. More...
 
ZipReadImpl< false > Read (Ctx< ZipArchive > zip, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout=0)
 Factory for creating ArchiveReadImpl objects. More...
 
ZipReadFromImpl< false > ReadFrom (Ctx< ZipArchive > zip, Arg< std::string > fn, Arg< uint64_t > offset, Arg< uint32_t > size, Arg< void * > buffer, uint16_t timeout=0)
 Factory for creating ArchiveReadImpl objects. More...
 
ZipWriteImpl< false > Write (Ctx< ZipArchive > zip, Arg< uint32_t > size, Arg< const void * > buffer, uint16_t timeout=0)
 Factory for creating ArchiveReadImpl objects. More...
 
AppendFileImpl< false > AppendFile (Ctx< ZipArchive > zip, Arg< std::string > fn, Arg< uint32_t > crc32, Arg< uint32_t > size, Arg< const void * > buffer, uint16_t timeout=0)
 Factory for creating ArchiveReadImpl objects. More...
 
ZipStatImpl< false > Stat (Ctx< ZipArchive > zip)
 Factory for creating ZipStatImpl objects. More...
 
ZipListImpl< false > List (Ctx< ZipArchive > zip)
 Factory for creating ZipStatImpl objects. More...
 
CloseArchiveImpl< false > CloseArchive (Ctx< ZipArchive > zip, uint16_t timeout=0)
 Factory for creating CloseFileImpl objects. More...
 
void SetUpLogging (Log *logger)
 

Variables

const uint64_t AppMsg = 0x0000000000000001ULL
 
const uint64_t UtilityMsg = 0x0000000000000002ULL
 
const uint64_t FileMsg = 0x0000000000000004ULL
 
const uint64_t PollerMsg = 0x0000000000000008ULL
 
const uint64_t PostMasterMsg = 0x0000000000000010ULL
 
const uint64_t XRootDTransportMsg = 0x0000000000000020ULL
 
const uint64_t TaskMgrMsg = 0x0000000000000040ULL
 
const uint64_t XRootDMsg = 0x0000000000000080ULL
 
const uint64_t FileSystemMsg = 0x0000000000000100ULL
 
const uint64_t AsyncSockMsg = 0x0000000000000200ULL
 
const uint64_t JobMgrMsg = 0x0000000000000400ULL
 
const uint64_t PlugInMgrMsg = 0x0000000000000800ULL
 
const uint64_t ExDbgMsg = 0x0000000000001000ULL
 
const uint64_t TlsMsg = 0x0000000000002000ULL
 
const uint64_t ZipMsg = 0x0000000000004000ULL
 
const int DefaultSubStreamsPerChannel = 1
 
const int DefaultConnectionWindow = 120
 
const int DefaultConnectionRetry = 5
 
const int DefaultRequestTimeout = 1800
 
const int DefaultStreamTimeout = 60
 
const int DefaultTimeoutResolution = 15
 
const int DefaultStreamErrorWindow = 1800
 
const int DefaultRunForkHandler = 1
 
const int DefaultRedirectLimit = 16
 
const int DefaultWorkerThreads = 3
 
const int DefaultCPChunkSize = 8388608
 
const int DefaultCPParallelChunks = 4
 
const int DefaultDataServerTTL = 300
 
const int DefaultLoadBalancerTTL = 1200
 
const int DefaultCPInitTimeout = 600
 
const int DefaultCPTPCTimeout = 1800
 
const int DefaultCPTimeout = 0
 
const int DefaultTCPKeepAlive = 0
 
const int DefaultTCPKeepAliveTime = 7200
 
const int DefaultTCPKeepAliveInterval = 75
 
const int DefaultTCPKeepAliveProbes = 9
 
const int DefaultMultiProtocol = 0
 
const int DefaultParallelEvtLoop = 1
 
const int DefaultMetalinkProcessing = 1
 
const int DefaultLocalMetalinkFile = 0
 
const int DefaultXRateThreshold = 0
 
const int DefaultXCpBlockSize = 134217728
 
const int DefaultNoDelay = 1
 
const int DefaultAioSignal = 0
 
const int DefaultPreferIPv4 = 0
 
const int DefaultMaxMetalinkWait = 60
 
const int DefaultPreserveLocateTried = 1
 
const int DefaultNotAuthorizedRetryLimit = 3
 
const int DefaultPreserveXAttrs = 0
 
const int DefaultNoTlsOK = 0
 
const int DefaultTlsNoData = 0
 
const int DefaultTlsMetalink = 0
 
const int DefaultZipMtlnCksum = 0
 
const int DefaultIPNoShuffle = 0
 
const int DefaultWantTlsOnNoPgrw = 0
 
const int DefaultRetryWrtAtLBLimit = 3
 
const int DefaultCpRetry = 0
 
const int DefaultCpUsePgWrtRd = 1
 
const char *const DefaultPollerPreference = "built-in"
 
const char *const DefaultNetworkStack = "IPAuto"
 
const char *const DefaultClientMonitor = ""
 
const char *const DefaultClientMonitorParam = ""
 
const char *const DefaultPlugInConfDir = ""
 
const char *const DefaultPlugIn = ""
 
const char *const DefaultReadRecovery = "true"
 
const char *const DefaultWriteRecovery = "true"
 
const char *const DefaultOpenRecovery = "true"
 
const char *const DefaultGlfnRedirector = ""
 
const char *const DefaultTlsDbgLvl = "OFF"
 
const char *const DefaultClConfDir = ""
 
const char *const DefaultClConfFile = ""
 
const char *const DefaultCpTarget = ""
 
const char *const DefaultCpRetryPolicy = "force"
 
static std::unordered_map
< std::string, int > 
theDefaultInts
 
static std::unordered_map
< std::string, std::string > 
theDefaultStrs
 
static struct XrdCl::None none
 
const uint16_t stOK = 0x0000
 Everything went OK. More...
 
const uint16_t stError = 0x0001
 An error occurred that could potentially be retried. More...
 
const uint16_t stFatal = 0x0003
 Fatal error, it's still an error. More...
 
const uint16_t suDone = 0
 
const uint16_t suContinue = 1
 
const uint16_t suRetry = 2
 
const uint16_t suPartial = 3
 
const uint16_t suAlreadyDone = 4
 
const uint16_t suNotStarted = 5
 
const uint16_t errNone = 0
 No error. More...
 
const uint16_t errRetry = 1
 Try again for whatever reason. More...
 
const uint16_t errUnknown = 2
 Unknown error. More...
 
const uint16_t errInvalidOp = 3
 
const uint16_t errFcntl = 4
 failed manipulate file descriptor More...
 
const uint16_t errPoll = 5
 error while polling descriptors More...
 
const uint16_t errConfig = 6
 System misconfigured. More...
 
const uint16_t errInternal = 7
 Internal error. More...
 
const uint16_t errUnknownCommand = 8
 
const uint16_t errInvalidArgs = 9
 
const uint16_t errInProgress = 10
 
const uint16_t errUninitialized = 11
 
const uint16_t errOSError = 12
 
const uint16_t errNotSupported = 13
 
const uint16_t errDataError = 14
 data is corrupted More...
 
const uint16_t errNotImplemented = 15
 Operation is not implemented. More...
 
const uint16_t errNoMoreReplicas = 16
 No more replicas to try. More...
 
const uint16_t errPipelineFailed = 17
 Pipeline failed and operation couldn't be executed. More...
 
const uint16_t errInvalidAddr = 101
 
const uint16_t errSocketError = 102
 
const uint16_t errSocketTimeout = 103
 
const uint16_t errSocketDisconnected = 104
 
const uint16_t errPollerError = 105
 
const uint16_t errSocketOptError = 106
 
const uint16_t errStreamDisconnect = 107
 
const uint16_t errConnectionError = 108
 
const uint16_t errInvalidSession = 109
 
const uint16_t errTlsError = 110
 
const uint16_t errInvalidMessage = 201
 
const uint16_t errHandShakeFailed = 202
 
const uint16_t errLoginFailed = 203
 
const uint16_t errAuthFailed = 204
 
const uint16_t errQueryNotSupported = 205
 
const uint16_t errOperationExpired = 206
 
const uint16_t errOperationInterrupted = 207
 
const uint16_t errThresholdExceeded = 208
 
const uint16_t errNoMoreFreeSIDs = 301
 
const uint16_t errInvalidRedirectURL = 302
 
const uint16_t errInvalidResponse = 303
 
const uint16_t errNotFound = 304
 
const uint16_t errCheckSumError = 305
 
const uint16_t errRedirectLimit = 306
 
const uint16_t errCorruptedHeader = 307
 
const uint16_t errErrorResponse = 400
 
const uint16_t errRedirect = 401
 
const uint16_t errResponseNegative = 500
 Query response was negative. More...
 
static const uint64_t kLogXrdClHttp = std::numeric_limits<std::uint64_t>::max()
 

Detailed Description

When the envar XRD_CLIENTMONITOR is set to the libpath/libname.so that holds the monitoring object, it is automatically loaded. The following "C" external symbols must exist in the monitor plug-in shared library. It is called to obtain an instance of the XrdCl::Monitor object.

Parameters
execfull path name to executable provided by XrdSysUtils::ExecName
parmsValue of XRD_CLIENTMONITOPARAM envar or null if it is not set.
Returns
Pointer to an instance of XrdCl::Monitor or null which causes monitoring to be disabled.

extern "C" { XrdCl::Monitor *XrdClGetMonitor(const char *exec, const char *parms); }

This file is part of XrdClHttp

Typedef Documentation

Binary buffer.

typedef ChModImpl<false> XrdCl::ChMod
typedef std::vector<ChunkInfo> XrdCl::ChunkList

List of chunks.

typedef DirListImpl<false> XrdCl::DirList
typedef FcntlImpl<false> XrdCl::Fcntl
typedef std::vector<HostInfo> XrdCl::HostList
typedef LocateImpl<false> XrdCl::Locate
typedef MkDirImpl<false> XrdCl::MkDir
typedef MvImpl<false> XrdCl::Mv
typedef PingImpl<false> XrdCl::Ping
typedef PrepareImpl<false> XrdCl::Prepare
typedef ProtocolImpl<false> XrdCl::Protocol
typedef QueryImpl<false> XrdCl::Query
typedef std::function<Operation<true>*(const XRootDStatus&)> XrdCl::rcvry_func

Type of the recovery function to be provided by the user.

typedef RmImpl<false> XrdCl::Rm
typedef RmDirImpl<false> XrdCl::RmDir
typedef SendInfoImpl<false> XrdCl::SendInfo
typedef StatVFSImpl<false> XrdCl::StatVFS
typedef VisaImpl<false> XrdCl::Visa
typedef std::tuple<std::string, std::string> XrdCl::xattr_t

Extended attribute key - value pair.

Enumeration Type Documentation

anonymous enum

Tuple indexes of name and value fields in xattr_t.

Enumerator
xattr_name 
xattr_value 

Checkpoint operation code.

Enumerator
BEGIN 
COMMIT 
ROLLBACK 

Function Documentation

AppendFileImpl<false> XrdCl::AppendFile ( Ctx< ZipArchive >  zip,
Arg< std::string >  fn,
Arg< uint32_t >  crc32,
Arg< uint32_t >  size,
Arg< const void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating ArchiveReadImpl objects.

template<typename FUNC , typename... ARGs>
static auto XrdCl::Apply ( FUNC &&  func,
std::tuple< ARGs...> &  tup 
) -> decltype( tuple_call_impl( func, tup, typename seq_gen<sizeof...(ARGs)>::type
inlinestatic

Referenced by Apply().

template<typename METH , typename OBJ , typename... ARGs>
static auto XrdCl::Apply ( METH &&  method,
OBJ &  obj,
std::tuple< ARGs...> &  tup 
) -> decltype( Apply( std::bind( method, &obj, std::placeholders::_1, std::placeholders::_2 ), tup ) )
inlinestatic

References Apply().

std::future<XRootDStatus> XrdCl::Async ( Pipeline  pipeline,
uint16_t  timeout = 0 
)
inline

Helper function, schedules execution of given pipeline

Parameters
pipeline: the pipeline to be executed
timeout: the pipeline timeout
Returns
: future status of the operation

References XrdCl::Pipeline::ftr, and XrdCl::Pipeline::Run().

Referenced by WaitFor().

CheckpointImpl<false> XrdCl::Checkpoint ( Ctx< File >  file,
Arg< ChkPtCode >  code,
uint16_t  timeout = 0 
)
inline

Factory for creating ReadImpl objects.

ChkptWrtImpl<false> XrdCl::ChkptWrt ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< const void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating ReadImpl objects.

ChkptWrtVImpl<false> XrdCl::ChkptWrtV ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< std::vector< iovec >>  iov,
uint16_t  timeout = 0 
)
inline

Factory for creating ChkptWrtVImpl objects.

CloseImpl<false> XrdCl::Close ( Ctx< File >  file,
uint16_t  timeout = 0 
)
inline

Factory for creating CloseImpl objects.

CloseArchiveImpl<false> XrdCl::CloseArchive ( Ctx< ZipArchive >  zip,
uint16_t  timeout = 0 
)
inline

Factory for creating CloseFileImpl objects.

DelXAttrFsImpl<false> XrdCl::DelXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< std::string >  name 
)
inline

Factory for creating DelXAttrFsImpl objects (as there is another DelXAttr in File there would be a clash of typenames).

DelXAttrFsBulkImpl<false> XrdCl::DelXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< std::vector< std::string >>  attrs 
)
inline

Factory for creating DelXAttrFsBulkImpl objects (as there is another DelXAttr in FileSystem there would be a clash of typenames).

DelXAttrImpl<false> XrdCl::DelXAttr ( Ctx< File >  file,
Arg< std::string >  name 
)
inline

Factory for creating DelXAttrImpl objects (as there is another DelXAttr in FileSystem there would be a clash of typenames).

DelXAttrBulkImpl<false> XrdCl::DelXAttr ( Ctx< File >  file,
Arg< std::vector< std::string >>  attrs 
)
inline

Factory for creating DelXAttrBulkImpl objects (as there is another DelXAttr in FileSystem there would be a clash of typenames).

EcHandler* XrdCl::GetEcHandler ( const URL &  headnode,
const URL &  redirurl 
)
template<typename Response >
Response* XrdCl::GetResponse ( AnyObject *  rsp)
inline

Unpack response

Parameters
rsp: AnyObject holding response
Returns
: the response

References XrdCl::AnyObject::Get().

template<typename Response >
Response* XrdCl::GetResponse ( XRootDStatus *  status,
AnyObject *  rsp 
)
inline

Unpack response

Parameters
rsp: AnyObject holding response
status:
Returns
: the response

References XrdCl::Status::IsOK().

GetXAttrFsImpl<false> XrdCl::GetXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< std::string >  name 
)
inline

Factory for creating GetXAttrFsImpl objects (as there is another GetXAttr in File there would be a clash of typenames).

GetXAttrFsBulkImpl<false> XrdCl::GetXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< std::vector< std::string >>  attrs 
)
inline

Factory for creating GetXAttrFsBulkImpl objects (as there is another GetXAttr in FileSystem there would be a clash of typenames).

GetXAttrImpl<false> XrdCl::GetXAttr ( Ctx< File >  file,
Arg< std::string >  name 
)
inline

Factory for creating GetXAttrImpl objects (as there is another GetXAttr in FileSystem there would be a clash of typenames).

GetXAttrBulkImpl<false> XrdCl::GetXAttr ( Ctx< File >  file,
Arg< std::vector< std::string >>  attrs 
)
inline

Factory for creating GetXAttrBulkImpl objects (as there is another GetXAttr in FileSystem there would be a clash of typenames).

ZipListImpl<false> XrdCl::List ( Ctx< ZipArchive >  zip)
inline

Factory for creating ZipStatImpl objects.

ListXAttrFsImpl<false> XrdCl::ListXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path 
)
inline

Factory for creating ListXAttrFsImpl objects (as there is another ListXAttr in FileSystem there would be a clash of typenames).

ListXAttrImpl<false> XrdCl::ListXAttr ( Ctx< File >  file)
inline

Factory for creating ListXAttrImpl objects (as there is another ListXAttr in FileSystem there would be a clash of typenames).

template<typename T , typename... Args>
std::shared_ptr<FwdStorage<T> > XrdCl::make_fwd ( Args &&...  args)
inline
OpenImpl<false> XrdCl::Open ( Ctx< File >  file,
Arg< std::string >  url,
Arg< OpenFlags::Flags >  flags,
Arg< Access::Mode >  mode = Access::None,
uint16_t  timeout = 0 
)
inline

Factory for creating ReadImpl objects.

OpenArchiveImpl<false> XrdCl::OpenArchive ( Ctx< ZipArchive >  zip,
Arg< std::string >  fn,
Arg< OpenFlags::Flags >  flags,
uint16_t  timeout = 0 
)
inline

Factory for creating OpenArchiveImpl objects.

OpenFileImpl<false> XrdCl::OpenFile ( Ctx< ZipArchive >  zip,
Arg< std::string >  fn,
Arg< OpenFlags::Flags >  flags = OpenFlags::None,
Arg< uint64_t >  size = 0,
Arg< uint32_t >  crc32 = 0,
uint16_t  timeout = 0 
)
inline

Factory for creating OpenFileImpl objects.

template<class Container >
ParallelOperation<false> XrdCl::Parallel ( Container &&  container)
inline

Factory function for creating parallel operation from a vector.

Referenced by Parallel().

template<typename... Operations>
ParallelOperation<false> XrdCl::Parallel ( Operations &&...  operations)
inline

Factory function for creating parallel operation from a given number of operations (we use && reference since due to reference collapsing this will fit both r- and l-value references)

References Parallel(), and PipesToVec().

PgReadImpl<false> XrdCl::PgRead ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating PgReadImpl objects.

Referenced by RdWithRsp< PageInfo >().

PgWriteImpl<false> XrdCl::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 
)
inline

Factory for creating PgReadImpl objects.

PgWriteImpl<false> XrdCl::PgWrite ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating PgReadImpl objects.

void XrdCl::PipesToVec ( std::vector< Pipeline > &  )
inline

Helper function for converting parameter pack into a vector.

Referenced by Parallel(), and PipesToVec().

template<typename... Others>
void XrdCl::PipesToVec ( std::vector< Pipeline > &  v,
Operation< false > &  operation,
Others &...  others 
)
inline

References PipesToVec().

template<typename... Others>
void XrdCl::PipesToVec ( std::vector< Pipeline > &  v,
Operation< true > &  operation,
Others &...  others 
)
inline

References PipesToVec().

template<typename... Others>
void XrdCl::PipesToVec ( std::vector< Pipeline > &  v,
Pipeline &  pipeline,
Others &...  others 
)
inline

References PipesToVec().

template<>
bool XrdCl::PropertyList::Get< std::string > ( const std::string &  name,
std::string &  item 
) const
inline
template<>
std::string XrdCl::PropertyList::Get< std::string > ( const std::string &  name) const
inline
template<>
bool XrdCl::PropertyList::Get< std::vector< std::string > > ( const std::string &  name,
std::vector< std::string > &  item 
) const
inline
template<>
void XrdCl::PropertyList::Set< std::vector< std::string > > ( const std::string &  name,
const std::vector< std::string > &  item 
)
inline
template<typename RSP >
ReadTrait<RSP>::RET XrdCl::RdWithRsp ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline
template<>
ReadImpl<false> XrdCl::RdWithRsp< ChunkInfo > ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout 
)
inline

References Read().

template<>
PgReadImpl<false> XrdCl::RdWithRsp< PageInfo > ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout 
)
inline

References PgRead().

ZipReadImpl<false> XrdCl::Read ( Ctx< ZipArchive >  zip,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating ArchiveReadImpl objects.

ReadImpl<false> XrdCl::Read ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating ReadImpl objects.

Referenced by RdWithRsp< ChunkInfo >().

ZipReadFromImpl<false> XrdCl::ReadFrom ( Ctx< ZipArchive >  zip,
Arg< std::string >  fn,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating ArchiveReadImpl objects.

Referenced by XrdCl::ZipArchive::Read().

void XrdCl::SetUpLogging ( Log *  logger)
SetXAttrFsImpl<false> XrdCl::SetXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< std::string >  name,
Arg< std::string >  value 
)
inline

Factory for creating SetXAttrFsImpl objects (as there is another SetXAttr in File there would be a clash of typenames).

SetXAttrFsBulkImpl<false> XrdCl::SetXAttr ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< std::vector< xattr_t >>  attrs 
)
inline

Factory for creating SetXAttrFsBulkImpl objects (as there is another SetXAttr in FileSystem there would be a clash of typenames).

SetXAttrImpl<false> XrdCl::SetXAttr ( Ctx< File >  file,
Arg< std::string >  name,
Arg< std::string >  value 
)
inline

Factory for creating SetXAttrImpl objects (as there is another SetXAttr in FileSystem there would be a clash of typenames).

SetXAttrBulkImpl<false> XrdCl::SetXAttr ( Ctx< File >  file,
Arg< std::vector< xattr_t >>  attrs 
)
inline

Factory for creating SetXAttrBulkImpl objects (as there is another SetXAttr in FileSystem there would be a clash of typenames).

ZipStatImpl<false> XrdCl::Stat ( Ctx< ZipArchive >  zip)
inline

Factory for creating ZipStatImpl objects.

StatImpl<false> XrdCl::Stat ( Ctx< File >  file,
Arg< bool >  force,
uint16_t  timeout = 0 
)
inline

Factory for creating StatImpl objects (as there is another Stat in FileSystem there would be a clash of typenames).

Referenced by XrdCl::ZipArchive::Stat().

StatFsImpl<false> XrdCl::Stat ( Ctx< FileSystem >  fs,
Arg< std::string >  path 
)
inline
SyncImpl<false> XrdCl::Sync ( Ctx< File >  file,
uint16_t  timeout = 0 
)
inline

Factory for creating SyncImpl objects.

template<typename T >
T& XrdCl::To ( AnyObject &  any)
inline

Helper function for extracting an object from AnyObject

Parameters
any: an instance of AnyObject
Returns
: the underlying value of type T

References XrdCl::AnyObject::Get().

static std::string XrdCl::to_lower ( std::string  str)
inlinestatic
TruncateFsImpl<false> XrdCl::Truncate ( Ctx< FileSystem >  fs,
Arg< std::string >  path,
Arg< uint64_t >  size 
)
inline
TruncateImpl<false> XrdCl::Truncate ( Ctx< File >  file,
Arg< uint64_t >  size,
uint16_t  timeout 
)
inline

Factory for creating TruncateImpl objects (as there is another Stat in FileSystem there would be a clash of typenames).

template<typename FUNC , typename TUPL , int... INDICES>
static auto XrdCl::tuple_call_impl ( FUNC &  func,
TUPL &  args,
sequence< INDICES...>   
) -> decltype( func( std::move( std::get<INDICES>( args ) )... ) )
inlinestatic
return XrdCl::tuple_call_impl ( func  ,
tup  ,
typename seq_gen< sizeof...(ARGs)>::type{}   
)
VectorReadImpl<false> XrdCl::VectorRead ( Ctx< File >  file,
Arg< ChunkList >  chunks,
Arg< void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating VectorReadImpl objects.

VectorReadImpl<false> XrdCl::VectorRead ( Ctx< File >  file,
Arg< ChunkList >  chunks,
uint16_t  timeout = 0 
)
inline
VectorWriteImpl<false> XrdCl::VectorWrite ( Ctx< File >  file,
Arg< ChunkList >  chunks,
uint16_t  timeout = 0 
)
inline

Factory for creating VectorWriteImpl objects.

XRootDStatus XrdCl::WaitFor ( Pipeline  pipeline,
uint16_t  timeout = 0 
)
inline

Helper function, schedules execution of given pipeline and waits for the status

Parameters
pipeline: the pipeline to be executed
Returns
: status of the operation

References Async().

ZipWriteImpl<false> XrdCl::Write ( Ctx< ZipArchive >  zip,
Arg< uint32_t >  size,
Arg< const void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating ArchiveReadImpl objects.

WriteImpl<false> XrdCl::Write ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< uint32_t >  size,
Arg< const void * >  buffer,
uint16_t  timeout = 0 
)
inline

Factory for creating WriteImpl objects.

WriteVImpl<false> XrdCl::WriteV ( Ctx< File >  file,
Arg< uint64_t >  offset,
Arg< std::vector< iovec >>  iov,
uint16_t  timeout = 0 
)
inline

Factory for creating WriteVImpl objects.

Variable Documentation

const uint64_t XrdCl::AppMsg = 0x0000000000000001ULL
const uint64_t XrdCl::AsyncSockMsg = 0x0000000000000200ULL
const int XrdCl::DefaultAioSignal = 0
const char* const XrdCl::DefaultClConfDir = ""
const char* const XrdCl::DefaultClConfFile = ""
const char* const XrdCl::DefaultClientMonitor = ""
const char* const XrdCl::DefaultClientMonitorParam = ""
const int XrdCl::DefaultConnectionRetry = 5
const int XrdCl::DefaultConnectionWindow = 120
const int XrdCl::DefaultCPChunkSize = 8388608
const int XrdCl::DefaultCPInitTimeout = 600
const int XrdCl::DefaultCPParallelChunks = 4
const int XrdCl::DefaultCpRetry = 0
const char* const XrdCl::DefaultCpRetryPolicy = "force"
const char* const XrdCl::DefaultCpTarget = ""
const int XrdCl::DefaultCPTimeout = 0
const int XrdCl::DefaultCPTPCTimeout = 1800
const int XrdCl::DefaultCpUsePgWrtRd = 1
const int XrdCl::DefaultDataServerTTL = 300
const char* const XrdCl::DefaultGlfnRedirector = ""
const int XrdCl::DefaultIPNoShuffle = 0
const int XrdCl::DefaultLoadBalancerTTL = 1200
const int XrdCl::DefaultLocalMetalinkFile = 0
const int XrdCl::DefaultMaxMetalinkWait = 60
const int XrdCl::DefaultMetalinkProcessing = 1
const int XrdCl::DefaultMultiProtocol = 0
const char* const XrdCl::DefaultNetworkStack = "IPAuto"
const int XrdCl::DefaultNoDelay = 1
const int XrdCl::DefaultNotAuthorizedRetryLimit = 3
const int XrdCl::DefaultNoTlsOK = 0
const char* const XrdCl::DefaultOpenRecovery = "true"
const int XrdCl::DefaultParallelEvtLoop = 1
const char* const XrdCl::DefaultPlugIn = ""
const char* const XrdCl::DefaultPlugInConfDir = ""
const char* const XrdCl::DefaultPollerPreference = "built-in"
const int XrdCl::DefaultPreferIPv4 = 0
const int XrdCl::DefaultPreserveLocateTried = 1
const int XrdCl::DefaultPreserveXAttrs = 0
const char* const XrdCl::DefaultReadRecovery = "true"
const int XrdCl::DefaultRedirectLimit = 16
const int XrdCl::DefaultRequestTimeout = 1800
const int XrdCl::DefaultRetryWrtAtLBLimit = 3
const int XrdCl::DefaultRunForkHandler = 1
const int XrdCl::DefaultStreamErrorWindow = 1800
const int XrdCl::DefaultStreamTimeout = 60
const int XrdCl::DefaultSubStreamsPerChannel = 1
const int XrdCl::DefaultTCPKeepAlive = 0
const int XrdCl::DefaultTCPKeepAliveInterval = 75
const int XrdCl::DefaultTCPKeepAliveProbes = 9
const int XrdCl::DefaultTCPKeepAliveTime = 7200
const int XrdCl::DefaultTimeoutResolution = 15
const char* const XrdCl::DefaultTlsDbgLvl = "OFF"
const int XrdCl::DefaultTlsMetalink = 0
const int XrdCl::DefaultTlsNoData = 0
const int XrdCl::DefaultWantTlsOnNoPgrw = 0
const int XrdCl::DefaultWorkerThreads = 3
const char* const XrdCl::DefaultWriteRecovery = "true"
const int XrdCl::DefaultXCpBlockSize = 134217728
const int XrdCl::DefaultXRateThreshold = 0
const int XrdCl::DefaultZipMtlnCksum = 0
const uint16_t XrdCl::errAuthFailed = 204
const uint16_t XrdCl::errCheckSumError = 305
const uint16_t XrdCl::errConfig = 6

System misconfigured.

const uint16_t XrdCl::errConnectionError = 108
const uint16_t XrdCl::errCorruptedHeader = 307
const uint16_t XrdCl::errDataError = 14

data is corrupted

Referenced by XrdCl::ZipCache::ToXRootDStatus().

const uint16_t XrdCl::errErrorResponse = 400
const uint16_t XrdCl::errFcntl = 4

failed manipulate file descriptor

const uint16_t XrdCl::errHandShakeFailed = 202
const uint16_t XrdCl::errInProgress = 10
const uint16_t XrdCl::errInternal = 7
const uint16_t XrdCl::errInvalidAddr = 101
const uint16_t XrdCl::errInvalidArgs = 9
const uint16_t XrdCl::errInvalidMessage = 201
const uint16_t XrdCl::errInvalidOp = 3
const uint16_t XrdCl::errInvalidRedirectURL = 302
const uint16_t XrdCl::errInvalidResponse = 303
const uint16_t XrdCl::errInvalidSession = 109
const uint16_t XrdCl::errLoginFailed = 203
const uint16_t XrdCl::errNoMoreFreeSIDs = 301
const uint16_t XrdCl::errNoMoreReplicas = 16

No more replicas to try.

const uint16_t XrdCl::errNone = 0

No error.

const uint16_t XrdCl::errNotFound = 304
const uint16_t XrdCl::errNotImplemented = 15
const uint16_t XrdCl::errNotSupported = 13
const uint16_t XrdCl::errOperationExpired = 206
const uint16_t XrdCl::errOperationInterrupted = 207
const uint16_t XrdCl::errOSError = 12
const uint16_t XrdCl::errPipelineFailed = 17

Pipeline failed and operation couldn't be executed.

Referenced by XrdCl::FutureWrapperBase< void >::~FutureWrapperBase().

const uint16_t XrdCl::errPoll = 5

error while polling descriptors

const uint16_t XrdCl::errPollerError = 105
const uint16_t XrdCl::errQueryNotSupported = 205
const uint16_t XrdCl::errRedirect = 401
const uint16_t XrdCl::errRedirectLimit = 306
const uint16_t XrdCl::errResponseNegative = 500

Query response was negative.

const uint16_t XrdCl::errRetry = 1

Try again for whatever reason.

const uint16_t XrdCl::errSocketDisconnected = 104
const uint16_t XrdCl::errSocketError = 102
const uint16_t XrdCl::errSocketOptError = 106
const uint16_t XrdCl::errSocketTimeout = 103
const uint16_t XrdCl::errStreamDisconnect = 107
const uint16_t XrdCl::errThresholdExceeded = 208
const uint16_t XrdCl::errTlsError = 110
const uint16_t XrdCl::errUninitialized = 11
const uint16_t XrdCl::errUnknown = 2

Unknown error.

Referenced by XrdCl::ZipCache::ToXRootDStatus().

const uint16_t XrdCl::errUnknownCommand = 8
const uint64_t XrdCl::ExDbgMsg = 0x0000000000001000ULL
const uint64_t XrdCl::FileMsg = 0x0000000000000004ULL
const uint64_t XrdCl::FileSystemMsg = 0x0000000000000100ULL
const uint64_t XrdCl::JobMgrMsg = 0x0000000000000400ULL
const uint64_t XrdCl::kLogXrdClHttp = std::numeric_limits<std::uint64_t>::max()
static
struct XrdCl::None XrdCl::none
static
const uint64_t XrdCl::PlugInMgrMsg = 0x0000000000000800ULL
const uint64_t XrdCl::PollerMsg = 0x0000000000000008ULL
const uint64_t XrdCl::PostMasterMsg = 0x0000000000000010ULL
const uint16_t XrdCl::stError = 0x0001

An error occurred that could potentially be retried.

Referenced by XrdCl::FileSystemPlugIn::ChMod(), XrdCl::FilePlugIn::Close(), XrdCl::EcHandler::Close(), XrdCl::ZipArchive::CloseFile(), XrdCl::FileSystemPlugIn::DeepLocate(), XrdCl::FileSystemPlugIn::DelXAttr(), XrdCl::FileSystemPlugIn::DirList(), XrdCl::FilePlugIn::Fcntl(), XrdCl::CheckSumHelper::GetCheckSumImpl(), XrdCl::ZipArchive::GetCRC32(), XrdCl::CheckSumHelper::GetRawCheckSum(), XrdCl::FileSystemPlugIn::GetXAttr(), XrdCl::FutureWrapper< Response >::HandleResponse(), XrdCl::CheckSumHelper::Initialize(), XrdCl::Status::IsError(), XrdCl::FileSystemPlugIn::ListXAttr(), XrdCl::EcHandler::LoadPlacement(), XrdCl::FileSystemPlugIn::Locate(), XrdCl::FileSystemPlugIn::MkDir(), XrdCl::FileSystemPlugIn::Mv(), XrdCl::FilePlugIn::Open(), XrdCl::EcHandler::Open(), XrdCl::FilePlugIn::PgRead(), XrdCl::ZipArchive::PgRead(), XrdCl::FilePlugIn::PgWrite(), XrdCl::EcHandler::PgWrite(), XrdCl::FileSystemPlugIn::Ping(), XrdCl::FileSystemPlugIn::Prepare(), XrdCl::FileSystemPlugIn::Protocol(), XrdCl::FileSystemPlugIn::Query(), XrdCl::AsyncMsgReader::Read(), XrdCl::FilePlugIn::Read(), XrdCl::ZipArchive::Read(), XrdCl::EcHandler::Read(), XrdCl::FileSystemPlugIn::Rm(), XrdCl::FileSystemPlugIn::RmDir(), XrdCl::Operation< HasHndl >::Run(), XrdCl::FileSystemPlugIn::SendInfo(), XrdCl::FileSystemPlugIn::SetXAttr(), XrdCl::FilePlugIn::Stat(), XrdCl::EcHandler::Stat(), XrdCl::ZipArchive::Stat(), XrdCl::FileSystemPlugIn::Stat(), XrdCl::FileSystemPlugIn::StatVFS(), XrdCl::FilePlugIn::Sync(), XrdCl::ZipCache::ToXRootDStatus(), XrdCl::FilePlugIn::Truncate(), XrdCl::FileSystemPlugIn::Truncate(), XrdCl::FilePlugIn::VectorRead(), XrdCl::FilePlugIn::VectorWrite(), XrdCl::FilePlugIn::Visa(), XrdCl::MessageUtils::WaitForResponse(), XrdCl::FilePlugIn::Write(), XrdCl::ZipArchive::Write(), XrdCl::EcHandler::Write(), XrdCl::FilePlugIn::WriteV(), and XrdCl::FutureWrapperBase< void >::~FutureWrapperBase().

const uint16_t XrdCl::stFatal = 0x0003
const uint16_t XrdCl::stOK = 0x0000
const uint16_t XrdCl::suAlreadyDone = 4
const uint16_t XrdCl::suContinue = 1
const uint16_t XrdCl::suDone = 0
const uint16_t XrdCl::suNotStarted = 5
const uint16_t XrdCl::suPartial = 3
const uint16_t XrdCl::suRetry = 2
const uint64_t XrdCl::TaskMgrMsg = 0x0000000000000040ULL
std::unordered_map<std::string, int> XrdCl::theDefaultInts
static
std::unordered_map<std::string, std::string> XrdCl::theDefaultStrs
static
Initial value:
{
{ to_lower( "PollerPreference" ), DefaultPollerPreference },
{ to_lower( "NetworkStack" ), DefaultNetworkStack },
{ to_lower( "ClientMonitor" ), DefaultClientMonitor },
{ to_lower( "ClientMonitorParam" ), DefaultClientMonitorParam },
{ to_lower( "PlugInConfDir" ), DefaultPlugInConfDir },
{ to_lower( "PlugIn" ), DefaultPlugIn },
{ to_lower( "ReadRecovery" ), DefaultReadRecovery },
{ to_lower( "WriteRecovery" ), DefaultWriteRecovery },
{ to_lower( "OpenRecovery" ), DefaultOpenRecovery },
{ to_lower( "GlfnRedirector" ), DefaultGlfnRedirector },
{ to_lower( "TlsDbgLvl" ), DefaultTlsDbgLvl },
{ to_lower( "ClConfDir" ), DefaultClConfDir },
{ to_lower( "DefaultClConfFile" ), DefaultClConfFile },
{ to_lower( "CpTarget" ), DefaultCpTarget }
}
const char *const DefaultWriteRecovery
Definition: XrdClConstants.hh:107
const char *const DefaultReadRecovery
Definition: XrdClConstants.hh:106
const char *const DefaultClientMonitor
Definition: XrdClConstants.hh:102
const char *const DefaultGlfnRedirector
Definition: XrdClConstants.hh:109
const char *const DefaultTlsDbgLvl
Definition: XrdClConstants.hh:110
const char *const DefaultPollerPreference
Definition: XrdClConstants.hh:100
const char *const DefaultClientMonitorParam
Definition: XrdClConstants.hh:103
const char *const DefaultPlugInConfDir
Definition: XrdClConstants.hh:104
const char *const DefaultPlugIn
Definition: XrdClConstants.hh:105
static std::string to_lower(std::string str)
Definition: XrdClConstants.hh:116
const char *const DefaultClConfDir
Definition: XrdClConstants.hh:111
const char *const DefaultClConfFile
Definition: XrdClConstants.hh:112
const char *const DefaultNetworkStack
Definition: XrdClConstants.hh:101
const char *const DefaultCpTarget
Definition: XrdClConstants.hh:113
const char *const DefaultOpenRecovery
Definition: XrdClConstants.hh:108
const uint64_t XrdCl::TlsMsg = 0x0000000000002000ULL
const uint64_t XrdCl::UtilityMsg = 0x0000000000000002ULL
const uint64_t XrdCl::XRootDMsg = 0x0000000000000080ULL
const uint64_t XrdCl::XRootDTransportMsg = 0x0000000000000020ULL
const uint64_t XrdCl::ZipMsg = 0x0000000000004000ULL