From 0220dff6e54106304aab50004191d4236da2cc25 Mon Sep 17 00:00:00 2001 From: Kovensky Date: Tue, 20 Oct 2009 20:02:32 -0300 Subject: [PATCH] Cosmetics --- emiya.pl | 60 ++++++++++++++++++++++++++++++------------------------------ 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/emiya.pl b/emiya.pl index de8e691..4047988 100644 --- a/emiya.pl +++ b/emiya.pl @@ -289,14 +289,14 @@ POE::Session->create( $_[KERNEL]->post('ua', 'request', 'stream_latest_files', $req, $reqid++, 'progress'); }, progress => sub { - my $msg = $_[HEAP]->{progress_message}; - my ($done, $left) = @{$_[ARG1]}[0,1]; + my ($heap, $done, $left) = ($_[HEAP], @{$_[ARG1]}[0,1]); + my $msg = $heap->{progress_message}; myprint (sprintf("%3.2f%%\r$msg ", $done * 100 / $left)); myprint ("\n") if $done == $left; }, # Puts the HTML in a temporary var stream_latest_files => sub { - my ($heap, $res, $data) = ($_[HEAP], @{$_[ARG1]}); + my ($kernel, $session, $heap, $res, $data) = (@_[KERNEL, SESSION, HEAP], @{$_[ARG1]}); die $res->status_line unless ($res->is_success); @@ -304,9 +304,9 @@ POE::Session->create( $heap->{latest_files_data} = "" unless exists $heap->{latest_files_data}; $heap->{latest_files_data} .= $data; } else { - $_[KERNEL]->call($_[SESSION], 'parse_latest_files'); - $_[KERNEL]->yield('load_completed_files'); - $_[KERNEL]->yield('filter_files'); + $kernel->call($session, 'parse_latest_files'); + $kernel->yield('load_completed_files'); + $kernel->yield('filter_files'); } }, # Parses the HTML, puts hashrefs in $_[HEAP]->{latest_files} @@ -364,7 +364,7 @@ POE::Session->create( filter_files => sub { # TODO: allow filtering by batch contents (subfolders) # TODO: allow filtering by min / max filesize - my $heap = $_[HEAP]; + my ($kernel, $heap) = @_[KERNEL, HEAP]; $heap->{allowed_files} = []; my $skip; my $filecount = scalar(@{$heap->{latest_files}}); @@ -403,9 +403,9 @@ POE::Session->create( push @{$heap->{allowed_files}}, $info if $allowed; } delete $heap->{latest_files}; - $_[KERNEL]->yield('sort_allowed_files'); - $_[KERNEL]->yield('print_allowed_files'); - $_[KERNEL]->yield('download_entries'); + $kernel->yield('sort_allowed_files'); + $kernel->yield('print_allowed_files'); + $kernel->yield('download_entries'); }, sort_allowed_files => sub { # TODO: actually sort them @@ -425,27 +425,27 @@ POE::Session->create( my $info = pop @{$heap->{allowed_files}}; if ($info) { if ($info->{url} =~ /\/$/) { - $kernel->call($session, 'start_download_recursive', $info); + $kernel->call($session, 'subfolder_recurse', $info); } else { $kernel->call($session, 'download_file', $info); } } }, # Downloads folder listings - start_download_recursive => sub { + subfolder_recurse => sub { # TODO: write the folder name to completed_files.txt after getting all files # and skip if the folder name is found - my $info = $_[ARG0]; + my ($kernel, $heap, $info) = @_[HEAP, KERNEL, ARG0]; my $req = HTTP::Request->new(GET => $info->{url}); - $_[HEAP]->{info} = $info; - $_[HEAP]->{progress_message} = "Listing \"". $info->{title} ."/\":"; - $_[KERNEL]->call('ua', 'request', 'stream_subfolder', $req, $reqid++, 'progress'); - while (defined $_[HEAP]->{info}) { $_[KERNEL]->run_one_timeslice(); } - $_[KERNEL]->yield('download_entries'); + $heap->{info} = $info; + $heap->{progress_message} = "Listing \"". $info->{title} ."/\":"; + $kernel->call('ua', 'request', 'stream_subfolder', $req, $reqid++, 'progress'); + while (defined $heap->{info}) { $kernel->run_one_timeslice(); } + $kernel->yield('download_entries'); }, stream_subfolder => sub { - my ($heap, $res, $data) = ($_[HEAP], @{$_[ARG1]}); + my ($kernel, $heap, $res, $data) = (@_[KERNEL, HEAP], @{$_[ARG1]}); my $info = $heap->{info}; die $res->status_line unless ($res->is_success); @@ -455,13 +455,13 @@ POE::Session->create( $heap->{"folder-" . md5_hex($info->{title})} = "" unless exists $heap->{"folder-" . md5_hex($info->{title})}; $heap->{"folder-" . md5_hex($info->{title})} .= $data; } else { - $_[KERNEL]->yield('download_recursive'); + $kernel->yield('subfolder_parse'); } }, # Parses folder listings, pushes subitems to allowed_files, folders last # This makes subfolders be checked before files - download_recursive => sub { - my ($heap) = $_[HEAP]; + subfolder_parse => sub { + my $heap = $_[HEAP]; my $info = $heap->{info}; my @lines = split m/\n/, $heap->{"folder-" . md5_hex($info->{title})}; @@ -565,8 +565,8 @@ POE::Session->create( $heap->{start_time} = time; $heap->{len} = 0; $heap->{oct} = 0; - $_[KERNEL]->delay('calculate_speed' => 2); - $_[KERNEL]->call('ua', 'request', 'stream_file', $req, $reqid++, 'file_progress'); + $kernel->delay('calculate_speed' => 2); + $kernel->call('ua', 'request', 'stream_file', $req, $reqid++, 'file_progress'); }, # Does the actual file downloading stream_file => sub { @@ -603,11 +603,11 @@ POE::Session->create( } }, calculate_speed => sub { - my $heap = $_[HEAP]; + my ($kernel, $heap) = @_[KERNEL, HEAP]; my $now = time; if ($now == $heap->{last_time}) { - $_[KERNEL]->delay('calculate_speed' => 0.5); + $kernel->delay('calculate_speed' => 0.5); return; } my $spd = $heap->{oct} / 1024 / ($now - $heap->{last_time}); @@ -625,7 +625,7 @@ POE::Session->create( $heap->{spd} /= @{$heap->{speeds}}; $heap->{last_time} = time; - $_[KERNEL]->delay('calculate_speed' => 0.5); + $kernel->delay('calculate_speed' => 0.5); }, calculate_avg_speed => sub { my $heap = $_[HEAP]; @@ -635,10 +635,10 @@ POE::Session->create( }, # Prints the progress report file_progress => sub { - my ($heap, $pos, $len, $oct) = ($_[HEAP], @{$_[ARG1]}); + my ($kernel, $heap, $pos, $len, $oct) = (@_[KERNEL, HEAP], @{$_[ARG1]}); if ($pos eq $len) { - $_[KERNEL]->call($_[SESSION], 'calculate_avg_speed'); + $kernel->call($_[SESSION], 'calculate_avg_speed'); my $line = sprintf("100.00%% (avg. %4.2f kB/s)", $heap->{spd}); myprint("\r" . $heap->{progress_message} . " $line" . (" " x ($heap->{prevlen} - length($line))) . "\n"); delete $heap->{have_size}; @@ -647,7 +647,7 @@ POE::Session->create( delete $heap->{spd}; delete $heap->{speeds}; $heap->{speeds_i} = 0; - $_[KERNEL]->delay('calculate_speed'); + $kernel->delay('calculate_speed'); } else { my $have_size = exists $heap->{have_size} ? $heap->{have_size} : 0; -- 2.11.4.GIT