/usr/share/perl5/CHI/Driver/CacheCache.pm is in libchi-perl 0.60-3.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 | package CHI::Driver::CacheCache;
$CHI::Driver::CacheCache::VERSION = '0.60';
use Cache::Cache;
use Carp;
use Moo;
use MooX::Types::MooseLike::Base qw(:all);
use Module::Runtime qw(require_module);
use strict;
use warnings;
extends 'CHI::Driver::Base::CacheContainer';
has 'cc_class' => ( is => 'ro', isa => Str, required => 1 );
has 'cc_options' => ( is => 'ro', isa => HashRef, required => 1 );
sub BUILD {
my ( $self, $params ) = @_;
$self->{_contained_cache} = $self->_build_contained_cache;
}
sub _build_contained_cache {
my ($self) = @_;
my $cc_class = $self->{cc_class};
my $cc_options = $self->{cc_options};
my %subparams = ( namespace => $self->namespace );
require_module($cc_class);
my %final_cc_params = ( %subparams, %{$cc_options} );
return $cc_class->new( \%final_cc_params );
}
1;
__END__
=pod
=head1 NAME
CHI::Driver::CacheCache - CHI wrapper for Cache::Cache
=head1 VERSION
version 0.60
=head1 SYNOPSIS
use CHI;
my $cache = CHI->new(
driver => 'CacheCache',
cc_class => 'Cache::FileCache',
cc_options => { cache_root => '/path/to/cache/root' },
);
=head1 DESCRIPTION
This driver wraps any Cache::Cache cache.
=head1 CONSTRUCTOR OPTIONS
When using this driver, the following options can be passed to CHI->new() in
addition to the L<CHI|general constructor options/constructor>.
=over
=item cc_class
Name of Cache::Cache class to create, e.g. Cache::FileCache. Required.
=item cc_options
Hashref of options to pass to Cache::Cache constructor. Required.
=back
=head1 SEE ALSO
L<CHI|CHI>
=head1 AUTHOR
Jonathan Swartz <swartz@pobox.com>
=head1 COPYRIGHT AND LICENSE
This software is copyright (c) 2012 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.
=cut
|