|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object javax.mail.Multipart
public abstract class Multipart
Multipart is a container that holds multiple body parts. Multipart provides methods to retrieve and set its subparts.
Multipart also acts as the base class for the content object returned by most Multipart DataContentHandlers. For example, invoking getContent() on a DataHandler whose source is a "multipart/signed" data source may return an appropriate subclass of Multipart.
Some messaging systems provide different subtypes of Multiparts. For example, MIME specifies a set of subtypes that include "alternative", "mixed", "related", "parallel", "signed", etc.
Multipart is an abstract class. Subclasses provide actual implementations.
Field Summary | |
---|---|
protected String |
contentType
This field specifies the content-type of this multipart object. |
protected Part |
parent
The Part containing this Multipart ,
if known. |
protected Vector |
parts
Vector of BodyPart objects. |
Constructor Summary | |
---|---|
protected |
Multipart()
Default constructor. |
Method Summary | |
---|---|
void |
addBodyPart(BodyPart part)
Adds a Part to the multipart. |
void |
addBodyPart(BodyPart part,
int index)
Adds a BodyPart at position index . |
BodyPart |
getBodyPart(int index)
Get the specified Part. |
String |
getContentType()
Return the content-type of this Multipart. |
int |
getCount()
Return the number of enclosed BodyPart objects. |
Part |
getParent()
Return the Part that contains this Multipart
object, or null if not known. |
boolean |
removeBodyPart(BodyPart part)
Remove the specified part from the multipart message. |
void |
removeBodyPart(int index)
Remove the part at specified location (starting from 0). |
protected void |
setMultipartDataSource(MultipartDataSource mp)
Setup this Multipart object from the given MultipartDataSource. |
void |
setParent(Part parent)
Set the parent of this Multipart to be the specified
Part . |
abstract void |
writeTo(OutputStream os)
Output an appropriately encoded bytestream to the given OutputStream. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected Vector parts
protected String contentType
protected Part parent
Part
containing this Multipart
,
if known.
Constructor Detail |
---|
protected Multipart()
Method Detail |
---|
protected void setMultipartDataSource(MultipartDataSource mp) throws MessagingException
The method adds the MultipartDataSource's BodyPart objects into this Multipart. This Multipart's contentType is set to that of the MultipartDataSource.
This method is typically used in those cases where one has a multipart data source that has already been pre-parsed into the individual body parts (for example, an IMAP datasource), but needs to create an appropriate Multipart subclass that represents a specific multipart subtype.
mp
- Multipart datasource
MessagingException
public String getContentType()
This implementation just returns the value of the
contentType
field.
contentType
public int getCount() throws MessagingException
MessagingException
parts
public BodyPart getBodyPart(int index) throws MessagingException
index
- the index of the desired Part
IndexOutOfBoundsException
- if the given index
is out of range.
MessagingException
public boolean removeBodyPart(BodyPart part) throws MessagingException
part
- The part to remove
MessagingException
- if no such Part exists
IllegalWriteException
- if the underlying
implementation does not support modification
of existing valuespublic void removeBodyPart(int index) throws MessagingException
index
- Index of the part to remove
MessagingException
IndexOutOfBoundsException
- if the given index
is out of range.
IllegalWriteException
- if the underlying
implementation does not support modification
of existing valuespublic void addBodyPart(BodyPart part) throws MessagingException
part
- The Part to be appended
MessagingException
IllegalWriteException
- if the underlying
implementation does not support modification
of existing valuespublic void addBodyPart(BodyPart part, int index) throws MessagingException
index
.
If index
is not the last one in the list,
the subsequent parts are shifted up. If index
is larger than the number of parts present, the
BodyPart is appended to the end.
part
- The BodyPart to be insertedindex
- Location where to insert the part
MessagingException
IllegalWriteException
- if the underlying
implementation does not support modification
of existing valuespublic abstract void writeTo(OutputStream os) throws IOException, MessagingException
IOException
- if an IO related exception occurs
MessagingException
public Part getParent()
Part
that contains this Multipart
object, or null
if not known.
public void setParent(Part parent)
Multipart
to be the specified
Part
. Normally called by the Message
or BodyPart
setContent(Multipart)
method.
parent
may be null
if the
Multipart
is being removed from its containing
Part
.
|
Java EE 5 SDK | ||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
Copyright 2006 Sun Microsystems, Inc. All rights reserved.