libdap::HTTPCacheTable::CacheEntry Struct Reference

`#include <HTTPCacheTable.h>`

## Public Member Functions

| CacheEntry (const string &u)
string | get_cachename ()
time_t | get_corrected_initial_age ()
string | get_etag ()
time_t | get_expires ()
time_t | get_freshness_lifetime ()
time_t | get_lm ()
time_t | get_max_age ()
bool | get_must_revalidate ()
time_t | get_response_time ()
bool | is_no_cache ()
void | lock_read_response ()
void | lock_write_response ()
void | set_no_cache (bool state)
void | set_size (unsigned long sz)
void | unlock_read_response ()
void | unlock_write_response ()

## Friends

class | DeleteByHits
class | DeleteBySize
class | DeleteCacheEntry
class | DeleteExpired
class | HTTPCacheTable
class | HTTPCacheTest
class | WriteOneCacheEntry

## 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 HTTPCacheTable object maintains a map which binds the FILE* returned to a client with a given entry. This way the client can tell the HTTPCacheTable object that it is done with `FILE *response` and the class can arrange to update the lock counter and mutex.

Definition at line 114 of file HTTPCacheTable.h.

The documentation for this struct was generated from the following file:

- HTTPCacheTable.h