XrdSutCache Class Reference

#include <XrdSutCache.hh>

List of all members.

Public Member Functions

 XrdSutCache ()
virtual ~XrdSutCache ()
int Entries () const
bool Empty () const
int Init (int capacity=100)
int Reset (int newsz=-1)
int Load (const char *pfname)
int Flush (const char *pfname=0)
int Refresh ()
int Rehash (bool force=0)
void SetLifetime (int lifet=300)
XrdSutPFEntryGet (int i) const
XrdSutPFEntryGet (const char *ID, bool *wild=0)
XrdSutPFEntryAdd (const char *ID, bool force=0)
bool Remove (const char *ID, int opt=1)
int Trim (int lifet=0)
void Dump (const char *msg=0)

Private Attributes

int cachesz
int cachemx
XrdSutPFEntry ** cachent
kXR_int32 utime
int lifetime
XrdOucHash< kXR_int32hashtable
kXR_int32 htmtime
XrdOucString pfile


Detailed Description

Definition at line 25 of file XrdSutCache.hh.


Constructor & Destructor Documentation

XrdSutCache::XrdSutCache (  )  [inline]

Definition at line 38 of file XrdSutCache.hh.

References cachemx, cachent, cachesz, htmtime, lifetime, pfile, and utime.

XrdSutCache::~XrdSutCache (  )  [virtual]

Definition at line 33 of file XrdSutCache.cc.

References cachemx, and cachent.


Member Function Documentation

int XrdSutCache::Entries (  )  const [inline]

Definition at line 43 of file XrdSutCache.hh.

References cachemx.

bool XrdSutCache::Empty (  )  const [inline]

Definition at line 44 of file XrdSutCache.hh.

References cachemx.

Referenced by XrdSecProtocolgsi::Init(), and XrdSecProtocolgsi::LoadGMAP().

int XrdSutCache::Init ( int  capacity = 100  ) 

Definition at line 51 of file XrdSutCache.cc.

References cachent, cachesz, DEBUG, EPNAME, Rehash(), and utime.

Referenced by XrdSecProtocolgsi::Init(), XrdSecProtocolpwd::Init(), Load(), XrdCryptosslX509Crl::LoadCache(), XrdSecProtocolgsi::LoadCADir(), XrdSecProtocolgsi::LoadGMAP(), and Reset().

int XrdSutCache::Reset ( int  newsz = -1  ) 

Definition at line 323 of file XrdSutCache.cc.

References cachemx, cachent, cachesz, i, and Init().

Referenced by XrdSecProtocolgsi::Init(), Load(), and XrdSecProtocolgsi::LoadGMAP().

int XrdSutCache::Load ( const char *  pfname  ) 

Definition at line 393 of file XrdSutCache.cc.

References cachemx, cachent, XrdSutPFile::Close(), DEBUG, XrdSutPFEntInd::entofs, XrdSutPFHeader::entries, EPNAME, XrdSutPFHeader::indofs, Init(), XrdSutPFile::IsValid(), kPFEopen, XrdSutPFile::LastErrStr(), XrdSutPFEntInd::name, XrdSutPFEntInd::nxtofs, pfile, XrdSutPFile::ReadEnt(), XrdSutPFile::ReadHeader(), XrdSutPFile::ReadInd(), Rehash(), Reset(), XrdSutPFEntry::SetName(), stat, and utime.

Referenced by XrdSecProtocolpwd::Init(), and Refresh().

int XrdSutCache::Flush ( const char *  pfname = 0  ) 

Definition at line 553 of file XrdSutCache.cc.

References XrdOucString::c_str(), cachemx, cachent, XrdSutPFile::Close(), DEBUG, EPNAME, i, XrdSutPFile::IsValid(), kPFEcreate, kPFEopen, XrdSutPFile::LastErrStr(), XrdOucString::length(), XrdSutPFEntry::mtime, XrdSutPFEntry::name, pfile, XrdSutPFile::ReadEntry(), utime, and XrdSutPFile::WriteEntry().

Referenced by XrdSecProtocolpwd::Authenticate(), XrdSecProtocolpwd::ParseClientInput(), XrdSecProtocolpwd::SaveCreds(), and XrdSecProtocolpwd::UpdateAlog().

int XrdSutCache::Refresh (  ) 

Definition at line 618 of file XrdSutCache.cc.

References XrdOucString::c_str(), DEBUG, EPNAME, XrdOucString::length(), Load(), pfile, stat, and utime.

Referenced by XrdSecProtocolpwd::QueryCreds(), and XrdSecProtocolpwd::QueryUser().

int XrdSutCache::Rehash ( bool  force = 0  ) 

Definition at line 518 of file XrdSutCache.cc.

References cachemx, cachent, DEBUG, Dump(), EPNAME, htmtime, i, name, TRACE, and utime.

Referenced by Add(), Get(), XrdSecProtocolgsi::GetCA(), Init(), XrdSecProtocolgsi::Init(), Load(), XrdCryptosslX509Crl::LoadCache(), XrdSecProtocolgsi::LoadCADir(), XrdSecProtocolgsi::LoadGMAP(), XrdSecProtocolgsi::QueryGMAP(), XrdSecProtocolgsi::QueryProxy(), and Remove().

void XrdSutCache::SetLifetime ( int  lifet = 300  )  [inline]

Definition at line 53 of file XrdSutCache.hh.

References lifetime.

XrdSutPFEntry* XrdSutCache::Get ( int  i  )  const [inline]

Definition at line 56 of file XrdSutCache.hh.

References cachemx, and cachent.

Referenced by Add(), XrdSecProtocolgsi::GetCA(), XrdSecProtocolpwd::Init(), XrdCryptosslX509Crl::IsRevoked(), XrdSecProtocolpwd::ParseClientInput(), XrdSecProtocolpwd::QueryCreds(), XrdSecProtocolgsi::QueryGMAP(), XrdSecProtocolgsi::QueryProxy(), XrdSecProtocolpwd::QueryUser(), and XrdSecProtocolgsi::ServerDoCertreq().

XrdSutPFEntry * XrdSutCache::Get ( const char *  ID,
bool *  wild = 0 
)

Definition at line 83 of file XrdSutCache.cc.

References cachemx, cachent, cachesz, DEBUG, Dump(), EPNAME, i, match(), XrdOucString::matches(), XrdSutPFEntry::name, Rehash(), and TRACE.

XrdSutPFEntry * XrdSutCache::Add ( const char *  ID,
bool  force = 0 
)

Definition at line 137 of file XrdSutCache.cc.

References cachemx, cachent, cachesz, DEBUG, EPNAME, Get(), i, Rehash(), and utime.

Referenced by XrdSecProtocolgsi::GetCA(), XrdSecProtocolgsi::Init(), XrdCryptosslX509Crl::LoadCache(), XrdSecProtocolgsi::LoadCADir(), XrdSecProtocolgsi::LoadGMAP(), XrdSecProtocolpwd::ParseClientInput(), XrdSecProtocolpwd::QueryCreds(), XrdSecProtocolgsi::QueryGMAP(), XrdSecProtocolgsi::QueryProxy(), XrdSecProtocolpwd::QueryUser(), and XrdSecProtocolpwd::SaveCreds().

bool XrdSutCache::Remove ( const char *  ID,
int  opt = 1 
)

Definition at line 220 of file XrdSutCache.cc.

References cachemx, cachent, cachesz, DEBUG, EPNAME, i, name, Rehash(), and utime.

Referenced by XrdSecProtocolgsi::QueryGMAP().

int XrdSutCache::Trim ( int  lifet = 0  ) 

Definition at line 290 of file XrdSutCache.cc.

References cachemx, cachent, i, and lifetime.

void XrdSutCache::Dump ( const char *  msg = 0  ) 

Definition at line 352 of file XrdSutCache.cc.

References XrdSutPFEntry::buf1, XrdSutPFEntry::buf2, XrdSutPFEntry::buf3, XrdSutPFEntry::buf4, cachemx, cachent, cachesz, XrdSutPFEntry::cnt, EPNAME, i, XrdSutPFBuf::len, XrdSutPFEntry::mtime, XrdSutPFEntry::name, PRINT, XrdSutPFEntry::status, and XrdSutTimeString().

Referenced by Get(), XrdSecProtocolpwd::Init(), XrdSecProtocolgsi::Init(), and Rehash().


Member Data Documentation

int XrdSutCache::cachesz [private]

Definition at line 28 of file XrdSutCache.hh.

Referenced by Add(), Dump(), Get(), Init(), Remove(), Reset(), and XrdSutCache().

int XrdSutCache::cachemx [private]

Definition at line 29 of file XrdSutCache.hh.

Referenced by Add(), Dump(), Empty(), Entries(), Flush(), Get(), Load(), Rehash(), Remove(), Reset(), Trim(), XrdSutCache(), and ~XrdSutCache().

XrdSutPFEntry** XrdSutCache::cachent [private]

Definition at line 30 of file XrdSutCache.hh.

Referenced by Add(), Dump(), Flush(), Get(), Init(), Load(), Rehash(), Remove(), Reset(), Trim(), XrdSutCache(), and ~XrdSutCache().

kXR_int32 XrdSutCache::utime [private]

Definition at line 31 of file XrdSutCache.hh.

Referenced by Add(), Flush(), Init(), Load(), Refresh(), Rehash(), Remove(), and XrdSutCache().

int XrdSutCache::lifetime [private]

Definition at line 32 of file XrdSutCache.hh.

Referenced by SetLifetime(), Trim(), and XrdSutCache().

XrdOucHash<kXR_int32> XrdSutCache::hashtable [private]

Definition at line 33 of file XrdSutCache.hh.

kXR_int32 XrdSutCache::htmtime [private]

Definition at line 34 of file XrdSutCache.hh.

Referenced by Rehash(), and XrdSutCache().

XrdOucString XrdSutCache::pfile [private]

Definition at line 35 of file XrdSutCache.hh.

Referenced by Flush(), Load(), Refresh(), and XrdSutCache().


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:50:46 2011 for ROOT_528-00b_version by  doxygen 1.5.1