java.lang.Object | +--javax.mail.FetchProfile
Clients use a FetchProfile to list the Message attributes that it wishes to prefetch from the server for a range of messages.
Messages obtained from a Folder are light-weight objects that
typically start off as empty references to the actual messages.
Such a Message object is filled in "on-demand" when the appropriate
get*() methods are invoked on that particular Message. Certain
server-based message access protocols (Ex: IMAP) allow batch
fetching of message attributes for a range of messages in a single
request. Clients that want to use message attributes for a range of
Messages (Example: to display the top-level headers in a headerlist)
might want to use the optimization provided by such servers. The
FetchProfile
allows the client to indicate this desire
to the server.
Note that implementations are not obligated to support FetchProfiles, since there might be cases where the backend service does not allow easy, efficient fetching of such profiles.
Sample code that illustrates the use of a FetchProfile is given below:
Message[] msgs = folder.getMessages(); FetchProfile fp = new FetchProfile(); fp.add(FetchProfile.Item.ENVELOPE); fp.add("X-mailer"); folder.fetch(msgs, fp);
static class
FetchProfile.Item
FetchProfile()
void
add(FetchProfile.Item item)
void
add(java.lang.String headerName)
boolean
contains(FetchProfile.Item item)
boolean
contains(java.lang.String headerName)
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
public FetchProfile()
public void add(FetchProfile.Item item)
item
- the special item to be fetchedFetchProfile.Item.ENVELOPE
,
FetchProfile.Item.CONTENT_INFO
,
FetchProfile.Item.FLAGS
public void add(java.lang.String headerName)
headerName
- header to be prefetchedpublic boolean contains(FetchProfile.Item item)
public boolean contains(java.lang.String headerName)
public FetchProfile.Item[] getItems()
public java.lang.String[] getHeaderNames()