diff options
author | dakkar <dakkar@thenautilus.net> | 2021-12-30 17:06:35 +0000 |
---|---|---|
committer | dakkar <dakkar@thenautilus.net> | 2021-12-30 17:06:35 +0000 |
commit | d8623278929c620e22cfb943b5724c66e5f5fb91 (patch) | |
tree | 9bb2612b84236360afc07de10d46c547aeca87b5 /lib/App/MediaControl.rakumod | |
parent | fix wrapping (diff) | |
download | media-control-d8623278929c620e22cfb943b5724c66e5f5fb91.tar.gz media-control-d8623278929c620e22cfb943b5724c66e5f5fb91.tar.bz2 media-control-d8623278929c620e22cfb943b5724c66e5f5fb91.zip |
batch inserts!
Diffstat (limited to 'lib/App/MediaControl.rakumod')
-rw-r--r-- | lib/App/MediaControl.rakumod | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/lib/App/MediaControl.rakumod b/lib/App/MediaControl.rakumod index 82dc0dd..442ccb9 100644 --- a/lib/App/MediaControl.rakumod +++ b/lib/App/MediaControl.rakumod @@ -40,6 +40,7 @@ class App::MediaControl { method !start-scan() { my $root = $.config<media><root>; $!db.clear-seen(); + my Supplier $to-add .= new; start react { whenever scan-dir($root) -> $item { when $item ~~ $root {} @@ -54,9 +55,12 @@ class App::MediaControl { } else { my $is-dir = $item.d; - $!db.add-entry(:$path,:$name,:$is-dir); + $to-add.emit(%(:$path,:$name,:$is-dir)); } } + whenever $to-add.Supply.batch(:100elems,:2seconds) -> $items { + $!db.add-entries($items); + } } } |