25 #ifndef __XRD_CL_FILE_STATE_HANDLER_HH__ 26 #define __XRD_CL_FILE_STATE_HANDLER_HH__ 47 class PgReadRetryHandler;
48 class PgReadSubstitutionHandler;
53 class ResponseHandlerHolder;
78 friend class ::PgReadHandler;
79 friend class ::PgReadRetryHandler;
80 friend class ::PgReadSubstitutionHandler;
129 uint16_t timeout = 0 );
140 uint16_t timeout = 0 );
155 uint16_t timeout = 0 );
178 uint16_t timeout = 0 );
198 uint16_t timeout = 0 );
216 PgReadHandler *handler,
217 uint16_t timeout = 0 );
239 uint16_t timeout = 0 );
256 uint16_t timeout = 0 );
272 uint16_t timeout = 0 );
293 uint16_t timeout = 0 );
305 uint16_t timeout = 0 );
318 uint16_t timeout = 0 );
333 uint16_t timeout = 0 );
346 uint16_t timeout = 0 );
360 const struct iovec *
iov,
363 uint16_t timeout = 0 );
379 uint16_t timeout = 0 );
392 uint16_t timeout = 0 );
408 uint16_t timeout = 0 );
424 uint16_t timeout = 0 );
440 uint16_t timeout = 0 );
454 uint16_t timeout = 0 );
479 void OnStateRedirection(
const std::string &redirectUrl,
502 bool SetProperty(
const std::string &name,
const std::string &value );
509 bool GetProperty(
const std::string &name, std::string &value )
const;
530 void Tick( time_t now );
535 void TimeOutRequests( time_t now );
540 void AfterForkChild();
551 request(r), handler(h), params(p) {}
569 const std::vector<T> &attrs,
571 uint16_t timeout = 0 );
584 bool IsRecoverable(
const XRootDStatus &stataus )
const;
608 bool IsReadOnly()
const;
628 void ReSendQueuedMessages();
633 void ReWriteFileHandle(
Message *msg );
640 pOpenTime.tv_sec = 0; pOpenTime.tv_usec = 0;
673 std::unique_ptr<XrdSys::KernelBuffer> kbuff,
727 #endif // __XRD_CL_FILE_STATE_HANDLER_HH__ uint64_t pWBytes
Definition: XrdClFileStateHandler.hh:705
unsigned char kXR_char
Definition: XPtypes.hh:65
ListXAttrImpl< false > ListXAttr(Ctx< File > file)
Definition: XrdClFileOperations.hh:1138
CloseImpl< false > Close
Definition: XrdClFileOperations.hh:308
Definition: XrdClAnyObject.hh:32
void Lock()
Lock the internal lock.
Definition: XrdClFileStateHandler.hh:514
SetXAttrImpl< false > SetXAttr(Ctx< File > file, Arg< std::string > name, Arg< std::string > value)
Definition: XrdClFileOperations.hh:798
void UnLock()
Unlock the internal lock.
Definition: XrdClFileStateHandler.hh:522
PgRead flags.
Definition: XrdClFileStateHandler.hh:59
Definition: XrdClMessageUtils.hh:131
uint64_t pRBytes
Definition: XrdClFileStateHandler.hh:703
std::vector< ChunkInfo > ChunkList
List of chunks.
Definition: XrdClXRootDResponses.hh:966
uint64_t pSessionId
Definition: XrdClFileStateHandler.hh:691
VectorReadImpl< false > VectorRead
Definition: XrdClFileOperations.hh:559
The message representation used throughout the system.
Definition: XrdClMessage.hh:29
FcntlImpl< false > Fcntl
Definition: XrdClFileOperations.hh:699
uint64_t pVWBytes
Definition: XrdClFileStateHandler.hh:706
Object stat info.
Definition: XrdClXRootDResponses.hh:395
uint64_t pWCount
Definition: XrdClFileStateHandler.hh:710
RequestData()
Definition: XrdClFileStateHandler.hh:548
The file is closed.
Definition: XrdClFileStateHandler.hh:88
Definition: XrdClOptional.hh:43
Message * request
Definition: XrdClFileStateHandler.hh:552
DelXAttrImpl< false > DelXAttr(Ctx< File > file, Arg< std::string > name)
Definition: XrdClFileOperations.hh:1033
SyncImpl< false > Sync
Definition: XrdClFileOperations.hh:458
uint64_t pVSegs
Definition: XrdClFileStateHandler.hh:707
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.
Definition: XrdClFileOperations.hh:414
bool pDoRecoverWrite
Definition: XrdClFileStateHandler.hh:693
ResponseHandler * handler
Definition: XrdClFileStateHandler.hh:553
Procedure execution status.
Definition: XrdClStatus.hh:110
static const int kXR_pgRetry
Definition: XProtocol.hh:482
GetXAttrImpl< false > GetXAttr(Ctx< File > file, Arg< std::string > name)
Definition: XrdClFileOperations.hh:916
TruncateImpl< false > Truncate(Ctx< File > file, Arg< uint64_t > size)
Definition: XrdClFileOperations.hh:508
bool pAllowBundledClose
Definition: XrdClFileStateHandler.hh:697
Opening is in progress.
Definition: XrdClFileStateHandler.hh:92
VectorWriteImpl< false > VectorWrite
Definition: XrdClFileOperations.hh:605
Information returned by file open operation.
Definition: XrdClXRootDResponses.hh:848
void ResetMonitoringVars()
Reset monitoring vars.
Definition: XrdClFileStateHandler.hh:638
URL * pWrtRecoveryRedir
Definition: XrdClFileStateHandler.hh:685
Definition: XrdSysPthread.hh:165
bool pDoRecoverRead
Definition: XrdClFileStateHandler.hh:692
LocalFileHandler * pLFileHandler
Definition: XrdClFileStateHandler.hh:723
std::list< RequestData > RequestList
Definition: XrdClFileStateHandler.hh:556
Definition: XrdOucIOVec.hh:65
std::set< Message * > pInTheFly
Definition: XrdClFileStateHandler.hh:690
timeval pOpenTime
Definition: XrdClFileStateHandler.hh:702
std::vector< HostInfo > HostList
Definition: XrdClXRootDResponses.hh:1031
uint64_t pRCount
Definition: XrdClFileStateHandler.hh:708
MessageSendParams params
Definition: XrdClFileStateHandler.hh:554
uint16_t pOpenFlags
Definition: XrdClFileStateHandler.hh:688
Opening has failed.
Definition: XrdClFileStateHandler.hh:90
Opening has succeeded.
Definition: XrdClFileStateHandler.hh:89
none object for initializing empty Optional
Definition: XrdClOptional.hh:35
Request status.
Definition: XrdClXRootDResponses.hh:214
Definition: XrdClFileStateHandler.hh:67
Definition: XrdClAnyObject.hh:25
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.
Definition: XrdClFileOperations.hh:264
StatImpl< false > Stat(Ctx< File > file, Arg< bool > force, uint16_t timeout=0)
Definition: XrdClFileOperations.hh:358
FileStatus
State of the file.
Definition: XrdClFileStateHandler.hh:86
bool pUseVirtRedirector
Definition: XrdClFileStateHandler.hh:695
ResponseHandlerHolder * pReOpenHandler
Definition: XrdClFileStateHandler.hh:718
Definition: XrdClFileStateHandler.hh:546
Recovering from an error.
Definition: XrdClFileStateHandler.hh:91
RequestData(Message *r, ResponseHandler *h, const MessageSendParams &p)
Definition: XrdClFileStateHandler.hh:549
FileStatus pFileState
Definition: XrdClFileStateHandler.hh:678
XRootDStatus pCloseReason
Definition: XrdClFileStateHandler.hh:712
uint64_t pVWCount
Definition: XrdClFileStateHandler.hh:711
Flags
PgRead flags.
Definition: XrdClFileStateHandler.hh:64
RequestList pToBeRecovered
Definition: XrdClFileStateHandler.hh:689
Handle an async response.
Definition: XrdClXRootDResponses.hh:1036
Handle the stateful operations.
Definition: XrdClFileStateHandler.hh:76
Definition: XrdClLocalFileHandler.hh:32
OpenImpl< false > Open
Definition: XrdClFileOperations.hh:211
URL representation.
Definition: XrdClURL.hh:30
URL * pFileUrl
Definition: XrdClFileStateHandler.hh:681
bool pFollowRedirects
Definition: XrdClFileStateHandler.hh:694
uint64_t pVRCount
Definition: XrdClFileStateHandler.hh:709
XRootDStatus pStatus
Definition: XrdClFileStateHandler.hh:679
WriteVImpl< false > WriteV
Definition: XrdClFileOperations.hh:654
#define XRDOUC_ENUM_OPERATORS(T)
Definition: XrdOucEnum.hh:22
uint8_t * pFileHandle
Definition: XrdClFileStateHandler.hh:686
bool pIsChannelEncrypted
Definition: XrdClFileStateHandler.hh:696
URL * pStateRedirect
Definition: XrdClFileStateHandler.hh:684
VisaImpl< false > Visa
Definition: XrdClFileOperations.hh:738
URL * pDataServer
Definition: XrdClFileStateHandler.hh:682
uint16_t pOpenMode
Definition: XrdClFileStateHandler.hh:687
StatInfo * pStatInfo
Definition: XrdClFileStateHandler.hh:680
uint64_t pVRBytes
Definition: XrdClFileStateHandler.hh:704
XrdSysMutex pMutex
Definition: XrdClFileStateHandler.hh:677
URL * pLoadBalancer
Definition: XrdClFileStateHandler.hh:683
Binary blob representation.
Definition: XrdClBuffer.hh:33