Autocache
view release on metacpan or search on metacpan
lib/Autocache/Strategy/Refresh.pm view on Meta::CPAN
package Autocache::Strategy::Refresh;
use Any::Moose;
extends 'Autocache::Strategy';
use Autocache;
use Carp;
use Autocache::Logger qw(get_logger);
use Scalar::Util qw( weaken );
#
# Refresh Strategy - freshen content regularly in the background
#
#
# refresh_age : content older than this in seconds will be refreshed in the
# background by a work queue
#
has 'refresh_age' => (
lib/Autocache/Strategy/Refresh.pm view on Meta::CPAN
get_logger()->debug( "set " . $req->name );
return $self->base_strategy->set( $req, $rec );
}
sub _refresh_task
{
my ($self,$req,$rec) = @_;
get_logger()->debug( "_refresh_task " . $rec->name );
weaken $self;
return sub
{
get_logger()->debug( "refreshing record: " . $rec->to_string );
my $fresh_rec = $self->create( $req );
$self->set( $fresh_rec );
};
}
#
( run in 0.266 second using v1.01-cache-2.11-cpan-65fba6d93b7 )