Help-Site Computer Manuals
Software
Hardware
Programming
Networking
  Algorithms & Data Structures   Programming Languages   Revision Control
  Protocols
  Cameras   Computers   Displays   Keyboards & Mice   Motherboards   Networking   Printers & Scanners   Storage
  Windows   Linux & Unix   Mac

Cache::AgainstFile::Base
base class for default backends

Cache::AgainstFile::Base - base class for default backends


NAME

Cache::AgainstFile::Base - base class for default backends


SYNOPSIS


 package Cache::AgainstFile::MyBackend;

 use Cache::AgainstFile::Base;

 @ISA = qw(Cache::AgainstFile::Base);

 

 ...implement methods...

 1;


DESCRIPTION

This provides a default implementation for purging the cache, based on a list of stale files and a hashref of access times.

Classes inheriting from this base class should provide the following public methods:

$b = new Cache::AgainstFile::MyBackend(\&loader, \%options)
This should call the base class constructor.

$data = $b->get($filename, @opts)
Fetch an item from the cache. @opts should be passed after the filename to the loader coderef.

$n = $b->count()
Number of items in the cache

$bytes = $b->size()
Total size of the cache in bytes

They should also provide the following protected methods which are used to support purge():

$b->_remove(\@filenames)
Remove a number of items from the cache

$hashref = $b->_accessed()
A hashref of filename => access time

@filenames = $b->_stale()
A list of cache items which are stale with respect to their original files


OPTIONS

The implementation of purge() supports the options:

NoStat
MaxItems
MaxATime


VERSION

$Revision: 1.8 $ on $Date: 2005/06/03 14:29:55 $ by $Author: johna $


AUTHOR

John Alden <cpan _at_ bbc _dot_ co _dot_ uk>


COPYRIGHT

(c) BBC 2005. This program is free software; you can redistribute it and/or modify it under the GNU GPL.

See the file COPYING in this distribution, or http://www.gnu.org/licenses/gpl.txt

Programminig
Wy
Wy
yW
Wy
Programming
Wy
Wy
Wy
Wy