|
xrootd
|
Handle XRootD stream IDs. More...
#include <XrdClSIDManager.hh>

Public Member Functions | |
| SIDManager () | |
| Constructor. More... | |
| Status | AllocateSID (uint8_t sid[2]) |
| void | ReleaseSID (uint8_t sid[2]) |
| Release the SID that is no longer needed. More... | |
| void | TimeOutSID (uint8_t sid[2]) |
| Register a SID of a request that timed out. More... | |
| bool | IsTimedOut (uint8_t sid[2]) |
| Check if a SID is timed out. More... | |
| void | ReleaseTimedOut (uint8_t sid[2]) |
| Release a timed out SID. More... | |
| void | ReleaseAllTimedOut () |
| Release all timed out SIDs. More... | |
| uint32_t | NumberOfTimedOutSIDs () const |
| Number of timeout sids. More... | |
Private Attributes | |
| std::list< uint16_t > | pFreeSIDs |
| std::set< uint16_t > | pTimeOutSIDs |
| uint16_t | pSIDCeiling |
| XrdSysMutex | pMutex |
Handle XRootD stream IDs.
|
inline |
Constructor.
| Status XrdCl::SIDManager::AllocateSID | ( | uint8_t | sid[2] | ) |
Allocate a SID
| sid | a two byte array where the allocated SID should be stored |
References XrdCl::errNoMoreFreeSIDs, pFreeSIDs, pMutex, pSIDCeiling, and XrdCl::stError.
Referenced by XrdCl::XRootDMsgHandler::RewriteRequestRedirect(), and XrdCl::MessageUtils::SendMessage().
| bool XrdCl::SIDManager::IsTimedOut | ( | uint8_t | sid[2] | ) |
Check if a SID is timed out.
References pMutex, and pTimeOutSIDs.
Referenced by XrdCl::XRootDTransport::StreamAction().
|
inline |
Number of timeout sids.
References pMutex, and pTimeOutSIDs.
| void XrdCl::SIDManager::ReleaseAllTimedOut | ( | ) |
Release all timed out SIDs.
References pFreeSIDs, pMutex, and pTimeOutSIDs.
Referenced by XrdCl::XRootDTransport::Disconnect().
| void XrdCl::SIDManager::ReleaseSID | ( | uint8_t | sid[2] | ) |
Release the SID that is no longer needed.
References pFreeSIDs, and pMutex.
Referenced by XrdCl::XRootDMsgHandler::HandleResponse(), and XrdCl::XRootDMsgHandler::RewriteRequestRedirect().
| void XrdCl::SIDManager::ReleaseTimedOut | ( | uint8_t | sid[2] | ) |
Release a timed out SID.
References pFreeSIDs, pMutex, and pTimeOutSIDs.
Referenced by XrdCl::XRootDTransport::StreamAction().
| void XrdCl::SIDManager::TimeOutSID | ( | uint8_t | sid[2] | ) |
Register a SID of a request that timed out.
References pMutex, and pTimeOutSIDs.
Referenced by XrdCl::XRootDMsgHandler::HandleResponse().
|
private |
Referenced by AllocateSID(), ReleaseAllTimedOut(), ReleaseSID(), and ReleaseTimedOut().
|
mutableprivate |
Referenced by AllocateSID(), IsTimedOut(), NumberOfTimedOutSIDs(), ReleaseAllTimedOut(), ReleaseSID(), ReleaseTimedOut(), and TimeOutSID().
|
private |
Referenced by AllocateSID().
|
private |
Referenced by IsTimedOut(), NumberOfTimedOutSIDs(), ReleaseAllTimedOut(), ReleaseTimedOut(), and TimeOutSID().
1.8.3.1