HTTP-Tiny-Bandwidth
view release on metacpan or search on metacpan
lib/HTTP/Tiny/Bandwidth.pm view on Meta::CPAN
if ($args->{content_file} || $args->{content_fh}) {
my $fh = $args->{content_fh};
unless ($fh) {
my $file = $args->{content_file};
open $fh, "<", $file or Carp::croak("Error: Could not open $file: $!");
binmode $fh;
}
my $upload_limit_bps = $args->{upload_limit_bps};
$args->{content} = $self->_upload_data_callback($fh, $upload_limit_bps);
($args->{headers} ||= +{})->{'content-length'} = -s $fh;
# XXX set content-type via Plack::MIME?
}
my $set_bandwidth_data_callback;
my ($download_content, $download_content_fh);
if (my $download_limit_bps = $args->{download_limit_bps}) {
if ($args->{data_callback}) {
Carp::croak("Error: Can not specify both download_limit_bps "
. "and data_callback at the same time");
}
open $download_content_fh, ">", \$download_content;
( run in 0.714 second using v1.01-cache-2.11-cpan-524268b4103 )