Class RetentionSelector.

Inherits EventHandler

The RetentionSelector class makes a Selector based on the retention_policies table, and produces queries to do what retention demands.

Somewhat slow, perhaps. We'll have to add some caching so we don't select on retention_policies all the time.

RetentionSelector::RetentionSelector( Mailbox * m, EventHandler * h )

Constructs a retention selector to find the messages in m that should be retained, and notifies h once done().

Once execute() has been called and done() returns true, retains() and deletes() return a selector expressing those policies.

The selector may be ready after the first execute(). In that case h is not notified separately.

RetentionSelector::RetentionSelector( Transaction * t, EventHandler * h )

Constructs a RetentionSelector to cook up the giant 'insert into deleted_messages' query aox vacuum needs, using t. Will notify() h when done(). You have to call execute() once.

Selector * RetentionSelector::deletes()

Returns a pointer to the Selector that will match all messages that need to be deleted, or 0 if there is no applicable retention policy.

Selector::simplify() has not been called.

bool RetentionSelector::done()

Returns true if the object is done, false if it's still working.

Selector * RetentionSelector::retains()

Returns a pointer to the Selector that will match all messages that need to be retained, or 0 if there is no applicable retention policy.

Selector::simplify() has not been called.

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