xrootd
Classes | Typedefs | Variables
XrdCl Namespace Reference

Classes

class  AnyObject
 
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  CheckSumManager
 Manage the checksum calc objects. More...
 
class  ClassicCopyJob
 
class  CopyProgressHandler
 Interface for copy progress notification. More...
 
struct  JobDescriptor
 Job description. More...
 
class  CopyJob
 Copy job. More...
 
class  CopyProcess
 Copy the data from one point to another. More...
 
class  DefaultEnv
 
class  Env
 
class  File
 A file. More...
 
class  FileStateHandler
 Handle the stateful operations. More...
 
class  AssignLBHandler
 Wrapper class used to assign a load balancer. 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  FileTimer
 Task generating timeout events for FileStateHandlers in recovery mode. More...
 
class  ForkHandler
 
class  FSExecutor
 Execute queries given as a commandline. More...
 
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  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...
 
struct  MessageSendParams
 
class  MessageUtils
 
class  Monitor
 An abstract class to describe the client-side monitoring plugin interface. More...
 
class  OutQueue
 A synchronized queue for the outgoing data. 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  PollerLibEvent
 A poller implementation using libEvent underneath. More...
 
class  PostMaster
 A hub for dispatching and receiving messages. More...
 
class  MessageFilter
 Message filter. More...
 
class  IncomingMsgHandler
 Message handler. More...
 
class  OutgoingMsgHandler
 Message status 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  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  Socket
 A network socket. More...
 
struct  Status
 Procedure execution status. More...
 
struct  OutMessageHelper
 
struct  InMessageHelper
 
struct  SubStreamData
 
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  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  XRootDMsgHandler
 Handle/Process/Forward XRootD messages. More...
 
class  LocationInfo
 Path location info. More...
 
class  XRootDStatus
 Request 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...
 
class  VectorReadInfo
 Vector read info. More...
 
struct  HostInfo
 
struct  RedirectInfo
 Describe the redirection information. More...
 
class  ResponseHandler
 Handle an async response. More...
 
struct  XRootDStreamInfo
 Information holder for XRootDStreams. More...
 
struct  XRootDChannelInfo
 Information holder for xrootd channels. More...
 
struct  XRootDQuery
 XRootD related protocol queries. More...
 
class  XRootDTransport
 XRootD transport handler. More...
 

Typedefs

typedef Buffer BinaryDataInfo
 Binary buffer. More...
 
typedef std::vector< ChunkInfoChunkList
 List of chunks. More...
 
typedef std::vector< HostInfoHostList
 

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 int DefaultSubStreamsPerChannel = 1
 
const int DefaultConnectionWindow = 120
 
const int DefaultConnectionRetry = 5
 
const int DefaultRequestTimeout = 300
 
const int DefaultTimeoutResolution = 15
 
const int DefaultStreamErrorWindow = 1800
 
const int DefaultRunForkHandler = 0
 
const int DefaultRedirectLimit = 16
 
const int DefaultWorkerThreads = 3
 
const int DefaultCPChunkSize = 16777216
 
const int DefaultCPParallelChunks = 4
 
const char *const DefaultPollerPreference = "libevent,built-in"
 
const char *const DefaultClientMonitor = ""
 
const char *const DefaultClientMonitorParam = ""
 
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 suXRDRedirect = 101
 
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 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 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 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 errErrorResponse = 400
 

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); }

Typedef Documentation

Binary buffer.

typedef std::vector<ChunkInfo> XrdCl::ChunkList

List of chunks.

typedef std::vector<HostInfo> XrdCl::HostList

Variable Documentation

const uint64_t XrdCl::AppMsg = 0x0000000000000001ULL
const uint64_t XrdCl::AsyncSockMsg = 0x0000000000000200ULL
const char* const XrdCl::DefaultClientMonitor = ""
const char* const XrdCl::DefaultClientMonitorParam = ""
const int XrdCl::DefaultConnectionRetry = 5
const int XrdCl::DefaultConnectionWindow = 120
const int XrdCl::DefaultCPChunkSize = 16777216
const int XrdCl::DefaultCPParallelChunks = 4
const char* const XrdCl::DefaultPollerPreference = "libevent,built-in"
const int XrdCl::DefaultRedirectLimit = 16
const int XrdCl::DefaultRequestTimeout = 300
const int XrdCl::DefaultRunForkHandler = 0
const int XrdCl::DefaultStreamErrorWindow = 1800
const int XrdCl::DefaultSubStreamsPerChannel = 1
const int XrdCl::DefaultTimeoutResolution = 15
const int XrdCl::DefaultWorkerThreads = 3
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::errErrorResponse = 400
const uint16_t XrdCl::errFcntl = 4

failed manipulate file descriptor

Referenced by XrdCl::Socket::Initialize().

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::errNone = 0

No error.

const uint16_t XrdCl::errNotFound = 304
const uint16_t XrdCl::errNotSupported = 13
const uint16_t XrdCl::errOperationExpired = 206
const uint16_t XrdCl::errOSError = 12
const uint16_t XrdCl::errPoll = 5

error while polling descriptors

Referenced by XrdCl::Socket::Poll().

const uint16_t XrdCl::errPollerError = 105
const uint16_t XrdCl::errQueryNotSupported = 205
const uint16_t XrdCl::errRedirectLimit = 306
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::errUninitialized = 11
const uint16_t XrdCl::errUnknown = 2

Unknown error.

const uint16_t XrdCl::errUnknownCommand = 8
const uint64_t XrdCl::FileMsg = 0x0000000000000004ULL
const uint64_t XrdCl::FileSystemMsg = 0x0000000000000100ULL
const uint64_t XrdCl::JobMgrMsg = 0x0000000000000400ULL
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::SIDManager::AllocateSID(), BuildPath(), XrdCl::ThirdPartyCopyJob::CanDo(), XrdCl::Utils::CheckTPC(), XrdCl::FileStateHandler::Close(), XrdCl::Socket::Connect(), XrdCl::Socket::ConnectToAddress(), ConvertMode(), XrdCl::FileSystem::DirList(), DoCD(), DoChMod(), DoLocate(), DoLS(), DoMkDir(), DoMv(), DoQuery(), DoRm(), DoRmDir(), DoStat(), DoStatVFS(), DoTruncate(), XrdCl::FSExecutor::Execute(), XrdCl::XRootDTransport::GetBody(), XrdCl::Socket::GetFlags(), XrdCl::XRootDTransport::GetHeader(), XrdCl::Utils::GetHostAddresses(), XrdCl::Utils::GetLocalCheckSum(), XrdCl::Utils::GetRemoteCheckSum(), XrdCl::Socket::GetSockOpt(), XrdCl::Socket::Initialize(), XrdCl::Stream::Initialize(), XrdCl::Status::IsError(), XrdCl::AsyncSocketHandler::OnConnectionReturn(), XrdCl::AsyncSocketHandler::OnTimeoutWhileHandshaking(), XrdCl::FileStateHandler::Open(), XrdCl::XRootDMsgHandler::ParseResponse(), XrdCl::Socket::Poll(), XrdCl::CopyProcess::Prepare(), XrdCl::XRootDMsgHandler::Process(), XrdCl::XRootDTransport::Query(), XrdCl::PostMaster::QueryTransport(), XrdCl::FileStateHandler::Read(), XrdCl::XRootDMsgHandler::ReadAsync(), XrdCl::Socket::ReadRaw(), XrdCl::PostMaster::Receive(), XrdCl::PostMaster::RegisterEventHandler(), XrdCl::PostMaster::RemoveEventHandler(), XrdCl::InQueue::ReportTimeout(), XrdCl::ClassicCopyJob::Run(), XrdCl::ThirdPartyCopyJob::Run(), XrdCl::Stream::Send(), XrdCl::PostMaster::Send(), XrdCl::MessageUtils::SendMessage(), XrdCl::FileStateHandler::SendOrQueue(), XrdCl::Socket::SetFlags(), XrdCl::Socket::SetSockOpt(), XrdCl::FileStateHandler::Stat(), XrdCl::FileStateHandler::Sync(), XrdCl::Stream::Tick(), XrdCl::FileStateHandler::TimeOutRequests(), XrdCl::FileStateHandler::Truncate(), XrdCl::XRootDTransport::UnMarshallBody(), XrdCl::FileStateHandler::VectorRead(), XrdCl::MessageUtils::WaitForResponse(), XrdCl::FileStateHandler::Write(), XrdCl::AsyncSocketHandler::WriteCurrentMessage(), XrdCl::XRootDMsgHandler::WriteMessageBody(), and XrdCl::Socket::WriteRaw().

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::suPartial = 3

Referenced by XrdCl::FileSystem::DirList(), and DoLS().

const uint16_t XrdCl::suRetry = 2
const uint16_t XrdCl::suXRDRedirect = 101
const uint64_t XrdCl::TaskMgrMsg = 0x0000000000000040ULL
const uint64_t XrdCl::UtilityMsg = 0x0000000000000002ULL
const uint64_t XrdCl::XRootDMsg = 0x0000000000000080ULL
const uint64_t XrdCl::XRootDTransportMsg = 0x0000000000000020ULL