HTTPCache::CacheEntry Struct Reference

#include <HTTPCache.h>

Collaboration diagram for HTTPCache::CacheEntry:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 CacheEntry ()

Public Attributes

time_t age
string cachename
time_t corrected_initial_age
time_t date
string etag
time_t expires
time_t freshness_lifetime
int hash
int hits
time_t lm
pthread_mutex_t lock
int locked
time_t max_age
bool must_revalidate
bool no_cache
bool range
time_t response_time
unsigned long size
string url

Detailed Description

A struct used to store information about responses in the cache's volatile memory.

About entry locking: An entry is locked using both a mutex and a counter. The counter keeps track of how many clients are accessing a given entry while the mutex provides a guarantee that updates to the counter are MT-safe. In addition, the HTTPCache object maintains a map which binds the FILE* returned to a client with a given entry. This way the client can tell the HTTPCache object that it is done with FILE *response and the class can arrange to update the lock counter and mutex.

Definition at line 145 of file HTTPCache.h.


Constructor & Destructor Documentation

HTTPCache::CacheEntry::CacheEntry (  )  [inline]

Definition at line 174 of file HTTPCache.h.


Member Data Documentation

time_t HTTPCache::CacheEntry::age

Definition at line 157 of file HTTPCache.h.

string HTTPCache::CacheEntry::cachename

Definition at line 151 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::corrected_initial_age

Definition at line 166 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::date

Definition at line 156 of file HTTPCache.h.

string HTTPCache::CacheEntry::etag

Definition at line 153 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::expires

Definition at line 155 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::freshness_lifetime

Definition at line 164 of file HTTPCache.h.

int HTTPCache::CacheEntry::hash

Definition at line 148 of file HTTPCache.h.

int HTTPCache::CacheEntry::hits

Definition at line 149 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::lm

Definition at line 154 of file HTTPCache.h.

pthread_mutex_t HTTPCache::CacheEntry::lock

Definition at line 172 of file HTTPCache.h.

int HTTPCache::CacheEntry::locked

Definition at line 171 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::max_age

Definition at line 158 of file HTTPCache.h.

bool HTTPCache::CacheEntry::must_revalidate

Definition at line 168 of file HTTPCache.h.

bool HTTPCache::CacheEntry::no_cache

Definition at line 169 of file HTTPCache.h.

bool HTTPCache::CacheEntry::range

Definition at line 161 of file HTTPCache.h.

time_t HTTPCache::CacheEntry::response_time

Definition at line 165 of file HTTPCache.h.

unsigned long HTTPCache::CacheEntry::size

Definition at line 160 of file HTTPCache.h.

string HTTPCache::CacheEntry::url

Definition at line 147 of file HTTPCache.h.


The documentation for this struct was generated from the following file:
Generated on Wed Jun 27 12:58:00 2007 for libdap++ by  doxygen 1.4.7