summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2019-12-27 16:05:49 +0000
committerdakkar <dakkar@thenautilus.net>2019-12-27 16:06:13 +0000
commit95e5ec0fd4fe71477bb2c0fdc7307c7423a3e825 (patch)
tree14df228b61dd10318191e8b93668691b509e6907
parentmore address tests (diff)
downloadMaildirIndexer-95e5ec0fd4fe71477bb2c0fdc7307c7423a3e825.tar.gz
MaildirIndexer-95e5ec0fd4fe71477bb2c0fdc7307c7423a3e825.tar.bz2
MaildirIndexer-95e5ec0fd4fe71477bb2c0fdc7307c7423a3e825.zip
move scan-dir out of Store
-rw-r--r--bayes4
-rw-r--r--lib/MaildirIndexer/Store.pm68
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);
}