=encoding utf8 =head1 NAME Mail::Box::Message::Destructed - a destructed message =head1 INHERITANCE Mail::Box::Message::Destructed is a Mail::Box::Message is a Mail::Message is a Mail::Reporter =head1 SYNOPSIS $folder->message(3)->destruct; =head1 DESCRIPTION When a message folder is read, each message will be parsed into Perl structures. Especially the header structure can consume a huge amount of memory (message bodies can be moved to external temporary files). Destructed messages have forcefully cleaned-up all header and body information, and are therefore much smaller. Some useful information is still in the object. BE WARNED: once a message is destructed, it cannot be revived. Destructing enforces irreversable deletion from the folder. If you have a folder opened for read-only, the message will stay in that folder, but otherwise it may be deleted. Extends L<"DESCRIPTION" in Mail::Box::Message|Mail::Box::Message/"DESCRIPTION">. =head1 METHODS Extends L<"METHODS" in Mail::Box::Message|Mail::Box::Message/"METHODS">. =head2 Constructors Extends L<"Constructors" in Mail::Box::Message|Mail::Box::Message/"Constructors">. =over 4 =item $obj-EB(%options) Inherited, see L =item Mail::Box::Message::Destructed-EB($message_id, %options) You cannot instantiate a destructed message object. Destruction is done by calling L. -Option --Defined in --Default body Mail::Message undef body_type Mail::Box::Message deleted Mail::Message field_type Mail::Message undef folder Mail::Box::Message head Mail::Message undef head_type Mail::Message Mail::Message::Head::Complete labels Mail::Message {} log Mail::Reporter 'WARNINGS' messageId Mail::Message undef modified Mail::Message size Mail::Box::Message undef trace Mail::Reporter 'WARNINGS' trusted Mail::Message =over 2 =item body => OBJECT =item body_type => CODE|CLASS =item deleted => BOOLEAN =item field_type => CLASS =item folder => FOLDER =item head => OBJECT =item head_type => CLASS =item labels => ARRAY|HASH =item log => LEVEL =item messageId => STRING =item modified => BOOLEAN =item size => INTEGER =item trace => LEVEL =item trusted => BOOLEAN =back =back =head2 Constructing a message Extends L<"Constructing a message" in Mail::Box::Message|Mail::Box::Message/"Constructing a message">. =over 4 =item $obj-EB( [<$rg_object|%options>] ) Inherited, see L =item Mail::Box::Message::Destructed-EB( [$message|$part|$body], $content ) Inherited, see L =item Mail::Box::Message::Destructed-EB($body, [$head], $headers) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB(STRING) Inherited, see L =item Mail::Box::Message::Destructed-EB($fh|STRING|SCALAR|ARRAY, %options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB( [STRING|$field|$address|ARRAY-$of-$things] ) Inherited, see L =item $obj-EB(STRING) =item Mail::Box::Message::Destructed-EB(STRING) Inherited, see L =back =head2 The message Extends L<"The message" in Mail::Box::Message|Mail::Box::Message/"The message">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB($folder, %options) Inherited, see L =item $obj-EB( [$folder] ) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB($folder, %options) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$fh] ) Inherited, see L =item $obj-EB( [$mailer], %options ) Inherited, see L =item $obj-EB( [$integer] ) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$fh] ) Inherited, see L =back =head2 The header Extends L<"The header" in Mail::Box::Message|Mail::Box::Message/"The header">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB($fieldname) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$head] ) When C is specified for $head, no change has to take place and the method returns silently. In all other cases, this method will complain that the header has been removed. =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB($fieldname) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =back =head2 The body Extends L<"The body" in Mail::Box::Message|Mail::Box::Message/"The body">. =over 4 =item $obj-EB( [$body] ) When C is specified for $body, no change has to take place and the method returns silently. In all other cases, this method will complain that the body data has been removed. =item $obj-EB() Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [<'ALL'|'ACTIVE'|'DELETED'|'RECURSE'|$filter>] ) Inherited, see L =back =head2 Flags Extends L<"Flags" in Mail::Box::Message|Mail::Box::Message/"Flags">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB( [BOOLEAN] ) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB