VERSION
version 0.32SYNOPSIS
my $cache_model = Cody::TidyAll::CacheModel->new(
cache_engine => Code::TidyAll::Cache->new(...),
path => "/path/to/file/to/cache",
);
# check cache
print "Yes!" if $cache_model->is_cached;
# update cache
$cache_model->clear_file_contents;
$cache_model->update;
# update the cache when you know the file contents
$cache_model->file_contents($new_content);
$cache_model->update;
# force removal from cache
$cache_model->remove;
DESCRIPTION
A cache model for Code::TidyAll. Different subclasses can employ different caching techniques.The basic model implemented here is simple; It stores in the cache a hash key of the file contents keyed by a hash key of the file's path.
Attributes
- full_path (required, ro)
- The full path to the file on disk
- path (required, ro)
- The local path to the file (i.e. what the cache system will consider the canonical name of the file)
- cache_engine (optional, default undef, ro)
- A "Code::TidyAll::Cache" compatible instance, or, if no caching is required undef.
- base_sig (optional, default empty string, ro)
- A base signature.
- file_contents (optional, default loads file contents from disk, rw)
- is_cached (optional, default computed, rw)
- A flag indicating if this is cached. By default checks that the cache key and cache value match the cache.
Methods
- cache_key
- The computed cache key for the file
- cache_value
- The computed cache value for the file
- update
- Updates the cache
- remove
- Attempts to remove the value from the cache
AUTHORS
- Jonathan Swartz <[email protected]>
- Dave Rolsky <[email protected]>
COPYRIGHT AND LICENSE
This software is copyright (c) 2011 - 2015 by Jonathan Swartz.This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.