diff options
Diffstat (limited to 'deno/mail-relay/dovecot.ts')
-rw-r--r-- | deno/mail-relay/dovecot.ts | 20 |
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."); } } |