javax.mail

Class Multipart

Known Direct Subclasses:
MimeMultipart

public abstract class Multipart
extends java.lang.Object

A multipart is a container for multiple body parts.

Some messaging systems provide different subtypes of multiparts. For example, MIME specifies a set of subtypes that include "alternative", "mixed", "related", "parallel", "signed", etc.

Version:
1.4
Author:
Chris Burdess

Field Summary

protected String
contentType
The content-type of this multipart object.
protected Part
parent
The part containing this multipart, if known.
protected Vector
parts
Vector of body parts.

Constructor Summary

Multipart()
Constructor for an empty multipart of type "multipart/mixed".

Method Summary

void
addBodyPart(BodyPart part)
Adds a body part to this multipart.
void
addBodyPart(BodyPart part, int index)
Inserts a body part at the specified index.
BodyPart
getBodyPart(int index)
Get the specified body part.
String
getContentType()
Returns the content-type of this multipart.
int
getCount()
Returns the number of enclosed body parts.
Part
getParent()
Returns the part containing this multipart, or null if not known.
void
removeBodyPart(int index)
Removes the body part at the specified index.
boolean
removeBodyPart(BodyPart part)
Removes the specified body part from this multipart.
protected void
setMultipartDataSource(MultipartDataSource mp)
Configures this multipart from the given data source.
void
setParent(Part part)
Sets the parent of this multipart.
abstract void
writeTo(OutputStream os)
Writes this multipart to the specified byte stream.

Field Details

contentType

protected String contentType
The content-type of this multipart object. It defaults to "multipart/mixed".

parent

protected Part parent
The part containing this multipart, if known.

parts

protected Vector parts
Vector of body parts.

Constructor Details

Multipart

protected Multipart()
Constructor for an empty multipart of type "multipart/mixed".

Method Details

addBodyPart

public void addBodyPart(BodyPart part)
            throws MessagingException
Adds a body part to this multipart.
Parameters:
part - the body part to be appended

addBodyPart

public void addBodyPart(BodyPart part,
                        int index)
            throws MessagingException
Inserts a body part at the specified index. The body parts in this container are numbered starting at 0.
Parameters:
part - the body part to be inserted
index - where to insert the part

getBodyPart

public BodyPart getBodyPart(int index)
            throws MessagingException
Get the specified body part. The body parts in this container are numbered starting at 0.
Parameters:
index - the index of the desired body part

getContentType

public String getContentType()
Returns the content-type of this multipart.

getCount

public int getCount()
            throws MessagingException
Returns the number of enclosed body parts.

getParent

public Part getParent()
Returns the part containing this multipart, or null if not known.

removeBodyPart

public void removeBodyPart(int index)
            throws MessagingException
Removes the body part at the specified index. The body parts in this container are numbered starting at 0.
Parameters:
index - index of the part to remove

removeBodyPart

public boolean removeBodyPart(BodyPart part)
            throws MessagingException
Removes the specified body part from this multipart.
Parameters:
part - the body part to remove
Returns:
true if a body part was removed, false otherwise
Throws:
MessagingException - if the multipart has not been configured

setMultipartDataSource

protected void setMultipartDataSource(MultipartDataSource mp)
            throws MessagingException
Configures this multipart from the given data source.

The method adds the body parts in the data source to this multipart, and sets the content-type.

Parameters:
mp - a multipart data source

setParent

public void setParent(Part part)
Sets the parent of this multipart.

writeTo

public abstract void writeTo(OutputStream os)
            throws IOException,
                   MessagingException
Writes this multipart to the specified byte stream.

© Copyright 2003, 2004 The Free Software Foundation, All rights reserved