#!/usr/bin/perl -w
######################################################################
# (c) Michael Schilli 1999
######################################################################
###############################################################
# uachunk.pl URL localfile - Datei happenweise holen.
###############################################################
use LWP::UserAgent;            # WWW-Zugriffe
$| = 1;                        # STDOUT-Ausgabe nicht puffern

($url, $localfile) = @ARGV;    # Kommandozeile analysieren
$#ARGV == 1 || usage("Wrong argument count");

$ua  = new LWP::UserAgent;     # UserAgent und Request erzeugen
$req = HTTP::Request->new('GET', $url);

open(FILE, ">$localfile") || usage("Cannot open '$localfile'");

$response = $ua->request($req, 
                 sub { $data = shift;           # Happen
                       $total += length($data); # Bytes soweit
                       print FILE $data;        # -> Datei
                       print "\r$total";        # -> Anzeige
                     }, 
                 1000);       # 1000er-Schritte
close(FILE);

die $response->as_string() if $response->is_error();

###############################################################
sub usage {
###############################################################
    ($prog = $0) =~ s#.*/##;

    print "$prog: @_\n";
    print "usage: $prog URL localfile\n";
    exit 0;
}
