MooX::Role::CachedURL - a role providing a locally cached copy of a remote file
package MyClass; use Moo; with 'MooX::Role::CachedURL'; has '+url' => (default => sub { 'http://www.cpan.org/robots.txt' }); sub my_method { my $self = shift; # $self->path has the path to the local copy of the file }
This role represents a remote file that you want to cache locally, and then process. This is common functionality that I'm pulling out of my PAUSE::Users, PAUSE::Permissions and PAUSE::Packages modules.
PAUSE::Users provides a simple interface to the 00whois.xml file that is generated by PAUSE. It caches the file locally, then provides a mechanism for iterating over all users in the file.
00whois.xml
If you look right now, you'll notice that none of those modules use this role yet; I'll be gradually refactoring them once this role is on CPAN.
https://github.com/neilbowers/MooX-Role-CachedURL
Neil Bowers <neilb@cpan.org>
This software is copyright (c) 2014 by Neil Bowers <neilb@cpan.org>.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.
To install MooX::Role::CachedURL, copy and paste the appropriate command in to your terminal.
cpanm
cpanm MooX::Role::CachedURL
CPAN shell
perl -MCPAN -e shell install MooX::Role::CachedURL
For more information on module installation, please visit the detailed CPAN module installation guide.