summaryrefslogtreecommitdiff
path: root/lib/MaildirIndexer/Server.pm6
diff options
context:
space:
mode:
authordakkar <dakkar@thenautilus.net>2019-12-29 13:24:00 +0000
committerdakkar <dakkar@thenautilus.net>2019-12-29 13:45:21 +0000
commit5b10920b6e38614ceea0cd97031ab48f4f1f9a39 (patch)
tree031a9a787823b6a2913824235a77f86f76a94d88 /lib/MaildirIndexer/Server.pm6
parentit's called `raku` now (diff)
downloadMaildirIndexer-5b10920b6e38614ceea0cd97031ab48f4f1f9a39.tar.gz
MaildirIndexer-5b10920b6e38614ceea0cd97031ab48f4f1f9a39.tar.bz2
MaildirIndexer-5b10920b6e38614ceea0cd97031ab48f4f1f9a39.zip
new module extension
Diffstat (limited to 'lib/MaildirIndexer/Server.pm6')
-rw-r--r--lib/MaildirIndexer/Server.pm633
1 files changed, 0 insertions, 33 deletions
diff --git a/lib/MaildirIndexer/Server.pm6 b/lib/MaildirIndexer/Server.pm6
deleted file mode 100644
index 07dfb4a..0000000
--- a/lib/MaildirIndexer/Server.pm6
+++ /dev/null
@@ -1,33 +0,0 @@
-use v6.d;
-unit class MaildirIndexer::Server;
-use MaildirIndexer::LogTimelineSchema;
-use MaildirIndexer::Parser;
-use MaildirIndexer::Store;
-
-has $.port = 9000;
-has MaildirIndexer::Store $.store is required;
-
-method serve() {
- my $listener = IO::Socket::Async.listen(
- '127.0.0.1',
- $.port,
- :enc<utf8-c8>,
- );
-
- react {
- whenever signal(SIGINT) { exit }
- whenever signal(SIGHUP) {
- $.store.dump();
- }
- whenever $listener -> $conn {
- MaildirIndexer::LogTimelineSchema::Server::Serve.log: {
- LEAVE { $conn.close }
- with parse-email($conn) -> $email {
- with $.store.mailbox-for-email($email) -> $mailbox {
- await $conn.print("$mailbox\x0d\x0a");
- }
- }
- }
- }
- }
-}