1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168
|
=head1 NAME
Mail::Server::IMAP4::Fetch - message info for IMAP protocol speed-up
=head1 SYNOPSIS
my $imap = Mail::Server::IMAP4::Fetch->new($msg);
print $imap->fetchBody(1); # for FETCH BODYSTRUCTURE
print $imap->fetchBody; # for FETCH BODY
print $imap->fetchEnvelope; # for FETCH ENVELOPE
print $imap->fetchSize;
=head1 DESCRIPTION
Create a new object hierarchy, which contains information to capture
the most important details about the message. The object can be used
to speed-up IMAP-server implementations, as L<Mail::Box::Netzwert>.
The object used here is a simplified representation of a
L<Mail::Box::Message|Mail::Box::Message> object. It does not maintain headers and does
not refer to the folder. It only works with messages stored in a file.
Therefore, this object can be frozen by L<Storable> if you want to.
=head1 METHODS
=head2 Constructors
Mail::Server::IMAP4::Fetch-E<gt>B<new>(MESSAGE|PART, OPTIONS)
=over 4
Option --Defined in--Default
md5checksums 0
. md5checksums BOOLEAN
=back
=head2 Attributes
$obj-E<gt>B<bodyLocation>
=over 4
=back
$obj-E<gt>B<headLocation>
=over 4
=back
$obj-E<gt>B<partLocation>
=over 4
=back
=head2 IMAP Commands
$obj-E<gt>B<fetchBody>(EXTENDED)
=over 4
Returns one string, representing the message's structure as defined by
the IMAP protocol. The boolean argument indicates whether you like to
have the EXTENDED information, as the imap command 'FETCH BODYSTRUCTURE'
defines or the limited information of 'FETCH BODY'.
=back
$obj-E<gt>B<fetchEnvelope>
=over 4
Returns a string representation of some header information.
=back
$obj-E<gt>B<fetchSize>
=over 4
Returns the size of the message body.
=back
$obj-E<gt>B<part>([PARTNR])
=over 4
The partnummer is a list of dot-separated positive integers, numbering
(nested) parts in multi-part message bodies. By default, the info of
the main message is returned.
I<Example:>
my $partinfo = $msg->info->part('1.2.1');
print $msg->info->part('3.3')->fetchBody;
=back
$obj-E<gt>B<printStructure>([FILEHANDLE|undef, [NUMBER]])
=over 4
Print the structure of the fetch data to the specified FILEHANDLE or the
selected filehandle. When explicitly C<undef> is specified as handle,
then the output will be returned as string.
Only a limited set of the information is displayed.
I<Example:>
my $imap = ...;
$imap->printStructure(\*OUTPUT);
$imap->printStructure;
my $struct = $imap->printStructure(undef);
=back
=head2 Internals
=head1 DETAILS
See
=over 4
=item RFC2060: "Internet Message Access Protocol IMAP4v1" section 7.4.2
=item RFC2045: "MIME Part One: Format of Internet Message Bodies".
=back
=head1 REFERENCES
See the MailBox website at L<http://perl.overmeer.net/mailbox/> for more details.
=head1 COPYRIGHTS
Distribution version 2.068.
Written by Mark Overmeer (mark@overmeer.net). See the ChangeLog for
other contributors.
Copyright (c) 2001-2006 by the author(s). All rights reserved.
This program is free software; you can redistribute it and/or modify it
under the same terms as Perl itself.
|