Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

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 Thu Aug 2 06:44:32 2007 for libdap++ by  doxygen 1.3.9.1