]> Sergey Matveev's repositories - public-inbox.git/blobdiff - lib/PublicInbox/LeiRm.pm
lei: simplify common LeiInput users with ->wq1_start
[public-inbox.git] / lib / PublicInbox / LeiRm.pm
index 778fa1de92763a14e49ff2e917048ecc86bb2a37..62423ac9828e7c2ec851f36de0161c08cd2fbaf3 100644 (file)
@@ -10,35 +10,17 @@ use parent qw(PublicInbox::IPC PublicInbox::LeiInput);
 
 sub input_eml_cb { # used by PublicInbox::LeiInput::input_fh
        my ($self, $eml) = @_;
-       $self->{lei}->{sto}->ipc_do('remove_eml', $eml);
-}
-
-sub input_mbox_cb { # MboxReader callback
-       my ($eml, $self) = @_;
-       input_eml_cb($self, $eml);
-}
-
-sub input_net_cb { # callback for ->imap_each, ->nntp_each
-       my (undef, undef, $kw, $eml, $self) = @_; # @_[0,1]: url + uid ignored
-       input_eml_cb($self, $eml);
-}
-
-sub input_maildir_cb {
-       my (undef, $kw, $eml, $self) = @_; # $_[0] $filename ignored
-       input_eml_cb($self, $eml);
+       $self->{lei}->{sto}->wq_do('remove_eml', $eml);
 }
 
 sub lei_rm {
        my ($lei, @inputs) = @_;
        $lei->_lei_store(1)->write_prepare($lei);
        $lei->{opt}->{'in-format'} //= 'eml';
-       my $self = bless { -wq_nr_workers => 1 }, __PACKAGE__;
+       my $self = bless {}, __PACKAGE__;
        $self->prepare_inputs($lei, \@inputs) or return;
-       my ($op_c, $ops) = $lei->workers_start($self, 1);
-       $lei->{wq1} = $self;
        $lei->{-err_type} = 'non-fatal';
-       net_merge_all_done($self) unless $lei->{auth};
-       $lei->wait_wq_events($op_c, $ops);
+       $lei->wq1_start($self);
 }
 
 no warnings 'once';