NAME

TBD::CachingTable -- implementation of all accessing operations on base of a cache


SYNOPSIS

   use TBD::CachingTable;
   our @ISA = qw(... TBD::CachingTable ...);


DESCRIPTION

TBD::CachingTable implements the accessing operations on base of a cache that must be initialized and saved by other modules. Following internal variables are expected to be properly initialized:

$table->{table}

The cache itself which is represented as hash whose values are references to hash tables which represent individual records of the table.

$table->{loaded}

Any accesses are denied if this variable is not set to true.

$table->{locked}

Any modifying accesses are denied if this variable is not set to true.

$table->{ofs}

In case of keys consisting of multiple fields this separator is used to construct keys of $table->{table}.

$table->{ifs}

Is used to split joined keys consisting of multiple fields.

Following operations are implemented: fetch, exists, get, keys, select, add, delete, and modify.


AUTHOR

Andreas Borchert with contributions of Mathias Etter.