Inherits Garbage
The DSN class builds a bounce (a well-formed DSN message) based on a Message and other data. It's a typical single-function class: Call setMessage() and more, then call result(), then discard the DSN.
Constructs an empty DSN message, for nothing, sent to noone, etc.
Reimplements Garbage::Garbage().
Records that message() should be/was/was not delivered to r.
Returns true if delivery to all recipients() failed, and false in any other case.
If there aren't any recipients(), this function returns true.
Returns true if all recipients() were delivered successfully, and false in any other case.
If there aren't any recipients(), this function returns true.
Recipient::Delivered, Recipient::Relayed and Recipient::Expanded are considered to indicate success.
Returns the arrival date of message(), or a null pointer if the date isn't known.
Returns true if delivery to some of the recipients() is still pending (i.e. their Recipient::action() is either Unknown or Delayed), and false if they have all been completed.
Computes and returns the DSN bodypart.
Returns the envelope-id recorded by setEnvelopeId(), or a null string if none has been recorded.
Returns whatever setFullReport() set.
Returns the value recorded by setMessage(), or a null pointer if setMessage() has not been called.
Returns the body text for this bounce's plain-text body.
Returns the name of the MTA that sent us message(), or an empty string if none did or we don't know who did.
Returns a list of the recipients for message(). The return value may point to an empty list, but is never a null pointer.
Generates a multipart/report for message(), recipients() etc. and returns a pointer to the generated Message object.
If you call this twice, you get two Message objets, each generated with much effort.
Reports the date of the result(), or 0 if result() will use the current date and time.
Returns whatever setSender() set. If setSender() has not been called (or was called with a null pointer as argument), sender() looks for a Return-Path field in message(). If all else fails, sender() returns a null pointer.
Records that message() was received at date. The initial value, null, means that the message wasn't received at any known date.
Records that the envelope-id (see RFC 3461) of this delivery is envid.
Records that the resulting DSN should include the entire message() if full is true, and just its top-level header if full is false. The initial value is true (this may change in a future version).
Records that the message which bounced (or was delivered) is m.
Records that message() was received from mta. The initial value, an empty string, means that message() was received from some unknown origin, or wasn't really received at all.
Makes subsequent calls to result() generate a message dated date. If this function isn't called, result() uses the current date and time.
Records that message() was sent by address.
Returns true if this DSN object has all information it needs to construct a valid DSN, and false if not. If valid() returns false, the results of dsnBody() and message() are essentially undefined.
This web page based on source code belonging to Oryx Mail Systems GmbH. All rights reserved.