public class

FetchProfile

extends Object
java.lang.Object
   ↳ com.google.code.javax.mail.FetchProfile

Class Overview

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 GmailFolder 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);

 

See Also
  • org.mule.module.gmail.search.GmailFolder.Folder#fetch

Summary

Nested Classes
class FetchProfile.Item This inner class is the base class of all items that can be requested in a FetchProfile. 
Fields
private Vector headers
private Vector specials
Public Constructors
FetchProfile()
Create an empty FetchProfile.
Public Methods
void add(FetchProfile.Item item)
Add the given special item as one of the attributes to be prefetched.
void add(String headerName)
Add the specified header-field to the list of attributes to be prefetched.
boolean contains(FetchProfile.Item item)
Returns true if the fetch profile contains given special item.
boolean contains(String headerName)
Returns true if the fetch profile contains given header name.
String[] getHeaderNames()
Get the names of the header-fields set in this profile.
Item[] getItems()
Get the items set in this profile.
[Expand]
Inherited Methods
From class java.lang.Object

Fields

private Vector headers

private Vector specials

Public Constructors

public FetchProfile ()

Create an empty FetchProfile.

Public Methods

public void add (FetchProfile.Item item)

Add the given special item as one of the attributes to be prefetched.

Parameters
item The special item to be fetched

public void add (String headerName)

Add the specified header-field to the list of attributes to be prefetched.

Parameters
headerName Header to be prefetched

public boolean contains (FetchProfile.Item item)

Returns true if the fetch profile contains given special item.

Parameters
item

public boolean contains (String headerName)

Returns true if the fetch profile contains given header name.

Parameters
headerName

public String[] getHeaderNames ()

Get the names of the header-fields set in this profile.

Returns
  • headers set in this profile

public Item[] getItems ()

Get the items set in this profile.

Returns
  • items set in this profile