Class EventMap.

Inherits EventHandler

The EventMap class describes what notifications are desired for a particular combination of event and mailbox(es). In principle notification for events can be toggled, but for some, a more complex setter/fetcher exists.

EventMap doesn't actually do anything. It serves only to hold the desired settings.

Most of the design is determined by RFC 5423 and RFC 5465.


Constructs an empty message event map.

Reimplements EventHandler::EventHandler().

void EventMap::add( EventFilterSpec * s )

Adds s to the filter specs in this event map.

EventFilterSpec * EventMap::applicable( Mailbox * mailbox, Mailbox * selected )

Returns a pointer to the EventFilterSpec that applies to mailbox at the moment, or a null pointer if none do.

If selected is non-null, then applicable() assumes that it points to the currently selected mailbox.

List<Mailbox> * EventMap::mailboxes() const

Returns a list of all the mailboxes in this Map. The list may be empty, but is never null. No mailboxes are repeated.

void EventMap::refresh( Transaction * t, User * u )

Refreshes the mailbox lists in each of the filter specs using a subtransaction of t. Does nothing if already active. Uses u to interpret e.g. Inboxes.

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