Logo ROOT   6.07/09
Reference Guide
List of all members | Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Protected Member Functions | Protected Attributes | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
XrdClientConn Class Reference

Definition at line 54 of file XrdClientConn.hh.

Classes

struct  SessionIDInfo
 

Public Types

enum  ESrvErrorHandlerRetval {
  kSEHRReturnMsgToCaller = 0, kSEHRBreakLoop = 1, kSEHRContinue = 2, kSEHRReturnNoMsgToCaller = 3,
  kSEHRRedirLimitReached = 4
}
 
enum  EThreeStateReadHandler { kTSRHReturnMex = 0, kTSRHReturnNullMex = 1, kTSRHContinue = 2 }
 

Public Member Functions

 XrdClientConn ()
 
virtual ~XrdClientConn ()
 
bool CacheWillFit (long long bytes)
 
bool CheckHostDomain (XrdOucString hostToCheck)
 
void ClearLastServerError ()
 
short Connect (XrdClientUrlInfo Host2Conn, XrdClientAbsUnsolMsgHandler *unsolhandler)
 
void Disconnect (bool ForcePhysicalDisc)
 
bool DoWriteHardCheckPoint ()
 
bool DoWriteSoftCheckPoint ()
 
virtual bool GetAccessToSrv ()
 
bool GetCacheInfo (int &size, long long &bytessubmitted, long long &byteshit, long long &misscount, float &missrate, long long &readreqcnt, float &bytesusefulness)
 
XrdOucString GetClientHostDomain ()
 
XrdClientUrlInfo GetCurrentUrl ()
 
long GetDataFromCache (const void *buffer, long long begin_offs, long long end_offs, bool PerfCalc, XrdClientIntvList &missingblks, long &outstandingblks)
 
XrdClientUrlInfoGetLBSUrl ()
 
int GetLogConnID () const
 
short GetMaxRedirCnt () const
 
XrdClientUrlInfoGetMetaUrl ()
 
XErrorCode GetOpenError () const
 
int GetOpenSockFD () const
 
int GetParallelStreamCount ()
 
int GetParallelStreamToUse (int reqsperstream)
 
short GetRedirCnt () const
 
XrdClientUrlInfo GetRedirUrl ()
 
long GetServerProtocol ()
 
ERemoteServerType GetServerType () const
 
void GetSessionID (SessionIDInfo &sess)
 
kXR_unt16 GetStreamID () const
 
XReqErrorType GoBackToRedirector ()
 
virtual XReqErrorType GoToAnotherServer (XrdClientUrlInfo &newdest)
 
virtual XReqErrorType GoToMetaManager ()
 
bool IsConnected () const
 
bool IsOpTimeLimitElapsed (time_t timenow)
 
bool IsPhyConnConnected ()
 
void PrintCache ()
 
UnsolRespProcResult ProcessAsynResp (XrdClientMessage *unsolmsg)
 
void RemoveAllDataFromCache (bool keepwriteblocks=true)
 
void RemoveDataFromCache (long long begin_offs, long long end_offs, bool remove_overlapped=false)
 
void RemovePlaceholdersFromCache ()
 
virtual bool SendGenCommand (ClientRequest *req, const void *reqMoreData, void **answMoreDataAllocated, void *answMoreData, bool HasToAlloc, char *CmdName, int substreamid=0)
 
void SetCacheRmPolicy (int RmPolicy)
 
void SetCacheSize (int CacheSize)
 
void SetClientHostDomain (const char *src)
 
void SetConnected (bool conn)
 
void SetMaxRedirCnt (short mx)
 
void SetOpenError (XErrorCode err)
 
void SetOpTimeLimit (int delta_secs)
 
void SetRedirHandler (XrdClientAbs *rh)
 
void SetREQDelayedConnectState (kXR_int32 wsec)
 
void SetREQPauseState (kXR_int32 wsec)
 
void SetRequestedDestHost (char *newh, kXR_int32 port)
 
void SetSID (kXR_char *sid)
 
void SetUrl (XrdClientUrlInfo thisUrl)
 
bool SubmitDataToCache (XrdClientMessage *xmsg, long long begin_offs, long long end_offs)
 
void SubmitPlaceholderToCache (long long begin_offs, long long end_offs)
 
bool SubmitRawDataToCache (const void *buffer, long long begin_offs, long long end_offs)
 
void UnPinCacheBlk (long long begin_offs, long long end_offs)
 
void UnPinCacheBlk ()
 
XReqErrorType WriteToServer_Async (ClientRequest *req, const void *reqMoreData, int substreamid=0)
 

Static Public Member Functions

static void DelSessionIDRepo ()
 
static XrdClientConnectionMgrGetConnectionMgr ()
 
static XrdClientPhyConnectionGetPhyConn (int LogConnID)
 

Public Attributes

int fLastDataBytesRecv
 
int fLastDataBytesSent
 
XErrorCode fOpenError
 
XrdOucString fRedirCGI
 
XrdOucString fRedirOpaque
 
struct ServerResponseBody_Error LastServerError
 
struct ServerResponseHeader LastServerResp
 

Protected Member Functions

void SetLogConnID (int cid)
 
void SetStreamID (kXR_unt16 sid)
 

Protected Attributes

short fGlobalRedirCnt
 
XrdClientUrlInfofLBSUrl
 
XrdClientUrlInfo fREQUrl
 
XrdClientAbsUnsolMsgHandlerfUnsolMsgHandler
 
XrdClientUrlInfo fUrl
 

Private Member Functions

bool CheckErrorStatus (XrdClientMessage *, short &, char *)
 
void CheckPort (int &port)
 
void CheckREQConnectWaitState ()
 
void CheckREQPauseState ()
 
bool CheckResp (struct ServerResponseHeader *resp, const char *method)
 
XrdClientMessageClientServerCmd (ClientRequest *req, const void *reqMoreData, void **answMoreDataAllocated, void *answMoreData, bool HasToAlloc, int substreamid=0)
 
XrdSecProtocol * DoAuthentication (char *plist, int plsiz)
 
ERemoteServerType DoHandShake (short log)
 
bool DoLogin ()
 
bool DomainMatcher (XrdOucString dom, XrdOucString domlist)
 
XrdOucString GetDomainToMatch (XrdOucString hostname)
 
ESrvErrorHandlerRetval HandleServerError (XReqErrorType &, XrdClientMessage *, ClientRequest *)
 
bool MatchStreamid (struct ServerResponseHeader *ServerResponse)
 
bool PanicClose ()
 
XrdOucString ParseDomainFromHostname (XrdOucString hostname)
 
XrdClientMessageReadPartialAnswer (XReqErrorType &, size_t &, ClientRequest *, bool, void **, EThreeStateReadHandler &)
 
bool WaitResp (int secsmax)
 
XReqErrorType WriteToServer (ClientRequest *req, const void *reqMoreData, short LogConnID, int substreamid=0)
 

Private Attributes

bool fConnected
 
bool fGettingAccessToSrv
 
time_t fGlobalRedirLastUpdateTimestamp
 
bool fLBSIsMeta
 
int fLogConnID
 
XrdClientReadCachefMainReadCache
 
short fMaxGlobalRedirCnt
 
XrdClientUrlInfofMetaUrl
 
int fOpenSockFD
 
time_t fOpTimeLimit
 
kXR_unt16 fPrimaryStreamid
 
XrdClientAbs * fRedirHandler
 
XrdOucString fRedirInternalToken
 
XrdSysCondVar * fREQConnectWait
 
time_t fREQConnectWaitTimeLimit
 
XrdSysCondVar * fREQWait
 
XrdSysCondVar * fREQWaitResp
 
ServerResponseBody_Attn_asynresp * fREQWaitRespData
 
time_t fREQWaitTimeLimit
 
long fServerProto
 
ERemoteServerType fServerType
 
XrdClientVector< ClientRequest > fWriteReqsToRetry
 
XrdSysCondVar * fWriteWaitAck
 
SessionIDInfo mySessionID
 

Static Private Attributes

static XrdOucString fgClientHostDomain
 
static XrdClientConnectionMgrfgConnectionMgr
 
static XrdOucHash< SessionIDInfofSessionIDRepo
 
static XrdSysMutex fSessionIDRMutex
 

#include </mnt/vdb/lsf/workspace/root-makedoc-v608/rootspi/rdoc/src/v6-08-00-patches/proof/xrdinc/XrdClient/XrdClientConn.hh>

Member Enumeration Documentation

Enumerator
kSEHRReturnMsgToCaller 
kSEHRBreakLoop 
kSEHRContinue 
kSEHRReturnNoMsgToCaller 
kSEHRRedirLimitReached 

Definition at line 58 of file XrdClientConn.hh.

Enumerator
kTSRHReturnMex 
kTSRHReturnNullMex 
kTSRHContinue 

Definition at line 65 of file XrdClientConn.hh.

Constructor & Destructor Documentation

XrdClientConn::XrdClientConn ( )
virtual XrdClientConn::~XrdClientConn ( )
virtual

Member Function Documentation

bool XrdClientConn::CacheWillFit ( long long  bytes)
inline

Definition at line 86 of file XrdClientConn.hh.

bool XrdClientConn::CheckErrorStatus ( XrdClientMessage ,
short &  ,
char *   
)
private
bool XrdClientConn::CheckHostDomain ( XrdOucString  hostToCheck)
void XrdClientConn::CheckPort ( int &  port)
private
void XrdClientConn::CheckREQConnectWaitState ( )
private
void XrdClientConn::CheckREQPauseState ( )
private
bool XrdClientConn::CheckResp ( struct ServerResponseHeader *  resp,
const char *  method 
)
private
void XrdClientConn::ClearLastServerError ( )
inline

Definition at line 233 of file XrdClientConn.hh.

XrdClientMessage* XrdClientConn::ClientServerCmd ( ClientRequest *  req,
const void reqMoreData,
void **  answMoreDataAllocated,
void answMoreData,
bool  HasToAlloc,
int  substreamid = 0 
)
private
short XrdClientConn::Connect ( XrdClientUrlInfo  Host2Conn,
XrdClientAbsUnsolMsgHandler unsolhandler 
)
static void XrdClientConn::DelSessionIDRepo ( )
inlinestatic

Definition at line 314 of file XrdClientConn.hh.

void XrdClientConn::Disconnect ( bool  ForcePhysicalDisc)
XrdSecProtocol* XrdClientConn::DoAuthentication ( char *  plist,
int  plsiz 
)
private
ERemoteServerType XrdClientConn::DoHandShake ( short  log)
private
bool XrdClientConn::DoLogin ( )
private
bool XrdClientConn::DomainMatcher ( XrdOucString  dom,
XrdOucString  domlist 
)
private
bool XrdClientConn::DoWriteHardCheckPoint ( )
bool XrdClientConn::DoWriteSoftCheckPoint ( )
virtual bool XrdClientConn::GetAccessToSrv ( )
virtual
bool XrdClientConn::GetCacheInfo ( int &  size,
long long &  bytessubmitted,
long long &  byteshit,
long long &  misscount,
float &  missrate,
long long &  readreqcnt,
float &  bytesusefulness 
)
inline

Definition at line 151 of file XrdClientConn.hh.

XrdOucString XrdClientConn::GetClientHostDomain ( )
inline

Definition at line 99 of file XrdClientConn.hh.

static XrdClientConnectionMgr* XrdClientConn::GetConnectionMgr ( )
inlinestatic

Definition at line 311 of file XrdClientConn.hh.

XrdClientUrlInfo XrdClientConn::GetCurrentUrl ( )
inline

Definition at line 218 of file XrdClientConn.hh.

long XrdClientConn::GetDataFromCache ( const void buffer,
long long  begin_offs,
long long  end_offs,
bool  PerfCalc,
XrdClientIntvList missingblks,
long &  outstandingblks 
)
XrdOucString XrdClientConn::GetDomainToMatch ( XrdOucString  hostname)
private
XrdClientUrlInfo* XrdClientConn::GetLBSUrl ( )
inline

Definition at line 216 of file XrdClientConn.hh.

int XrdClientConn::GetLogConnID ( ) const
inline

Definition at line 210 of file XrdClientConn.hh.

short XrdClientConn::GetMaxRedirCnt ( ) const
inline

Definition at line 323 of file XrdClientConn.hh.

XrdClientUrlInfo* XrdClientConn::GetMetaUrl ( )
inline

Definition at line 217 of file XrdClientConn.hh.

XErrorCode XrdClientConn::GetOpenError ( ) const
inline

Definition at line 221 of file XrdClientConn.hh.

int XrdClientConn::GetOpenSockFD ( ) const
inline

Definition at line 246 of file XrdClientConn.hh.

int XrdClientConn::GetParallelStreamCount ( )
int XrdClientConn::GetParallelStreamToUse ( int  reqsperstream)
static XrdClientPhyConnection* XrdClientConn::GetPhyConn ( int  LogConnID)
static
short XrdClientConn::GetRedirCnt ( ) const
inline

Definition at line 325 of file XrdClientConn.hh.

XrdClientUrlInfo XrdClientConn::GetRedirUrl ( )
inline

Definition at line 219 of file XrdClientConn.hh.

long XrdClientConn::GetServerProtocol ( )
inline

Definition at line 321 of file XrdClientConn.hh.

ERemoteServerType XrdClientConn::GetServerType ( ) const
inline

Definition at line 212 of file XrdClientConn.hh.

void XrdClientConn::GetSessionID ( SessionIDInfo sess)
inline

Definition at line 319 of file XrdClientConn.hh.

kXR_unt16 XrdClientConn::GetStreamID ( ) const
inline

Definition at line 214 of file XrdClientConn.hh.

XReqErrorType XrdClientConn::GoBackToRedirector ( )
virtual XReqErrorType XrdClientConn::GoToAnotherServer ( XrdClientUrlInfo newdest)
virtual
virtual XReqErrorType XrdClientConn::GoToMetaManager ( )
virtual
ESrvErrorHandlerRetval XrdClientConn::HandleServerError ( XReqErrorType &  ,
XrdClientMessage ,
ClientRequest *   
)
private
bool XrdClientConn::IsConnected ( ) const
inline

Definition at line 224 of file XrdClientConn.hh.

bool XrdClientConn::IsOpTimeLimitElapsed ( time_t  timenow)
bool XrdClientConn::IsPhyConnConnected ( )
bool XrdClientConn::MatchStreamid ( struct ServerResponseHeader *  ServerResponse)
private
bool XrdClientConn::PanicClose ( )
private
XrdOucString XrdClientConn::ParseDomainFromHostname ( XrdOucString  hostname)
private
void XrdClientConn::PrintCache ( )
inline

Definition at line 145 of file XrdClientConn.hh.

UnsolRespProcResult XrdClientConn::ProcessAsynResp ( XrdClientMessage unsolmsg)
XrdClientMessage* XrdClientConn::ReadPartialAnswer ( XReqErrorType &  ,
size_t &  ,
ClientRequest *  ,
bool  ,
void **  ,
EThreeStateReadHandler  
)
private
void XrdClientConn::RemoveAllDataFromCache ( bool  keepwriteblocks = true)
inline

Definition at line 129 of file XrdClientConn.hh.

void XrdClientConn::RemoveDataFromCache ( long long  begin_offs,
long long  end_offs,
bool  remove_overlapped = false 
)
inline

Definition at line 134 of file XrdClientConn.hh.

void XrdClientConn::RemovePlaceholdersFromCache ( )
inline

Definition at line 140 of file XrdClientConn.hh.

virtual bool XrdClientConn::SendGenCommand ( ClientRequest *  req,
const void reqMoreData,
void **  answMoreDataAllocated,
void answMoreData,
bool  HasToAlloc,
char *  CmdName,
int  substreamid = 0 
)
virtual
void XrdClientConn::SetCacheRmPolicy ( int  RmPolicy)
inline

Definition at line 195 of file XrdClientConn.hh.

void XrdClientConn::SetCacheSize ( int  CacheSize)
inline

Definition at line 187 of file XrdClientConn.hh.

void XrdClientConn::SetClientHostDomain ( const char *  src)
inline

Definition at line 248 of file XrdClientConn.hh.

void XrdClientConn::SetConnected ( bool  conn)
inline

Definition at line 249 of file XrdClientConn.hh.

void XrdClientConn::SetLogConnID ( int  cid)
inlineprotected

Definition at line 339 of file XrdClientConn.hh.

void XrdClientConn::SetMaxRedirCnt ( short  mx)
inline

Definition at line 324 of file XrdClientConn.hh.

void XrdClientConn::SetOpenError ( XErrorCode  err)
inline

Definition at line 251 of file XrdClientConn.hh.

void XrdClientConn::SetOpTimeLimit ( int  delta_secs)
void XrdClientConn::SetRedirHandler ( XrdClientAbs *  rh)
inline

Definition at line 257 of file XrdClientConn.hh.

void XrdClientConn::SetREQDelayedConnectState ( kXR_int32  wsec)
inline

Definition at line 286 of file XrdClientConn.hh.

void XrdClientConn::SetREQPauseState ( kXR_int32  wsec)
inline

Definition at line 268 of file XrdClientConn.hh.

void XrdClientConn::SetRequestedDestHost ( char *  newh,
kXR_int32  port 
)
inline

Definition at line 259 of file XrdClientConn.hh.

void XrdClientConn::SetSID ( kXR_char *  sid)
void XrdClientConn::SetStreamID ( kXR_unt16  sid)
inlineprotected

Definition at line 340 of file XrdClientConn.hh.

void XrdClientConn::SetUrl ( XrdClientUrlInfo  thisUrl)
inline

Definition at line 302 of file XrdClientConn.hh.

bool XrdClientConn::SubmitDataToCache ( XrdClientMessage xmsg,
long long  begin_offs,
long long  end_offs 
)
void XrdClientConn::SubmitPlaceholderToCache ( long long  begin_offs,
long long  end_offs 
)
inline

Definition at line 122 of file XrdClientConn.hh.

bool XrdClientConn::SubmitRawDataToCache ( const void buffer,
long long  begin_offs,
long long  end_offs 
)
void XrdClientConn::UnPinCacheBlk ( long long  begin_offs,
long long  end_offs 
)
inline

Definition at line 200 of file XrdClientConn.hh.

void XrdClientConn::UnPinCacheBlk ( )
bool XrdClientConn::WaitResp ( int  secsmax)
private
XReqErrorType XrdClientConn::WriteToServer ( ClientRequest *  req,
const void reqMoreData,
short  LogConnID,
int  substreamid = 0 
)
private
XReqErrorType XrdClientConn::WriteToServer_Async ( ClientRequest *  req,
const void reqMoreData,
int  substreamid = 0 
)

Member Data Documentation

bool XrdClientConn::fConnected
private

Definition at line 356 of file XrdClientConn.hh.

XrdOucString XrdClientConn::fgClientHostDomain
staticprivate

Definition at line 355 of file XrdClientConn.hh.

XrdClientConnectionMgr* XrdClientConn::fgConnectionMgr
staticprivate

Definition at line 399 of file XrdClientConn.hh.

bool XrdClientConn::fGettingAccessToSrv
private

Definition at line 357 of file XrdClientConn.hh.

short XrdClientConn::fGlobalRedirCnt
protected

Definition at line 351 of file XrdClientConn.hh.

time_t XrdClientConn::fGlobalRedirLastUpdateTimestamp
private

Definition at line 358 of file XrdClientConn.hh.

int XrdClientConn::fLastDataBytesRecv

Definition at line 76 of file XrdClientConn.hh.

int XrdClientConn::fLastDataBytesSent

Definition at line 77 of file XrdClientConn.hh.

bool XrdClientConn::fLBSIsMeta
private

Definition at line 448 of file XrdClientConn.hh.

XrdClientUrlInfo* XrdClientConn::fLBSUrl
protected

Definition at line 348 of file XrdClientConn.hh.

int XrdClientConn::fLogConnID
private

Definition at line 360 of file XrdClientConn.hh.

XrdClientReadCache* XrdClientConn::fMainReadCache
private

Definition at line 366 of file XrdClientConn.hh.

short XrdClientConn::fMaxGlobalRedirCnt
private

Definition at line 365 of file XrdClientConn.hh.

XrdClientUrlInfo* XrdClientConn::fMetaUrl
private

Definition at line 447 of file XrdClientConn.hh.

XErrorCode XrdClientConn::fOpenError

Definition at line 78 of file XrdClientConn.hh.

int XrdClientConn::fOpenSockFD
private

Definition at line 398 of file XrdClientConn.hh.

time_t XrdClientConn::fOpTimeLimit
private

Definition at line 369 of file XrdClientConn.hh.

kXR_unt16 XrdClientConn::fPrimaryStreamid
private

Definition at line 361 of file XrdClientConn.hh.

XrdOucString XrdClientConn::fRedirCGI

Definition at line 451 of file XrdClientConn.hh.

XrdClientAbs* XrdClientConn::fRedirHandler
private

Definition at line 371 of file XrdClientConn.hh.

XrdOucString XrdClientConn::fRedirInternalToken
private

Definition at line 375 of file XrdClientConn.hh.

XrdOucString XrdClientConn::fRedirOpaque

Definition at line 80 of file XrdClientConn.hh.

XrdSysCondVar* XrdClientConn::fREQConnectWait
private

Definition at line 385 of file XrdClientConn.hh.

time_t XrdClientConn::fREQConnectWaitTimeLimit
private

Definition at line 384 of file XrdClientConn.hh.

XrdClientUrlInfo XrdClientConn::fREQUrl
protected

Definition at line 349 of file XrdClientConn.hh.

XrdSysCondVar* XrdClientConn::fREQWait
private

Definition at line 383 of file XrdClientConn.hh.

XrdSysCondVar* XrdClientConn::fREQWaitResp
private

Definition at line 378 of file XrdClientConn.hh.

ServerResponseBody_Attn_asynresp* XrdClientConn::fREQWaitRespData
private

Definition at line 380 of file XrdClientConn.hh.

time_t XrdClientConn::fREQWaitTimeLimit
private

Definition at line 382 of file XrdClientConn.hh.

long XrdClientConn::fServerProto
private

Definition at line 387 of file XrdClientConn.hh.

ERemoteServerType XrdClientConn::fServerType
private

Definition at line 388 of file XrdClientConn.hh.

XrdOucHash<SessionIDInfo> XrdClientConn::fSessionIDRepo
staticprivate

Definition at line 394 of file XrdClientConn.hh.

XrdSysMutex XrdClientConn::fSessionIDRMutex
staticprivate

Definition at line 392 of file XrdClientConn.hh.

XrdClientAbsUnsolMsgHandler* XrdClientConn::fUnsolMsgHandler
protected

Definition at line 345 of file XrdClientConn.hh.

XrdClientUrlInfo XrdClientConn::fUrl
protected

Definition at line 347 of file XrdClientConn.hh.

XrdClientVector<ClientRequest> XrdClientConn::fWriteReqsToRetry
private

Definition at line 402 of file XrdClientConn.hh.

XrdSysCondVar* XrdClientConn::fWriteWaitAck
private

Definition at line 401 of file XrdClientConn.hh.

struct ServerResponseBody_Error XrdClientConn::LastServerError

Definition at line 230 of file XrdClientConn.hh.

struct ServerResponseHeader XrdClientConn::LastServerResp

Definition at line 227 of file XrdClientConn.hh.

SessionIDInfo XrdClientConn::mySessionID
private

Definition at line 389 of file XrdClientConn.hh.


The documentation for this class was generated from the following file: