App-DistSync
view release on metacpan or search on metacpan
lib/App/DistSync.pm view on Meta::CPAN
use Carp;
use Cwd qw/abs_path getcwd/;
use FindBin qw($Script);
use File::Basename qw/dirname/;
use File::Copy qw/mv/;
use File::Spec;
use File::Path qw/mkpath/;
use Sys::Hostname;
use URI;
use LWP::UserAgent qw//;
use HTTP::Request qw//;
use HTTP::Date qw//;
use HTTP::Status qw//;
use App::DistSync::Util qw/
debug qrreconstruct touch spew slurp
fdelete read_yaml write_yaml
maniread manifind maniwrite
/;
use constant {
lib/App/DistSync.pm view on Meta::CPAN
# Make new URI
my $uri = URI->new($url);
my $curpath = $uri->path();
my $newpath = $curpath . (defined $obj ? "/$obj" : '');
$newpath =~ s/\/{2,}/\//;
$uri->path($newpath);
$ret->{url} = $uri->as_string;
# First request: get HEAD information
my $request = HTTP::Request->new(HEAD => $uri);
my $response = $ua->request($request);
my $content_type = scalar $response->header('Content-Type');
my $document_length = scalar $response->header('Content-Length');
my $modified_time = HTTP::Date::str2time($response->header('Last-Modified'));
my $expires = HTTP::Date::str2time($response->header('Expires'));
my $server = scalar $response->header('Server');
$ret->{code} = $response->code;
$ret->{message} = $response->message;
if ($self->verbose) {
if (!$DEBUG && !$response->is_success) {
( run in 0.797 second using v1.01-cache-2.11-cpan-140bd7fdf52 )