From 95e5ec0fd4fe71477bb2c0fdc7307c7423a3e825 Mon Sep 17 00:00:00 2001 From: dakkar Date: Fri, 27 Dec 2019 16:05:49 +0000 Subject: move scan-dir out of Store --- bayes | 4 +++- lib/MaildirIndexer/Store.pm6 | 8 ++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/bayes b/bayes index 0bb9d3e..a99a3e9 100644 --- a/bayes +++ b/bayes @@ -1,13 +1,15 @@ #!/usr/bin/env perl6 use v6.d.PREVIEW; use lib 'lib'; +use MaildirIndexer::ScanDir; use MaildirIndexer::Store; use MaildirIndexer::Server; use MaildirIndexer::Index::ByRef; sub MAIN($maildir) { + my $file-channel = scan-dir($maildir).Channel; my $store = MaildirIndexer::Store.new( - :$maildir, + :$file-channel, indices => MaildirIndexer::Index::ByRef.new, ); diff --git a/lib/MaildirIndexer/Store.pm6 b/lib/MaildirIndexer/Store.pm6 index 5c95250..e1f2c5e 100644 --- a/lib/MaildirIndexer/Store.pm6 +++ b/lib/MaildirIndexer/Store.pm6 @@ -1,12 +1,11 @@ use v6.d; unit class MaildirIndexer::Store; use MaildirIndexer::Index; -use MaildirIndexer::ScanDir; use MaildirIndexer::Parser; has Lock $!lock .= new; has MaildirIndexer::Index @.indices is required; -has Str $.maildir is required; +has Channel $.file-channel is required; has Int $.workers = 10; method dump() { @@ -16,12 +15,9 @@ method dump() { } method start() { - my $file-supply = scan-dir($.maildir); - my $file-channel = $file-supply.Channel; - for ^10 { start react { - whenever $file-channel -> $file { + whenever $.file-channel -> $file { if $file.e && $file.f { self.add-file($file); } -- cgit v1.2.3