aboutsummaryrefslogtreecommitdiff
path: root/deno/mail-relay/dovecot.ts
diff options
context:
space:
mode:
Diffstat (limited to 'deno/mail-relay/dovecot.ts')
-rw-r--r--deno/mail-relay/dovecot.ts20
1 files changed, 12 insertions, 8 deletions
diff --git a/deno/mail-relay/dovecot.ts b/deno/mail-relay/dovecot.ts
index 124a82b..bace225 100644
--- a/deno/mail-relay/dovecot.ts
+++ b/deno/mail-relay/dovecot.ts
@@ -1,15 +1,17 @@
import { basename } from "@std/path";
-import { Logger } from "@crupest/base/log";
+import { LogFileProvider } from "@crupest/base/log";
import { Mail, MailDeliverContext, MailDeliverer } from "./mail.ts";
export class DovecotMailDeliverer extends MailDeliverer {
readonly name = "dovecot";
+ readonly #logFileProvider;
readonly #ldaPath;
- constructor(logger: Logger, ldaPath: string) {
- super(logger);
+ constructor(logFileProvider: LogFileProvider, ldaPath: string) {
+ super();
+ this.#logFileProvider = logFileProvider;
this.#ldaPath = ldaPath;
}
@@ -29,12 +31,12 @@ export class DovecotMailDeliverer extends MailDeliverer {
return;
}
- this.logger.info(`Deliver to dovecot users: ${recipients.join(", ")}.`);
+ console.info(`Deliver to dovecot users: ${recipients.join(", ")}.`);
for (const recipient of recipients) {
try {
const commandArgs = ["-d", recipient];
- this.logger.info(`Run ${ldaBinName} ${commandArgs.join(" ")}...`);
+ console.info(`Run ${ldaBinName} ${commandArgs.join(" ")}...`);
const ldaCommand = new Deno.Command(ldaPath, {
args: commandArgs,
@@ -44,8 +46,10 @@ export class DovecotMailDeliverer extends MailDeliverer {
});
const ldaProcess = ldaCommand.spawn();
- using logFiles =
- await this.logger.createExternalLogStreamsForProgram(ldaBinName);
+ using logFiles = await this.#logFileProvider
+ .createExternalLogStreamsForProgram(
+ ldaBinName,
+ );
ldaProcess.stdout.pipeTo(logFiles.stdout);
ldaProcess.stderr.pipeTo(logFiles.stderr);
@@ -90,6 +94,6 @@ export class DovecotMailDeliverer extends MailDeliverer {
}
}
- this.logger.info("Done handling all recipients.");
+ console.info("Done handling all recipients.");
}
}