Class SpoolManager.

Inherits EventHandler

This class periodically attempts to deliver mail from the deliveries table to a smarthost using DeliveryAgent.

Each archiveopteryx process has only one instance of this class, which is created by SpoolManager::setup().

void SpoolManager::deliverNewMessage()

This function is called whenever a new row is added to the deliveries table, and updates the state machine so the message will be delivered soon.

void SpoolManager::reset()

Resets the perishable state of this SpoolManager, i.e. all but the Timer. Provided for convenience.

static void SpoolManager::setup()

Creates a SpoolManager object and a timer to ensure that it's started once (after which it will ensure that it wakes up once in a while). This function expects to be called from ::main().

static void SpoolManager::shutdown()

Causes the spool manager to stop sending mail, at once. Should only be called if we're unable to update a message's "sent" status from "unsent" to "sent" and a loop threatens.

This web page based on source code belonging to The Archiveopteryx Developers. All rights reserved.