Implements the base class for MIME message parts.
TIdMessagePart = class(TCollectionItem)
TIdMessagePart is a TCollectionItem descendant that encapsulates a MIME message part. TIdMessagePart is the ancestor class for common MIME message parts like TIdText
. TIdMessagePart is also the collection item added to the TIdMessageParts
TIdMessagePart provides methods and properties common to all MIME message parts, including properties that represent values from Internet Message headers.
Character sequence that delimits the message part.
property Boundary: String;
Boundary is a String property that contains the character sequence that delimits the message part in an Internet Message. Boundary applies to message parts where the ContentType
Boundary marks the beginning of each message part in the file, and also follows the final message part in the message. Boundary contains the character sequence that follows the mandatory boundary marker prefix "--".
Indicates that a boundary marker appears at the beginning of the message part.
property BoundaryBegin: Boolean;
BoundaryBegin is a Boolean property that indicates that a boundary marker appears at the beginning of the message part. BoundaryBegin is used and updated when the message part is received by a message client.
Indicates that a boundary marker appears at the end of the message part.
property BoundaryEnd: Boolean;
BoundaryEnd is a Boolean property that indicates that a boundary marker appears at the end of the message part. BoundaryEnd is used and updated when the message part is received by a message client.
Identifies the encoding scheme for the message part.
property ContentTransfer: string;
ContentTransfer is a String property that identifies the encoding scheme for the message part. ContentTransfer contains the value from the Internet Message header "Content-Transfer-Encoding:".
ContentTransfer contains a token that identifies the encoding transformations performed for the message part or the domain for the result. ContentTransfer normally contains one of the following values:
The Content-Transfer-Encoding values "7bit", "8bit", and "binary" all indicate that NO encoding transformation has been performed. The quoted-printable and base64 encodings transform their input into values using "7bit" representation.
Note: The five values defined for the ContentTransfer imply nothing about the ContentType other than the algorithm by which it was encoded or the transport system requirements when UU-encoded.
Note: ContentTransfer is not case sensitive -- "Base64", "BASE64" and "bAsE64" are all equivalent.
Identifies the MIME media type for the message.
property ContentType: string;
ContentType is a String property that specifies the MIME media type for the message. Use ContentTransfer
to identify the encoding scheme for the message.
Represents message header without property storage.
ExtraHeaders is a TIdHeaderList
property that represents headers from the Internet Message that do not have corresponding properties to represent their values in the object instance.
Represents message headers in native form.
Headers is a read-only TIdHeaderList
property used to represent the headers for the Internet Message in NAME=VALUE form.
Indicates that the body for the message part is MIME-encoded.
property IsEncoded: Boolean;
IsEncoded is a read-only Boolean property that indicates the body of the message part is stored in MIME-encoded form. IsEncoded normally reflects that the body contains a graphic image, or BASE64- or QUOTED-PRINTABLE-encoded value.
Identifies the temporary storage file for the message part.
property StoredPathName: TFileName;
StoredPathName is a TFilename property that represents the file used to store the message part. StoredPathName can contain a temporary path and file name if the message part represents an attachment without a ContentDisposition header specifying a suggested file name.
Copy the property values from another object.
procedure Assign(Source: TPersistent); override;
Object instance containing values to be copied.
Assign is a procedure used to copy the property values from the object specified in Source to the current collection item instance. When the ClassType for Source is the same as the current object, Assign will copy the following property values:
When the ClassType for Source is not the same as the current object, Assign calls the inherited Assign method.
Constructor for the collection item.
constructor Create(Collection: TCollection); override;
Owner of the collection item.
Create is the constructor for the collection item, and simply raises an exception saying that a TIdMessagePart
instance cannot be created and added to the collection. Use a TIdMessagePart
descendant to override this constructor with parameters to add items to a TIdMessageParts
Frees the object instance.
destructor Destroy; override;
Destroy is the destructor for the object instance. Destroy is responsible for freeing and releasing resources allocated to the Headers
properties. Destroy calls the inherited destructor prior to exiting from the method.
Event handler for retrieving a message part from a stream.
Stream containing the content for the message part.
OnGetMessagePartStream is a TOnGetMessagePartStream
event handler used to respond to the notification that a message part is available to be read from AStream.
An application must assign a procedure to OnGetMessagePartStream to allow a response to the event notification.