XrdMonCtrWriter Class Reference

#include <XrdMonCtrWriter.hh>

List of all members.

Public Member Functions

 XrdMonCtrWriter (senderid_t senderId, kXR_int32 stod)
 ~XrdMonCtrWriter ()
void operator() (const char *packet, const XrdMonHeader &header, long currentTime)
kXR_int32 prevStod () const
void forceClose ()
long lastActivity () const

Static Public Member Functions

static void setBaseDir (const char *dir)
static void setMaxLogSize (kXR_int64 size)
static void setBufferSize (int size)

Private Types

enum  LogType

Private Member Functions

bool logIsOpen ()
bool logIsFull ()
bool bufferIsFull (packetlen_t x)
string logName (LogType t) const
void mkActiveLogNameDirs () const
void flushBuffer ()
void openLog ()
void closeLog ()
void publish ()

Private Attributes

kXR_int32 _prevStod
string _timestamp
hp_t _sender
char * _buffer
kXR_int32 _bPos
fstream _file
long _lastActivity

Static Private Attributes

static string _baseDir
static kXR_int64 _maxLogSize
static int _bufferSize
static long _totalArchived

Friends

ostream & operator<< (ostream &o, const XrdMonCtrWriter &w)


Detailed Description

Definition at line 30 of file XrdMonCtrWriter.hh.


Member Enumeration Documentation

enum XrdMonCtrWriter::LogType [private]

Definition at line 48 of file XrdMonCtrWriter.hh.


Constructor & Destructor Documentation

XrdMonCtrWriter::XrdMonCtrWriter ( senderid_t  senderId,
kXR_int32  stod 
)

Definition at line 41 of file XrdMonCtrWriter.cc.

References _bufferSize, _sender, _timestamp, generateTimestamp(), and XrdMonSenderInfo::id2HostPort().

XrdMonCtrWriter::~XrdMonCtrWriter (  ) 

Definition at line 54 of file XrdMonCtrWriter.cc.

References _buffer, closeLog(), flushBuffer(), and publish().


Member Function Documentation

void XrdMonCtrWriter::operator() ( const char *  packet,
const XrdMonHeader header,
long  currentTime 
)

Definition at line 63 of file XrdMonCtrWriter.cc.

References _bPos, _buffer, _bufferSize, _lastActivity, XrdMonCtrDebug::_mutex, bufferIsFull(), ERR_NOMEM, flushBuffer(), XrdSysMutexHelper::Lock(), XrdMonHeader::packetLen(), XrdMonCtrDebug::Receiving, and XrdMonCtrDebug::verbose().

kXR_int32 XrdMonCtrWriter::prevStod (  )  const [inline]

Definition at line 38 of file XrdMonCtrWriter.hh.

References _prevStod.

void XrdMonCtrWriter::forceClose (  ) 

Definition at line 97 of file XrdMonCtrWriter.cc.

long XrdMonCtrWriter::lastActivity (  )  const [inline]

Definition at line 41 of file XrdMonCtrWriter.hh.

References _lastActivity.

static void XrdMonCtrWriter::setBaseDir ( const char *  dir  )  [inline, static]

Definition at line 43 of file XrdMonCtrWriter.hh.

References _baseDir.

Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().

static void XrdMonCtrWriter::setMaxLogSize ( kXR_int64  size  )  [inline, static]

Definition at line 44 of file XrdMonCtrWriter.hh.

References _maxLogSize.

Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().

static void XrdMonCtrWriter::setBufferSize ( int  size  )  [inline, static]

Definition at line 45 of file XrdMonCtrWriter.hh.

References _bufferSize.

Referenced by XrdMonCtrArchiver::XrdMonCtrArchiver().

bool XrdMonCtrWriter::logIsOpen (  )  [inline, private]

Definition at line 50 of file XrdMonCtrWriter.hh.

References _file.

Referenced by flushBuffer().

bool XrdMonCtrWriter::logIsFull (  )  [inline, private]

Definition at line 51 of file XrdMonCtrWriter.hh.

References _file, and _maxLogSize.

Referenced by flushBuffer().

bool XrdMonCtrWriter::bufferIsFull ( packetlen_t  x  )  [inline, private]

Definition at line 52 of file XrdMonCtrWriter.hh.

References _bPos, and _bufferSize.

Referenced by operator()().

string XrdMonCtrWriter::logName ( LogType  t  )  const [private]

Definition at line 143 of file XrdMonCtrWriter.cc.

References _baseDir, _sender, _timestamp, ACTIVE, buf, ERR_INVALIDARG, PERMANENT, s, and sprintf().

Referenced by openLog(), and publish().

void XrdMonCtrWriter::mkActiveLogNameDirs (  )  const [private]

Definition at line 129 of file XrdMonCtrWriter.cc.

References _baseDir, _sender, b, mkdirIfNecessary(), and sprintf().

Referenced by openLog().

void XrdMonCtrWriter::flushBuffer (  )  [private]

Definition at line 107 of file XrdMonCtrWriter.cc.

References _bPos, _buffer, _bufferSize, _file, closeLog(), logIsFull(), logIsOpen(), openLog(), and publish().

Referenced by operator()(), and ~XrdMonCtrWriter().

void XrdMonCtrWriter::openLog (  )  [private]

Definition at line 163 of file XrdMonCtrWriter.cc.

References _file, ACTIVE, logName(), mkActiveLogNameDirs(), and out.

Referenced by flushBuffer().

void XrdMonCtrWriter::closeLog (  )  [private]

Definition at line 170 of file XrdMonCtrWriter.cc.

References _file.

Referenced by flushBuffer(), and ~XrdMonCtrWriter().

void XrdMonCtrWriter::publish (  )  [private]

Definition at line 178 of file XrdMonCtrWriter.cc.

References _bPos, _timestamp, access, ACTIVE, ERR_RENAME, generateTimestamp(), logName(), PERMANENT, and rename.

Referenced by flushBuffer(), and ~XrdMonCtrWriter().


Friends And Related Function Documentation

ostream& operator<< ( ostream &  o,
const XrdMonCtrWriter w 
) [friend]

Definition at line 196 of file XrdMonCtrWriter.cc.


Member Data Documentation

string XrdMonCtrWriter::_baseDir [static, private]

Definition at line 63 of file XrdMonCtrWriter.hh.

Referenced by logName(), mkActiveLogNameDirs(), and setBaseDir().

kXR_int64 XrdMonCtrWriter::_maxLogSize [static, private]

Definition at line 64 of file XrdMonCtrWriter.hh.

Referenced by logIsFull(), and setMaxLogSize().

kXR_int32 XrdMonCtrWriter::_bufferSize [static, private]

Definition at line 65 of file XrdMonCtrWriter.hh.

Referenced by bufferIsFull(), flushBuffer(), operator()(), setBufferSize(), and XrdMonCtrWriter().

long XrdMonCtrWriter::_totalArchived [static, private]

Definition at line 66 of file XrdMonCtrWriter.hh.

kXR_int32 XrdMonCtrWriter::_prevStod [private]

Definition at line 68 of file XrdMonCtrWriter.hh.

Referenced by prevStod().

string XrdMonCtrWriter::_timestamp [private]

Definition at line 70 of file XrdMonCtrWriter.hh.

Referenced by logName(), publish(), and XrdMonCtrWriter().

hp_t XrdMonCtrWriter::_sender [private]

Definition at line 71 of file XrdMonCtrWriter.hh.

Referenced by logName(), mkActiveLogNameDirs(), and XrdMonCtrWriter().

char* XrdMonCtrWriter::_buffer [private]

Definition at line 72 of file XrdMonCtrWriter.hh.

Referenced by flushBuffer(), operator()(), and ~XrdMonCtrWriter().

kXR_int32 XrdMonCtrWriter::_bPos [private]

Definition at line 73 of file XrdMonCtrWriter.hh.

Referenced by bufferIsFull(), flushBuffer(), operator()(), and publish().

fstream XrdMonCtrWriter::_file [private]

Definition at line 74 of file XrdMonCtrWriter.hh.

Referenced by closeLog(), flushBuffer(), logIsFull(), logIsOpen(), and openLog().

long XrdMonCtrWriter::_lastActivity [private]

Definition at line 76 of file XrdMonCtrWriter.hh.

Referenced by lastActivity(), and operator()().


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