NAME
CPAN::Local::Distribution::Role::FromURI - Allow distributions to be fetched from remote uris
VERSION
version 0.010
DESCRIPTION
This role allows a distribution object to be created from a remote URI rather than from a local file. The URI will be fetched and saved locally, and "filename" in CPAN::Local::Distribution will be set to the local file's name.
package CPAN::Local::Distribution::Custom
{
use Moose;
extends 'CPAN::Local::Distribution';
with 'CPAN::Local::Distribution::Role::FromURI';
}
package main
{
my $distro = CPAN::Local::Distribution::Custom->new(
uri => 'http:://www.somepan.org/authors/id/F/FO/FOOBAR/Foo-Bar-0.001.tar.gz',
cache => '/path/to/cache'
);
say $distro->filename; # /path/to/cache/authors/id/F/FO/FOOBAR/Foo-Bar-0.001.tar.gz
say $distro->authorid; # FOOBAR
}
ATTRIBUTES
uri
The remote distribution URI. The last part of the path must be a valid distribution name.
cache
Directory where the distribution will be downloaded to. A temporarary directory will be used if none is specified. If the distribution already exists in the cache, it will not be downloaded again.
AUTHOR
Peter Shangov <pshangov@yahoo.com>
COPYRIGHT AND LICENSE
This software is copyright (c) 2012 by Venda, Inc..
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.