Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Compound Members | File Members

InvalidationRec Class Reference

#include <http-aux.h>

Collaboration diagram for InvalidationRec:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 InvalidationRec (const char *pid, double mtime, char updating=0)
virtual ~InvalidationRec ()
const char * pg () const
double mtime () const
char updating () const
int scount () const
InvalidationRecnext ()
void reset (double mtime)
int dec_scount ()
void set_updating ()
void clear_updating ()
void insert (InvalidationRec **head)
void detach ()

Protected Attributes

char * pg_
double mtime_
char updating_
int scount_
InvalidationRecnext_
InvalidationRec ** prev_

Friends

class HttpMInvalCache

Constructor & Destructor Documentation

InvalidationRec::InvalidationRec const char *  pid,
double  mtime,
char  updating = 0
[inline]
 

Definition at line 41 of file http-aux.h.

References HTTP_HBEXPIRE_COUNT, mtime_, next_, pg_, prev_, scount_, and updating_.

00041                                                                           {
00042                 pg_ = new char[strlen(pid) + 1];
00043                 strcpy(pg_, pid);
00044                 mtime_ = mtime;
00045                 scount_ = HTTP_HBEXPIRE_COUNT;
00046                 updating_ = updating;
00047                 next_ = 0, prev_ = 0;
00048         }

virtual InvalidationRec::~InvalidationRec  )  [inline, virtual]
 

Definition at line 49 of file http-aux.h.

References pg_.

00049                                    {
00050                 delete []pg_;
00051         }


Member Function Documentation

void InvalidationRec::clear_updating  )  [inline]
 

Definition at line 65 of file http-aux.h.

References updating_.

00065 { updating_ = 0; }

int InvalidationRec::dec_scount  )  [inline]
 

Definition at line 63 of file http-aux.h.

References scount_.

Referenced by HttpMInvalCache::pack_heartbeat(), and HttpYucInvalServer::pack_heartbeat().

00063 { return --scount_; }

void InvalidationRec::detach  )  [inline]
 

Definition at line 74 of file http-aux.h.

References next_, and prev_.

Referenced by HttpMInvalCache::add_inv(), HttpYucInvalServer::add_inv(), HttpMInvalCache::pack_heartbeat(), HttpYucInvalServer::pack_heartbeat(), and HttpMInvalCache::process_inv().

00074                       {
00075                 if (prev_ != 0)
00076                         *prev_ = next_;
00077                 if (next_ != 0)
00078                         next_->prev_ = prev_;
00079         }

void InvalidationRec::insert InvalidationRec **  head  )  [inline]
 

Definition at line 67 of file http-aux.h.

References next_, and prev_.

Referenced by HttpMInvalCache::add_inv(), HttpYucInvalServer::add_inv(), HttpHbData::extract(), and HttpMInvalCache::process_inv().

00067                                             {
00068                 next_ = *head;
00069                 if (next_ != 0)
00070                         next_->prev_ = &next_;
00071                 prev_ = head;
00072                 *head = this;
00073         }

double InvalidationRec::mtime  )  const [inline]
 

Definition at line 54 of file http-aux.h.

References mtime_.

Referenced by HttpMInvalCache::add_inv(), HttpYucInvalServer::add_inv(), HttpHbData::InvalRec::copy(), HttpMInvalCache::process_inv(), HttpPercInvalCache::recv_inv_filter(), and HttpMInvalCache::recv_inv_filter().

00054 { return mtime_; }

InvalidationRec* InvalidationRec::next  )  [inline]
 

Definition at line 57 of file http-aux.h.

References next_.

Referenced by HttpMInvalCache::get_invrec(), HttpYucInvalServer::get_invrec(), HttpMInvalCache::pack_heartbeat(), HttpYucInvalServer::pack_heartbeat(), and HttpMInvalCache::process_inv().

00057 { return next_; } 

const char* InvalidationRec::pg  )  const [inline]
 

Definition at line 53 of file http-aux.h.

References pg_.

Referenced by HttpHbData::InvalRec::copy(), HttpMInvalCache::get_invrec(), HttpYucInvalServer::get_invrec(), and HttpMInvalCache::process_inv().

00053 { return pg_; }

void InvalidationRec::reset double  mtime  )  [inline]
 

Definition at line 59 of file http-aux.h.

References HTTP_HBEXPIRE_COUNT, mtime_, and scount_.

00059                                  {
00060                 scount_ = HTTP_HBEXPIRE_COUNT;
00061                 mtime_ = mtime;
00062         }

int InvalidationRec::scount  )  const [inline]
 

Definition at line 56 of file http-aux.h.

References scount_.

00056 { return scount_; }

void InvalidationRec::set_updating  )  [inline]
 

Definition at line 64 of file http-aux.h.

References updating_.

00064 { updating_ = 1; }

char InvalidationRec::updating  )  const [inline]
 

Definition at line 55 of file http-aux.h.

References updating_.

Referenced by HttpHbData::InvalRec::copy().

00055 { return updating_; }


Friends And Related Function Documentation

friend class HttpMInvalCache [friend]
 

Definition at line 81 of file http-aux.h.


Member Data Documentation

double InvalidationRec::mtime_ [protected]
 

Definition at line 85 of file http-aux.h.

Referenced by InvalidationRec(), mtime(), and reset().

InvalidationRec* InvalidationRec::next_ [protected]
 

Definition at line 88 of file http-aux.h.

Referenced by detach(), insert(), InvalidationRec(), and next().

char* InvalidationRec::pg_ [protected]
 

Definition at line 84 of file http-aux.h.

Referenced by InvalidationRec(), pg(), and ~InvalidationRec().

InvalidationRec** InvalidationRec::prev_ [protected]
 

Definition at line 89 of file http-aux.h.

Referenced by detach(), insert(), and InvalidationRec().

int InvalidationRec::scount_ [protected]
 

Definition at line 87 of file http-aux.h.

Referenced by dec_scount(), InvalidationRec(), reset(), and scount().

char InvalidationRec::updating_ [protected]
 

Definition at line 86 of file http-aux.h.

Referenced by clear_updating(), InvalidationRec(), set_updating(), and updating().


The documentation for this class was generated from the following file:
Generated on Tue Apr 20 12:53:44 2004 for NS2.26SourcesOriginal by doxygen 1.3.3