Poco::Net

class MultipartSource

Library: Net
Package: Mail
Header: Poco/Net/MailMessage.h

Description

This is a PartSource for constructing complex mail messages consisting of multiple nested parts.

Inheritance

Direct Base Classes: PartSource

All Base Classes: PartSource

Member Summary

Member Functions: addPart, contentTypeWithBoundary, stream

Inherited Functions: filename, getContentLength, headers, mediaType, stream

Constructors

MultipartSource

explicit MultipartSource(
    const std::string contentType = "multipart/alternative"
);

Creates an empty MultipartSource.

At least one part must be added with addPart().

Destructor

~MultipartSource virtual

~MultipartSource();

Destroys the MultipartSource.

Member Functions

addPart

void addPart(
    const std::string & name,
    PartSource * pSource,
    MailMessage::ContentDisposition disposition,
    MailMessage::ContentTransferEncoding encoding
);

Adds a part/attachment to the MultipartSource.

The MultipartSource takes ownership of the PartSource and deletes it when it is no longer needed.

The part name, and the filename specified in the part source must not contain any non-ASCII characters. To include non-ASCII characters in the part name or filename, use RFC 2047 word encoding (see encodeWord()).

stream virtual

std::istream & stream();

contentTypeWithBoundary protected static

static std::string contentTypeWithBoundary(
    const std::string & contentType
);