XrdCnsLogRec Class Reference

#include <XrdCnsLogRec.hh>

List of all members.

Public Member Functions

const char * Data ()
int DLen ()
int Done (int iPos)
const char * Lfn1 ()
const char * Lfn1 (int &Len)
const char * Lfn2 ()
mode_t Mode ()
void Queue ()
void Recycle ()
char * Record ()
int setData (const char *dP1, const char *dP2=0)
void setDone (int iPos, char Val=1)
int setLen ()
int setLfn1 (const char *lfn)
int setLfn2 (const char *lfn)
void setMode (mode_t Mode)
void setMount (char mCode)
void setSize (long long Size)
void setSpace (char sCode)
void setTime (long TOD=time(0))
void setType (const char evt)
int setType (const char *evt)
long long Size ()
char Space ()
int L1sz ()
int L2sz ()
char Type ()
 XrdCnsLogRec (const char rType=0)
 ~XrdCnsLogRec ()

Static Public Member Functions

static XrdCnsLogRecAlloc ()
static XrdCnsLogRecGet (char &lrType)

Static Public Attributes

static const int maxClients = 4
static const int OffDone = offsetof(LogRec, Hdr.Done)
static const int FixDLen = offsetof(Arg, lfn)
static const int MinSize = sizeof(Ctl)
static const int MaxSize = sizeof(Arg)
static const long tBase = 1248126834L
static const char lrClosew = 't'
static const char lrCreate = 'c'
static const char lrEOL = 'E'
static const char lrInvD = 'I'
static const char lrInvF = 'i'
static const char lrMkdir = 'd'
static const char lrMount = 'M'
static const char lrMv = 'm'
static const char lrRm = 'r'
static const char lrRmdir = 'D'
static const char lrSpace = 'S'
static const char lrTOD = 'T'
static const char * IArg
static const char * iArg

Private Attributes

XrdCnsLogRecNext
LogRec Rec

Static Private Attributes

static XrdSysSemaphore qSem
static XrdSysMutex qMutex
static XrdSysMutex fMutex
static XrdCnsLogRecfreeRec
static XrdCnsLogRecfrstRec
static XrdCnsLogReclastRec
static int Running

Classes

struct  Arg
struct  Ctl
struct  LogRec


Detailed Description

Definition at line 25 of file XrdCnsLogRec.hh.


Constructor & Destructor Documentation

XrdCnsLogRec::XrdCnsLogRec ( const char  rType = 0  )  [inline]

Definition at line 173 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::Ctl::dataLen, FixDLen, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::lfn, XrdCnsLogRec::Ctl::lfn1Len, lrEOL, lrTOD, Rec, setTime(), and XrdCnsLogRec::Arg::Type.

Referenced by Alloc().

XrdCnsLogRec::~XrdCnsLogRec (  )  [inline]

Definition at line 187 of file XrdCnsLogRec.hh.


Member Function Documentation

XrdCnsLogRec * XrdCnsLogRec::Alloc (  )  [static]

Definition at line 47 of file XrdCnsLogRec.cc.

References XrdCnsLogRec::LogRec::Data, FixDLen, fMutex, freeRec, XrdCnsLogRec::LogRec::Hdr, XrdSysMutex::Lock(), XrdCnsLogRec::Arg::Mode, Next, Rec, XrdCnsLogRec::Arg::SorT, XrdCnsLogRec::Arg::Type, XrdSysMutex::UnLock(), and XrdCnsLogRec().

Referenced by XrdCns::CnsInt(), and XrdCnsDaemon::getEvents().

const char* XrdCnsLogRec::Data (  )  [inline]

Definition at line 80 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, and Rec.

Referenced by XrdCnsLogClient::Run().

int XrdCnsLogRec::DLen (  )  [inline]

Definition at line 82 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::Ctl::dataLen, XrdCnsLogRec::LogRec::Hdr, and Rec.

Referenced by XrdCnsLogFile::Eol(), and XrdCnsLogFile::getRec().

int XrdCnsLogRec::Done ( int  iPos  )  [inline]

Definition at line 84 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::Ctl::Done, XrdCnsLogRec::LogRec::Hdr, and Rec.

Referenced by XrdCnsLogFile::getRec().

XrdCnsLogRec * XrdCnsLogRec::Get ( char &  lrType  )  [static]

Definition at line 73 of file XrdCnsLogRec.cc.

References XrdCnsLogRec::LogRec::Data, frstRec, lastRec, XrdSysMutex::Lock(), Next, qMutex, qSem, Rec, Recycle(), Running, XrdCnsLogRec::Arg::Type, XrdSysMutex::UnLock(), and XrdSysSemaphore::Wait().

Referenced by XrdCnsLogServer::Run().

const char* XrdCnsLogRec::Lfn1 (  )  [inline]

Definition at line 88 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::Arg::lfn, and Rec.

Referenced by XrdCnsLogClient::do_Create(), XrdCnsLogClient::do_Mkdir(), XrdCnsLogClient::do_Mv(), XrdCnsLogClient::do_Rm(), XrdCnsLogClient::do_Rmdir(), XrdCnsLogClient::do_Trunc(), and XrdCnsLogServer::Massage().

const char* XrdCnsLogRec::Lfn1 ( int &  Len  )  [inline]

Definition at line 90 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::lfn, XrdCnsLogRec::Ctl::lfn1Len, and Rec.

const char* XrdCnsLogRec::Lfn2 (  )  [inline]

Definition at line 92 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::lfn, XrdCnsLogRec::Ctl::lfn1Len, and Rec.

Referenced by XrdCnsLogClient::do_Mv().

mode_t XrdCnsLogRec::Mode (  )  [inline]

Definition at line 94 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Ctl::Mode, and Rec.

Referenced by XrdCnsLogClient::do_Create().

void XrdCnsLogRec::Queue (  ) 

Definition at line 100 of file XrdCnsLogRec.cc.

References frstRec, lastRec, XrdSysMutex::Lock(), Next, XrdSysSemaphore::Post(), qMutex, qSem, Running, and XrdSysMutex::UnLock().

Referenced by XrdCns::CnsInt(), and XrdCnsDaemon::getEvents().

void XrdCnsLogRec::Recycle (  ) 

Definition at line 120 of file XrdCnsLogRec.cc.

References fMutex, freeRec, XrdSysMutex::Lock(), Next, and XrdSysMutex::UnLock().

Referenced by Get(), XrdCnsDaemon::getEvents(), and XrdCnsLogServer::Run().

char* XrdCnsLogRec::Record (  )  [inline]

Definition at line 100 of file XrdCnsLogRec.hh.

References Rec.

Referenced by XrdCnsLogFile::Add(), and XrdCnsLogFile::getRec().

int XrdCnsLogRec::setData ( const char *  dP1,
const char *  dP2 = 0 
)

Definition at line 135 of file XrdCnsLogRec.cc.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::lfn, XrdCnsLogRec::Ctl::lfn1Len, XrdCnsLogRec::Ctl::lfn2Len, Rec, setSize(), and strcpy().

Referenced by XrdCnsLogServer::Massage().

void XrdCnsLogRec::setDone ( int  iPos,
char  Val = 1 
) [inline]

Definition at line 106 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::Ctl::Done, XrdCnsLogRec::LogRec::Hdr, Rec, and Val.

Referenced by XrdCnsLogFile::Commit().

int XrdCnsLogRec::setLen (  )  [inline]

Definition at line 108 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::Ctl::dataLen, FixDLen, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Ctl::lfn1Len, XrdCnsLogRec::Ctl::lfn2Len, and Rec.

Referenced by XrdCnsLogFile::Add().

int XrdCnsLogRec::setLfn1 ( const char *  lfn  )  [inline]

Definition at line 116 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::lfn, XrdCnsLogRec::Ctl::lfn1Len, n, Rec, and strlcpy().

Referenced by XrdCnsInventory::Conduct(), XrdCnsDaemon::getEvents(), XrdCnsInventory::Init(), and XrdCnsInventory::Xref().

int XrdCnsLogRec::setLfn2 ( const char *  lfn  )  [inline]

Definition at line 124 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::lfn, XrdCnsLogRec::Ctl::lfn1Len, XrdCnsLogRec::Ctl::lfn2Len, n, Rec, setSize(), and strlcpy().

Referenced by XrdCnsDaemon::getEvents().

void XrdCnsLogRec::setMode ( mode_t  Mode  )  [inline]

Definition at line 134 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::Mode, XrdCnsLogRec::Ctl::Mode, Rec, RooFit::Save(), XrdCnsLogRec::Arg::SorT, and sprintf().

Referenced by XrdCnsInventory::Conduct(), XrdCnsDaemon::getEvents(), and XrdCnsInventory::XrdCnsInventory().

void XrdCnsLogRec::setMount ( char  mCode  )  [inline]

Definition at line 141 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::Arg::Mount, and Rec.

Referenced by XrdCnsInventory::Init(), and XrdCnsInventory::Xref().

void XrdCnsLogRec::setSize ( long long  Size  )  [inline]

Definition at line 143 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Arg::Mount, Rec, RooFit::Save(), XrdCnsLogRec::Ctl::Size, XrdCnsLogRec::Arg::SorT, and sprintf().

Referenced by XrdCnsInventory::Conduct(), XrdCnsDaemon::getEvents(), setData(), setLfn2(), and XrdCnsInventory::XrdCnsInventory().

void XrdCnsLogRec::setSpace ( char  sCode  )  [inline]

Definition at line 151 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, Rec, and XrdCnsLogRec::Arg::Space.

Referenced by XrdCnsInventory::Init(), and XrdCnsInventory::Xref().

void XrdCnsLogRec::setTime ( long  TOD = time(0)  )  [inline]

Definition at line 153 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, XrdCnsLogRec::Arg::Mount, Rec, RooFit::Save(), XrdCnsLogRec::Arg::SorT, sprintf(), and tBase.

Referenced by XrdCnsLogRec().

void XrdCnsLogRec::setType ( const char  evt  )  [inline]

Definition at line 159 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, Rec, and XrdCnsLogRec::Arg::Type.

Referenced by XrdCns::CnsInt(), XrdCnsDaemon::getEvents(), and setType().

int XrdCnsLogRec::setType ( const char *  evt  ) 

Definition at line 159 of file XrdCnsLogRec.cc.

References lrClosew, lrCreate, lrMkdir, lrMv, lrRm, lrRmdir, and setType().

long long XrdCnsLogRec::Size (  )  [inline]

Definition at line 163 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Hdr, Rec, and XrdCnsLogRec::Ctl::Size.

Referenced by XrdCnsLogClient::do_Trunc().

char XrdCnsLogRec::Space (  )  [inline]

Definition at line 165 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, Rec, and XrdCnsLogRec::Arg::Space.

Referenced by XrdCnsLogClient::do_Create().

int XrdCnsLogRec::L1sz (  )  [inline]

Definition at line 167 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Ctl::lfn1Len, and Rec.

Referenced by XrdCnsLogFile::getRec().

int XrdCnsLogRec::L2sz (  )  [inline]

Definition at line 169 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Hdr, XrdCnsLogRec::Ctl::lfn2Len, and Rec.

Referenced by XrdCnsLogFile::getRec().

char XrdCnsLogRec::Type (  )  [inline]

Definition at line 171 of file XrdCnsLogRec.hh.

References XrdCnsLogRec::LogRec::Data, Rec, and XrdCnsLogRec::Arg::Type.

Referenced by XrdCnsDaemon::getEvents(), XrdCnsLogServer::Run(), and XrdCnsLogClient::Run().


Member Data Documentation

const int XrdCnsLogRec::maxClients = 4 [static]

Definition at line 29 of file XrdCnsLogRec.hh.

Referenced by XrdCnsLog::List().

const int XrdCnsLogRec::OffDone = offsetof(LogRec, Hdr.Done) [static]

Definition at line 56 of file XrdCnsLogRec.hh.

Referenced by XrdCnsLogFile::Commit().

const int XrdCnsLogRec::FixDLen = offsetof(Arg, lfn) [static]

Definition at line 57 of file XrdCnsLogRec.hh.

Referenced by Alloc(), XrdCnsLogFile::getRec(), setLen(), XrdCnsSsi::Write(), XrdCnsLogRec(), XrdCnsSsiApplyM(), and XrdCnsSsiApplyS().

const int XrdCnsLogRec::MinSize = sizeof(Ctl) [static]

Definition at line 58 of file XrdCnsLogRec.hh.

Referenced by XrdCnsLogFile::Add(), XrdCnsLogFile::Eol(), and XrdCnsLogFile::getRec().

const int XrdCnsLogRec::MaxSize = sizeof(Arg) [static]

Definition at line 59 of file XrdCnsLogRec.hh.

const long XrdCnsLogRec::tBase = 1248126834L [static]

Definition at line 60 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLog(), XrdCnsSsi::List(), and setTime().

const char XrdCnsLogRec::lrClosew = 't' [static]

Definition at line 62 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLogRec(), XrdCnsDaemon::getEvents(), XrdCnsLogClient::Run(), and setType().

const char XrdCnsLogRec::lrCreate = 'c' [static]

Definition at line 63 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLogRec(), XrdCnsDaemon::getEvents(), XrdCnsLogServer::Run(), XrdCnsLogClient::Run(), and setType().

const char XrdCnsLogRec::lrEOL = 'E' [static]

Definition at line 64 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLog(), XrdCnsLogFile::Eol(), and XrdCnsLogRec().

const char XrdCnsLogRec::lrInvD = 'I' [static]

Definition at line 65 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::List(), XrdCnsLogClient::Run(), and XrdCnsSsi::Updt().

const char XrdCnsLogRec::lrInvF = 'i' [static]

Definition at line 66 of file XrdCnsLogRec.hh.

Referenced by XrdCnsLogClient::Run().

const char XrdCnsLogRec::lrMkdir = 'd' [static]

Definition at line 67 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLogRec(), XrdCnsDaemon::getEvents(), XrdCnsLogClient::Run(), and setType().

const char XrdCnsLogRec::lrMount = 'M' [static]

Definition at line 68 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::List(), XrdCnsLogClient::Run(), XrdCnsSsi::Updt(), and XrdCnsSsiApplyM().

const char XrdCnsLogRec::lrMv = 'm' [static]

Definition at line 69 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLogRec(), XrdCnsDaemon::getEvents(), XrdCnsLogClient::Run(), and setType().

const char XrdCnsLogRec::lrRm = 'r' [static]

Definition at line 70 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLogRec(), XrdCnsLogClient::Run(), and setType().

const char XrdCnsLogRec::lrRmdir = 'D' [static]

Definition at line 71 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLogRec(), XrdCnsLogClient::Run(), and setType().

const char XrdCnsLogRec::lrSpace = 'S' [static]

Definition at line 72 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::List(), XrdCnsLogClient::Run(), XrdCnsSsi::Updt(), and XrdCnsSsiApplyS().

const char XrdCnsLogRec::lrTOD = 'T' [static]

Definition at line 73 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsi::ApplyLog(), XrdCnsInventory::Init(), XrdCnsSsi::List(), XrdCnsLogClient::Run(), XrdCnsSsi::Updt(), XrdCnsSsi::Write(), and XrdCnsLogRec().

const char * XrdCnsLogRec::IArg [static]

Definition at line 75 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsiDRec::XrdCnsSsiDRec().

const char * XrdCnsLogRec::iArg [static]

Definition at line 76 of file XrdCnsLogRec.hh.

Referenced by XrdCnsSsiFRec::XrdCnsSsiFRec().

XrdSysSemaphore XrdCnsLogRec::qSem [static, private]

Definition at line 191 of file XrdCnsLogRec.hh.

Referenced by Get(), and Queue().

XrdSysMutex XrdCnsLogRec::qMutex [static, private]

Definition at line 192 of file XrdCnsLogRec.hh.

Referenced by Get(), and Queue().

XrdSysMutex XrdCnsLogRec::fMutex [static, private]

Definition at line 193 of file XrdCnsLogRec.hh.

Referenced by Alloc(), and Recycle().

XrdCnsLogRec * XrdCnsLogRec::freeRec [static, private]

Definition at line 194 of file XrdCnsLogRec.hh.

Referenced by Alloc(), and Recycle().

XrdCnsLogRec * XrdCnsLogRec::frstRec [static, private]

Definition at line 195 of file XrdCnsLogRec.hh.

Referenced by Get(), and Queue().

XrdCnsLogRec * XrdCnsLogRec::lastRec [static, private]

Definition at line 196 of file XrdCnsLogRec.hh.

Referenced by Get(), and Queue().

int XrdCnsLogRec::Running [static, private]

Definition at line 197 of file XrdCnsLogRec.hh.

Referenced by Get(), and Queue().

XrdCnsLogRec* XrdCnsLogRec::Next [private]

Definition at line 199 of file XrdCnsLogRec.hh.

Referenced by Alloc(), Get(), Queue(), and Recycle().

LogRec XrdCnsLogRec::Rec [private]

Definition at line 200 of file XrdCnsLogRec.hh.

Referenced by Alloc(), Data(), DLen(), Done(), Get(), L1sz(), L2sz(), Lfn1(), Lfn2(), Mode(), Record(), setData(), setDone(), setLen(), setLfn1(), setLfn2(), setMode(), setMount(), setSize(), setSpace(), setTime(), setType(), Size(), Space(), Type(), and XrdCnsLogRec().


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