NAME
Cache::Web::Lite - Cache web content somewhere viewable by browsers ( Lite Version )
SYNOPSIS
# Define the cache root
my $cache_root = HTML::Location->new( '/var/www/blah', 'http://ali.as/blah' );
# Create the cache handle
my $Cache = Cache::Web::Lite->new( cache_root => $cache_root );
# Add a graph to the cache
$Cache->set( 'my_graph.gif', $graph_data );
# Get the URI to tell a browser where to find it
my $URI = $Cache->uri( 'my_graph.gif' );
DESCRIPTION
EXPERIMENTAL AND LARGELY UNTESTED - DO NOT USE THIS MODULE!
Cache::Web::Lite implements a slimline version of a Cache.pm compatible API for caching generated web content in a location where we can retrieve it, AND where a browser can get it directly, without having to launch another script.
This is great for generating pages with images in them, as you can use a single invocation of a script to generate both the page and any custom images for it, and by the time the browser recieves the HTML page, the images are in place ready for it to fetch directly from the web server, without having to bother the script multiple times.
Due to it's ::Lite nature, Cache::Web::Lite implements a lookalike API, but is not a direct descendant of Cache.pm. See Cache::Web ( if written yet ) for a fully compatible and fully feature-complete implementation.
Cache::Web::Lite also lacks many of the features of Cache.pm. It supports only storage and retrieval of raw data and Storable objects. Expiry times, load and validation callbacks, and most other extra features are not supported.
For the full Cache.pm API see Cache. Additional properties and methods are described below.
PROPERTIES
new cache_root => HTML::Location
The constructor takes a series of options in the same form as Cache.pm. However, only the cache_root option is supported. Also, unlike Cache.pm, the cache_root option MUST be a HTML::Location object which describes the path/URI duality of the root of the web cache.
cache_location
Unlike cache_root
, which returns the root path of the cache, the cache_location
method returns a copy of the actual HTML::Location object for the root of the cache.
SHORTCUT METHODS
location $key
Returns a HTML::Location object for the location of the entry, if it exists.
path $key
Returns the path on the filesystem where the data is stored, if it exists.
uri $key
Returns a uri string for the web location of the entry, if it exists.
URI $key
Returns a URI object for the web location of the entry, if it exists.
TO DO
* Implement at least a few of the features from Cache.pm
* Write a more complete test suite.
SUPPORT
Bugs should be reported via the CPAN bug tracker at
http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Cache%3A%3AWeb%3A%3ALite
For other issues, contact the author
AUTHORS
Adam Kennedy ( maintainer )
cpan@ali.as
http://ali.as/
COPYRIGHT
Copyright (c) 2004 Adam Kennedy. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
The full text of the license can be found in the LICENSE file included with this module.