xrootd
|
#include <XrdOucHash.hh>
Public Member Functions | |
T * | Add (const char *KeyVal, T *KeyData, const int LifeTime=0, XrdOucHash_Options opt=Hash_default) |
int | Del (const char *KeyVal, XrdOucHash_Options opt=Hash_default) |
T * | Find (const char *KeyVal, time_t *KeyTime=0) |
int | Num () |
void | Purge () |
T * | Rep (const char *KeyVal, T *KeyData, const int LifeTime=0, XrdOucHash_Options opt=Hash_default) |
T * | Apply (int(*func)(const char *, T *, void *), void *Arg) |
XrdOucHash (int psize=89, int size=144, int load=80) | |
~XrdOucHash () | |
Private Member Functions | |
void | Remove (int kent, XrdOucHash_Item< T > *hip, XrdOucHash_Item< T > *phip) |
XrdOucHash_Item< T > * | Search (XrdOucHash_Item< T > *hip, const unsigned long khash, const char *kval, XrdOucHash_Item< T > **phip=0) |
unsigned long | HashVal (const char *KeyVal) |
void | Expand () |
Private Attributes | |
XrdOucHash_Item< T > ** | hashtable |
int | prevtablesize |
int | hashtablesize |
int | hashnum |
int | hashmax |
int | hashload |
XrdOucHash< T >::XrdOucHash | ( | int | psize = 89 , |
int | size = 144 , |
||
int | load = 80 |
||
) |
XrdOucHash< T >::~XrdOucHash | ( | ) | [inline] |
T * XrdOucHash< T >::Add | ( | const char * | KeyVal, |
T * | KeyData, | ||
const int | LifeTime = 0 , |
||
XrdOucHash_Options | opt = Hash_default |
||
) |
References XrdOucHash_Item< T >::Count(), XrdOucHash_Item< T >::Data(), Hash_count, Hash_replace, XrdOucHash_Item< T >::Time(), XrdOucHash_Item< T >::Update(), and XrdOucHashVal().
Referenced by XrdCnsXref::Add(), XrdCmsPrepare::Add(), XrdCnsSsi::AddDel(), XrdCnsSsi::AddFile(), XrdNetSecurity::AddHost(), XrdAccGroups::AddName(), XrdClientConn::CheckHostDomain(), XrdFrmFiles::Complain(), XrdAccConfig::ConfigDBrec(), XrdOfsEvr::eventStage(), XrdAccGroups::Groups(), XrdSecProtocolsslProc::Handle(), XrdNetSecurity::hostOK(), XrdXrootdFileLock1::Lock(), XrdOssMio::Map(), XrdAccGroups::NetGroups(), XrdFrmFiles::Process(), XrdSecsssID::Register(), XrdSutCache::Rehash(), XrdSecProtocolssl::ReloadGridMapFile(), XrdSecProtocolssl::ReloadVomsMapFile(), XrdOucHash< dMoP >::Rep(), XrdCmsPrepare::Reset(), XrdFrmFileset::Screen(), XrdOssSys::Stage_QT(), STRINGSTORE(), XrdSutPFile::UpdateHashTable(), and XrdOfsEvr::Work4Event().
T * XrdOucHash< T >::Apply | ( | int(*)(const char *, T *, void *) | func, |
void * | Arg | ||
) |
References XrdOucHash_Item< T >::Data(), XrdOucHash_Item< T >::Key(), XrdOucHash_Item< T >::Next(), XrdOucHash_Item< T >::SetNext(), and XrdOucHash_Item< T >::Time().
Referenced by XrdCnsXref::Apply(), XrdClientConnectionMgr::Connect(), XrdOfsEvr::flushEvents(), XrdClientConnectionMgr::GarbageCollect(), XrdAccGroups::NetGroups(), XrdCmsPrepare::Scrub(), XrdClientConnectionMgr::ShutDown(), XrdOssSys::Stage_QT(), XrdCnsSsi::Updt(), and XrdCnsSsiApplyD().
int XrdOucHash< T >::Del | ( | const char * | KeyVal, |
XrdOucHash_Options | opt = Hash_default |
||
) |
References XrdOucHash_Item< T >::Count(), XrdOucHash_Item< T >::Update(), and XrdOucHashVal().
Referenced by XrdCnsXref::Add(), XrdCnsSsi::AddDel(), XrdCnsSsi::ApplyLogRec(), XrdClientConnectionMgr::Connect(), XrdOfsEvr::flushEvents(), XrdCmsPrepare::Gone(), XrdOssMio::Reclaim(), XrdSecsssID::Register(), and XrdXrootdFileLock1::Unlock().
void XrdOucHash< T >::Expand | ( | ) | [private] |
T * XrdOucHash< T >::Find | ( | const char * | KeyVal, |
time_t * | KeyTime = 0 |
||
) |
References XrdOucHash_Item< T >::Data(), XrdOucHash_Item< T >::Time(), and XrdOucHashVal().
Referenced by XrdAccAccess::Access(), XrdCnsXref::Add(), XrdCnsSsi::AddDel(), XrdCnsSsi::AddFile(), XrdAccGroups::addGroup(), XrdAccGroups::AddName(), XrdCnsSsi::AddSize(), XrdNetSecurity::Authorize(), XrdClientConn::CheckHostDomain(), XrdAccConfig::ConfigDBrec(), XrdClientConnectionMgr::Connect(), XrdClientConn::DoLogin(), XrdOfsEvr::eventStage(), XrdCmsPrepare::Exists(), XrdSecsssID::Find(), XrdCnsXref::Find(), XrdAccGroups::FindName(), XrdSutCache::Get(), XrdOucEnv::Get(), XrdOucEnv::GetInt(), XrdClientConnectionMgr::GetPhyConnection(), XrdClientConn::GetSessionID(), XrdAccGroups::Groups(), XrdSecProtocolsslProc::Handle(), XrdXrootdFileLock1::Lock(), XrdOssMio::Map(), XrdAccGroups::NetGroups(), XrdXrootdFileLock1::numLocks(), XrdFrmFiles::Process(), XrdSutPFile::ReadEntry(), XrdSecProtocolssl::ReloadGridMapFile(), XrdSecProtocolssl::ReloadVomsMapFile(), XrdSutCache::Remove(), XrdSutPFile::RemoveEntry(), XrdSecProtocolssl::secServer(), STRINGSTORE(), XrdXrootdFileLock1::Unlock(), XrdSutPFile::UpdateCount(), XrdOfsEvr::Work4Event(), and XrdFfsFsinfo_cache_search().
unsigned long XrdOucHash< T >::HashVal | ( | const char * | KeyVal | ) | [private] |
int XrdOucHash< T >::Num | ( | ) | [inline] |
void XrdOucHash< T >::Purge | ( | ) |
References XrdOucHash_Item< T >::Next().
Referenced by XrdFrmFiles::Get(), XrdFrmFileset::Purge(), XrdAccGroups::PurgeCache(), XrdSutCache::Rehash(), XrdSecProtocolssl::ReloadGridMapFile(), XrdSecProtocolssl::ReloadVomsMapFile(), XrdCmsPrepare::Reset(), XrdClientConnectionMgr::ShutDown(), XrdSutPFile::UpdateHashTable(), and XrdOucHash< dMoP >::~XrdOucHash().
void XrdOucHash< T >::Remove | ( | int | kent, |
XrdOucHash_Item< T > * | hip, | ||
XrdOucHash_Item< T > * | phip | ||
) | [private] |
References XrdOucHash_Item< T >::Next(), and XrdOucHash_Item< T >::SetNext().
T* XrdOucHash< T >::Rep | ( | const char * | KeyVal, |
T * | KeyData, | ||
const int | LifeTime = 0 , |
||
XrdOucHash_Options | opt = Hash_default |
||
) | [inline] |
XrdOucHash_Item< T > * XrdOucHash< T >::Search | ( | XrdOucHash_Item< T > * | hip, |
const unsigned long | khash, | ||
const char * | kval, | ||
XrdOucHash_Item< T > ** | phip = 0 |
||
) | [private] |
References XrdOucHash_Item< T >::Next(), and XrdOucHash_Item< T >::Same().
int XrdOucHash< T >::hashload [private] |
int XrdOucHash< T >::hashmax [private] |
int XrdOucHash< T >::hashnum [private] |
Referenced by XrdOucHash< dMoP >::Num().
XrdOucHash_Item<T>** XrdOucHash< T >::hashtable [private] |
Referenced by XrdOucHash< dMoP >::~XrdOucHash().
int XrdOucHash< T >::hashtablesize [private] |
int XrdOucHash< T >::prevtablesize [private] |