=encoding utf8 =head1 NAME Mail::Message::Body::File - body of a message temporarily stored in a file =head1 INHERITANCE Mail::Message::Body::File is a Mail::Message::Body is a Mail::Reporter =head1 SYNOPSIS See Mail::Message::Body =head1 DESCRIPTION The body (content) of a message can be stored in various ways. In this documentation you find the description of extra functionality you have when a message is stored in a file. Storing a whole message is a file is useful when the body is large. Although access through a file is slower, it is saving a lot of memory. Extends L<"DESCRIPTION" in Mail::Message::Body|Mail::Message::Body/"DESCRIPTION">. =head1 OVERLOADED Extends L<"OVERLOADED" in Mail::Message::Body|Mail::Message::Body/"OVERLOADED">. =over 4 =item overload: B<""> Inherited, see L =item overload: B<'==' and '!='> Inherited, see L =item overload: B<@{}> Inherited, see L =item overload: B Inherited, see L =back =head1 METHODS Extends L<"METHODS" in Mail::Message::Body|Mail::Message::Body/"METHODS">. =head2 Constructors Extends L<"Constructors" in Mail::Message::Body|Mail::Message::Body/"Constructors">. =over 4 =item $obj-EB() Inherited, see L =item Mail::Message::Body::File-EB(%options) -Option --Defined in --Default based_on Mail::Message::Body undef charset Mail::Message::Body 'PERL' or checked Mail::Message::Body content_id Mail::Message::Body undef data Mail::Message::Body undef description Mail::Message::Body undef disposition Mail::Message::Body undef eol Mail::Message::Body 'NATIVE' file Mail::Message::Body undef filename Mail::Message::Body undef log Mail::Reporter 'WARNINGS' message Mail::Message::Body undef mime_type Mail::Message::Body 'text/plain' modified Mail::Message::Body trace Mail::Reporter 'WARNINGS' transfer_encoding Mail::Message::Body 'none' =over 2 =item based_on => BODY =item charset => CHARSET|'PERL' =item checked => BOOLEAN =item content_id => STRING =item data => ARRAY-OF-LINES | STRING =item description => STRING|FIELD =item disposition => STRING|FIELD =item eol => 'CR'|'LF'|'CRLF'|'NATIVE' =item file => FILENAME|FILEHANDLE|IOHANDLE =item filename => FILENAME =item log => LEVEL =item message => MESSAGE =item mime_type => STRING|FIELD|MIME =item modified => BOOLEAN =item trace => LEVEL =item transfer_encoding => STRING|FIELD =back =back =head2 Constructing a body Extends L<"Constructing a body" in Mail::Message::Body|Mail::Message::Body/"Constructing a body">. =over 4 =item $obj-EB($messages, %options) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB($components) 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( ['CR'|'LF'|'CRLF'|'NATIVE'] ) Inherited, see L =item $obj-EB(CODE) Inherited, see L =item $obj-EB(%options) Inherited, see L =item $obj-EB($body) Inherited, see L =back =head2 The body Extends L<"The body" in Mail::Message::Body|Mail::Message::Body/"The body">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$message] ) Inherited, see L =item $obj-EB($part) Inherited, see L =back =head2 About the payload Extends L<"About the payload" in Mail::Message::Body|Mail::Message::Body/"About the payload">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB( [BOOLEAN] ) Inherited, see L =item $obj-EB( [STRING|$field] ) Inherited, see L =item $obj-EB( [STRING|$field] ) Inherited, see L =item $obj-EB( [STRING|$field] ) Inherited, see L =item $obj-EB( [$directory] ) 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() Inherited, see L =item $obj-EB( [STRING|$field] ) Inherited, see L =item $obj-EB( [STRING|$field] ) Inherited, see L =back =head2 Access to the payload Extends L<"Access to the payload" in Mail::Message::Body|Mail::Message::Body/"Access to the payload">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$fh] ) Inherited, see L =item $obj-EB($fh) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB(%options) Inherited, see L =back =head2 Internals Extends L<"Internals" in Mail::Message::Body|Mail::Message::Body/"Internals">. =over 4 =item $obj-EB( $name, <$class|$object> ) =item Mail::Message::Body::File-EB( $name, <$class|$object> ) Inherited, see L =item $obj-EB($head) Inherited, see L =item $obj-EB($head) Inherited, see L =item $obj-EB( [$begin, $end] ) Inherited, see L =item $obj-EB($type) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [BOOLEAN] ) Inherited, see L =item $obj-EB( [$distance] ) Inherited, see L =item $obj-EB( $parser, $head, $bodytype, [$chars, [$lines]] ) Inherited, see L =item $obj-EB( [$filename] ) Returns the name of the temporary file which is used to store this body. =back =head2 Error handling Extends L<"Error handling" in Mail::Message::Body|Mail::Message::Body/"Error handling">. =over 4 =item $obj-EB() Inherited, see L =item $obj-EB($object) Inherited, see L =item $obj-EB( [$level]|[$loglevel, $tracelevel]|[$level, $callback] ) =item Mail::Message::Body::File-EB( [$level]|[$loglevel, $tracelevel]|[$level, $callback] ) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$level, [$strings]] ) =item Mail::Message::Body::File-EB( [$level, [$strings]] ) Inherited, see L =item $obj-EB($level) =item Mail::Message::Body::File-EB($level) Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB() Inherited, see L =item $obj-EB( [$level] ) Inherited, see L =item $obj-EB( [$level] ) Inherited, see L =item $obj-EB( [$level] ) Inherited, see L =item $obj-EB() Inherited, see L =back =head2 Cleanup Extends L<"Cleanup" in Mail::Message::Body|Mail::Message::Body/"Cleanup">. =over 4 =item $obj-EB() The temporary file is automatically removed when the body is not required anymore. =back =head1 DETAILS Extends L<"DETAILS" in Mail::Message::Body|Mail::Message::Body/"DETAILS">. =head1 DIAGNOSTICS =over 4 =item Error: Cannot write to temporary body file $filename: $! The message body is to be stored in a temporary file (probably because it is a large body), but for the indicated reason, this file cannot be created. =item Warning: Charset $name is not known The encoding or decoding of a message body encounters a character set which is not understood by Perl's Encode module. =item Warning: No decoder defined for transfer encoding $name. The data (message body) is encoded in a way which is not currently understood, therefore no decoding (or recoding) can take place. =item Warning: No encoder defined for transfer encoding $name. The data (message body) has been decoded, but the required encoding is unknown. The decoded data is returned. =item Error: Package $package does not implement $method. Fatal error: the specific package (or one of its superclasses) does not implement this method where it should. This message means that some other related classes do implement this method however the class at hand does not. Probably you should investigate this and probably inform the author of the package. =item Error: Unable to read file $filename for message body file: $! A L object is to be created from a named file, but it is impossible to read that file to retrieve the lines within. Therefore, no copy to a temporary file can be made. =item Warning: Unknown line terminator $eol ignored =back =head1 SEE ALSO This module is part of Mail-Message distribution version 3.012, built on February 11, 2022. Website: F =head1 LICENSE Copyrights 2001-2022 by [Mark Overmeer ]. For other contributors see ChangeLog. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. See F