Mime::MultiPartMixedMessage Class Reference

implements the MultiPartMixedMessage class, a specialization of MultiPartMessage More...

Inheritance diagram for Mime::MultiPartMixedMessage:
[legend]

## Public Member Functions

| addEncodePart (data mime_data, string enc, string content_type=MimeTypeText, string disp='inline', *hash< auto > hdr)
| adds a message part to the end of the list; encodes the data according to the transfer encoding argument passed More...
| addPart (data mime_data, string content_type=MimeTypeText, string disp='inline', *hash< auto > hdr)
| adds a message part to the end of the list; the data muyst already be encoded and any Content-Transfer-Encoding header must already be present in hdr More...
| constructor (string boundary=MultiPartMessage::getBoundary())
| creates the object More...
hash< MessageInfo > | getMsgAndHeaders ()
| returns a hash of the message More...
| spliceEncodePart (data mime_data, string enc, string content_type=MimeTypeText, string disp='inline', *hash< auto > hdr)
| adds a message part to the start of the list; encodes the data according to the transfer encoding argument passed More...
| splicePart (data mime_data, string content_type=MimeTypeText, string disp='inline', *hash< auto > hdr)
| adds a message part to the start of the list; the data muyst already be encoded and any Content-Transfer-Encoding header must already be present in hdr More...
Public Member Functions inherited from Mime::MultiPartMessage
| constructor (string mptype, string boundary=MultiPartMessage::getBoundary())
| creates the object More...
string | getBoundary ()
| returns the message boundary string used More...
binary | serialize ()
| serializes the message with the Content-Type header first and returns a binary object ready to send over a socket
binary | serializeBody ()
| serializes the message body only and returns a binary object ready to send over a socket More...
int | size ()
| returns the number of parts in the message More...

## Additional Inherited Members

Static Public Member Functions inherited from Mime::MultiPartMessage
static string | getBoundary ()
| returns a string embedded with the current timestamp designed to be used as MultiPart boundary string
static string | getRandomString (int len)
| returns a string of random characters More...
static hash< MessageInfo > | parseBody (string boundary, data body, bool decode=True)
| returns a hash representing a parsed multipart message body from a boundary string and body arguments More...
static binary | serializeHeaders (hash hdr)
| serializes a header hash to a binary object More...

## Detailed Description

implements the MultiPartMixedMessage class, a specialization of MultiPartMessage

## Member Function Documentation

## addEncodePart()

Mime::MultiPartMixedMessage::addEncodePart | ( | data | mime_data,
|  | string | enc,
|  | string | content_type = `MimeTypeText`,
|  | string | disp = `'inline'`,
|  | *hash< auto > | hdr
| ) |  |

adds a message part to the end of the list; encodes the data according to the transfer encoding argument passed

Parameters

  mime_data | the unencoded data for the part
  enc | the transfer encoding to use for the part; see MIME Content Transfer Encoding Constants for possible values
  content_type | the content_type for the part
  disp | the Content-Disposition header (ex: `'inline'`, `'attachment`; filename="file.txt"')
  hdr | an optional hash of headers for the part

Exceptions

  MIME-TRANSFER-ENCODING-ERROR | unknown transfer encoding
  PART-ERROR | empty content type argument passed

See also
  - MultiPartMixedMessage::addPart()
  - MultiPartMixedMessage::splicePart()
  - MultiPartMixedMessage::spliceEncodePart()

## addPart()

Mime::MultiPartMixedMessage::addPart | ( | data | mime_data,
|  | string | content_type = `MimeTypeText`,
|  | string | disp = `'inline'`,
|  | *hash< auto > | hdr
| ) |  |

adds a message part to the end of the list; the data muyst already be encoded and any Content-Transfer-Encoding header must already be present in hdr

Parameters

  mime_data | the data for the part
  content_type | the content_type for the part
  disp | the Content-Disposition header (ex: `'inline'`, `'attachment`; filename="file.txt"')
  hdr | an optional hash of headers for the part

Exceptions

  PART-ERROR | empty content type argument passed

See also
  - MultiPartMixedMessage::splicePart()
  - MultiPartMixedMessage::spliceEncodePart()
  - MultiPartMixedMessage::addEncodePart()

## constructor()

Mime::MultiPartMixedMessage::constructor | ( | string | boundary = `MultiPartMessage::getBoundary()` | ) |

creates the object

Parameters

  boundary | the boundary to use between parts

## getMsgAndHeaders()

hash<MessageInfo> Mime::MultiPartMixedMessage::getMsgAndHeaders | ( |  | ) |

virtual

returns a hash of the message

Returns
  a hash of the message with the following keys:
  - `hdr:` a hash of header information
  - `body:` a binary object of serialized message parts

Implements Mime::MultiPartMessage.

## spliceEncodePart()

Mime::MultiPartMixedMessage::spliceEncodePart | ( | data | mime_data,
|  | string | enc,
|  | string | content_type = `MimeTypeText`,
|  | string | disp = `'inline'`,
|  | *hash< auto > | hdr
| ) |  |

adds a message part to the start of the list; encodes the data according to the transfer encoding argument passed

Parameters

  mime_data | the unencoded data for the part
  enc | the transfer encoding to use for the part; see MIME Content Transfer Encoding Constants for possible values
  content_type | the content_type for the part
  disp | the Content-Disposition header (ex: `'inline'`, `'attachment`; filename="file.txt"')
  hdr | an optional hash of headers for the part

Exceptions

  MIME-TRANSFER-ENCODING-ERROR | unknown transfer encoding
  PART-ERROR | empty content type argument passed

See also
  - MultiPartMixedMessage::splicePart()
  - MultiPartMixedMessage::addPart()
  - MultiPartMixedMessage::addEncodePart()

## splicePart()

Mime::MultiPartMixedMessage::splicePart | ( | data | mime_data,
|  | string | content_type = `MimeTypeText`,
|  | string | disp = `'inline'`,
|  | *hash< auto > | hdr
| ) |  |

adds a message part to the start of the list; the data muyst already be encoded and any Content-Transfer-Encoding header must already be present in hdr

Parameters

  mime_data | the data for the part
  content_type | the content_type for the part
  disp | the Content-Disposition header (ex: `'inline'`, `'attachment`; filename="file.txt"')
  hdr | an optional hash of headers for the part

Exceptions

  PART-ERROR | empty content type argument passed

See also
  - MultiPartMixedMessage::addPart()
  - MultiPartMixedMessage::spliceEncodePart()
  - MultiPartMixedMessage::addEncodePart()