# Created: 20000309
#
-if (&IsParam("useStrict")) { use strict; }
+use strict;
-use vars qw(%ftp);
+use vars qw(%ftp %param);
# Usage: &ftpGet($host,$dir,$file,[$lfile]);
sub ftpGet {
return 0;
}
- my $start_time = &gettimeofday();
+ my $start_time = &timeget();
if (defined $lfile) {
&status("FTP: getting $file as $lfile.") if ($verbose_ftp);
$ftp->get($file,$lfile);
if (defined $lsize) {
&DEBUG("FTP: locsize => '$lsize'.");
if ($size != $lsize) {
- &WARN("FTP: downloaded file seems truncated. FIXME.");
+ &FIXME("FTP: downloaded file seems truncated.");
}
}
- my $delta_time = &gettimeofday() - $start_time;
+ my $delta_time = &timedelta($start_time);
if ($delta_time > 0 and $verbose_ftp) {
&status(sprintf("FTP: %.02f sec to complete.", $delta_time));
my ($rateunit,$rate) = ("B", $size / $delta_time);
### LWP.
# Usage: &getURL($url, [$post]);
+# TODO: rename this to getHTTP
sub getURL {
my ($url,$post) = @_;
my ($ua,$res,$req);
sub getURLAsFile {
my ($url,$file) = @_;
my ($ua,$res,$req);
+ my $time = time();
- return unless &loadPerlModule("LWP::Simple");
+ unless (&loadPerlModule('LWP::UserAgent')) {
+ &::DEBUG('getURLAsFile: LWP::UserAgent not installed');
+ return;
+ }
-### PROXY NOT SUPPORTED WITH SIMPLE?
-### $ua->proxy('http', $param{'httpProxy'}) if &IsParam("httpProxy");
- my $time = time();
+ $ua = new LWP::UserAgent;
+ $ua->proxy('http', $param{'httpProxy'}) if &IsParam("httpProxy");
+ $req = HTTP::Request->new('GET', $url);
&status("getURLAsFile: getting '$url' as '$file'");
- my $retval = getstore($url, $file);
+ $res = $ua->request($req, $file);
+
my $delta_time = time() - $time;
if ($delta_time) {
my $size = -s $file || 0;
&status("getURLAsFile: Done. ($rate kB/sec)");
}
- return $retval;
+ return $res;
}
1;