NAME¶
Courriel::Part::Multipart - A part which contains other parts
VERSION¶
version 0.36
SYNOPSIS¶
my $headers = $part->headers();
my $ct = $part->content_type();
for my $subpart ( $part->parts ) { ... }
DESCRIPTION¶
This class represents a multipart email part which contains other parts.
API¶
This class provides the following methods:
Courriel::Part::Multipart->new( ... )¶
This method creates a new part object. It accepts the following parameters:
- •
- parts
An array reference of part objects (either Single or Multipart). This is
required, but could be empty.
- •
- content_type
A Courriel::Header::ContentType object. This defaults to one with a mime
type of "multipart/mixed".
- •
- boundary
The part boundary. If none is provided, a unique value will be
generated.
- •
- preamble
Content that appears before the first part boundary. This will be seen by
email clients that don't understand multipart messages.
- •
- epilogue
Content that appears after the final part boundary. The spec allows for
this, but it's probably not very useful.
- •
- headers
A Courriel::Headers object containing headers for this part.
$part->parts()¶
Returns an array (not a reference) of the parts this part contains.
$part->part_count()¶
Returns the number of parts this part contains.
$part->boundary()¶
Returns the part boundary.
$part->mime_type()¶
Returns the mime type for this part.
$part->content_type()¶
Returns the Courriel::Header::ContentType object for this part.
Returns the Courriel::Headers object for this part.
$part->is_inline(), $part-> is_attachment()¶
These methods always return false, but exist for the sake of providing a
consistent API between Single and Multipart part objects.
$part->is_multipart()¶
Returns true.
$part->preamble()¶
The preamble as passed to the constructor.
$part->epilogue()¶
The epilogue as passed to the constructor.
$part->container()¶
Returns the Courriel or Courriel::Part::Multipart object to which this part
belongs, if any. This is set when the part is added to another object.
$part->stream_to( output => $output )¶
This method will send the stringified part to the specified output. The output
can be a subroutine reference, a filehandle, or an object with a
"print()" method. The output may be sent as a single string, as a
list of strings, or via multiple calls to the output.
See the "as_string()" method for documentation on the
"charset" parameter.
$part->as_string()¶
Returns the part as a string, along with its headers. Lines will be terminated
with "\r\n".
ROLES¶
This class does the "Courriel::Role::Part" and
"Courriel::Role::Streams" roles.
AUTHOR¶
Dave Rolsky <autarch@urth.org>
COPYRIGHT AND LICENSE¶
This software is Copyright (c) 2014 by Dave Rolsky.
This is free software, licensed under:
The Artistic License 2.0 (GPL Compatible)