Package com.sun.mail.gimap

## Class GmailFolder

- java.lang.Object
- - javax.mail.Folder
  - - com.sun.mail.imap.IMAPFolder
    - - com.sun.mail.gimap.GmailFolder

All Implemented Interfaces:
  `ResponseHandler`, `AutoCloseable`, `UIDFolder`

    public class GmailFolder
    extends IMAPFolder

A Gmail folder. Defines new FetchProfile items and uses GmailMessage to store additional Gmail message attributes.

Since:
  JavaMail 1.4.6
Author:
  Bill Shannon

### Nested Class Summary

Nested Classes
`static class` `GmailFolder.FetchProfileItem` A fetch profile item for fetching headers.

### Nested classes/interfaces inherited from class com.sun.mail.imap.IMAPFolder

`IMAPFolder.ProtocolCommand`

### Field Summary

### Fields inherited from class javax.mail.Folder

`HOLDS_FOLDERS, HOLDS_MESSAGES, mode, READ_ONLY, READ_WRITE, store`

### Fields inherited from class com.sun.mail.imap.IMAPFolder

`attributes, availableFlags, exists, fullName, isNamespace, logger, messageCache, messageCacheLock, name, permanentFlags, protocol, separator, type, uidTable, UNKNOWN_SEPARATOR`

### Fields inherited from interface javax.mail.UIDFolder

`LASTUID, MAXUID`

### Constructor Summary

Constructors
`protected` `GmailFolder​(ListInfo li, IMAPStore store)` Constructor used to create an existing folder.
`protected` `GmailFolder​(String fullName, char separator, IMAPStore store, Boolean isNamespace)` Constructor used to create a possibly non-existent folder.

### Method Summary

All Methods Instance Methods Concrete Methods
`protected IMAPMessage` `newIMAPMessage​(int msgnum)` Create a new IMAPMessage object to represent the given message number.
`void` `setLabels​(int[] msgnums, String[] labels, boolean set)` Set the specified labels for the given array of message numbers.
`void` `setLabels​(int start, int end, String[] labels, boolean set)` Set the specified labels for the given range of message numbers.
`void` `setLabels​(Message[] msgs, String[] labels, boolean set)` Set the specified labels for the given array of messages.

### Methods inherited from class javax.mail.Folder

`addConnectionListener, addFolderListener, addMessageChangedListener, close, finalize, getMessages, getMessages, getMode, getStore, getURLName, list, listSubscribed, notifyConnectionListeners, notifyFolderListeners, notifyFolderRenamedListeners, notifyMessageAddedListeners, notifyMessageChangedListeners, notifyMessageRemovedListeners, removeConnectionListener, removeFolderListener, removeMessageChangedListener, removeMessageCountListener, toString`

### Methods inherited from class com.sun.mail.imap.IMAPFolder

`addACL, addMessageCountListener, addMessages, addRights, appendMessages, appendUIDMessages, checkClosed, checkExists, checkOpened, checkRange, close, copyMessages, copyUIDMessages, create, delete, doCommand, doCommandIgnoreFailure, doOptionalCommand, doProtocolCommand, exists, expunge, expunge, fetch, forceClose, getACL, getAttributes, getDeletedMessageCount, getEnvelopeCommand, getFolder, getFullName, getHighestModSeq, getMessage, getMessageBySeqNumber, getMessageByUID, getMessageCount, getMessages, getMessagesBySeqNumbers, getMessagesByUID, getMessagesByUID, getMessagesByUIDChangedSince, getName, getNewMessageCount, getParent, getPermanentFlags, getProtocol, getQuota, getSeparator, getSortedMessages, getSortedMessages, getStatusItem, getStoreProtocol, getType, getUID, getUIDNext, getUIDNotSticky, getUIDValidity, getUnreadMessageCount, handleResponse, hasNewMessages, id, idle, idle, isOpen, isSubscribed, keepConnectionAlive, list, listRights, listSubscribed, moveMessages, moveUIDMessages, myRights, open, open, releaseProtocol, releaseStoreProtocol, removeACL, removeRights, renameTo, search, search, setFlags, setFlags, setFlags, setQuota, setSubscribed, throwClosedException`

### Methods inherited from class java.lang.Object

`clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

### Constructor Detail

#### GmailFolder

    protected GmailFolder​(String fullName,
                          char separator,
                          IMAPStore store,
                          Boolean isNamespace)

Constructor used to create a possibly non-existent folder.

Parameters:
  `fullName` - fullname of this folder
  `separator` - the default separator character for this folder's namespace
  `store` - the Store
  `isNamespace` - does this name represent a namespace?

#### GmailFolder

    protected GmailFolder​(ListInfo li,
                          IMAPStore store)

Constructor used to create an existing folder.

Parameters:
  `li` - the ListInfo for this folder
  `store` - the store containing this folder

### Method Detail

#### setLabels

    public void setLabels​(Message[] msgs,
                          String[] labels,
                          boolean set)
                   throws MessagingException

Set the specified labels for the given array of messages.

Parameters:
  `msgs` - the messages
  `labels` - the labels to add or remove
  `set` - true to add, false to remove
Throws:
  `MessagingException` - for failures
Since:
  JavaMail 1.5.5

#### setLabels

    public void setLabels​(int start,
                          int end,
                          String[] labels,
                          boolean set)
                   throws MessagingException

Set the specified labels for the given range of message numbers.

Parameters:
  `start` - first message number
  `end` - last message number
  `labels` - the labels to add or remove
  `set` - true to add, false to remove
Throws:
  `MessagingException` - for failures
Since:
  JavaMail 1.5.5

#### setLabels

    public void setLabels​(int[] msgnums,
                          String[] labels,
                          boolean set)
                   throws MessagingException

Set the specified labels for the given array of message numbers.

Parameters:
  `msgnums` - the message numbers
  `labels` - the labels to add or remove
  `set` - true to add, false to remove
Throws:
  `MessagingException` - for failures
Since:
  JavaMail 1.5.5

#### newIMAPMessage

    protected IMAPMessage newIMAPMessage​(int msgnum)

Create a new IMAPMessage object to represent the given message number.

Overrides:
  `newIMAPMessage` in class `IMAPFolder`
Parameters:
  `msgnum` - the message sequence number
Returns:
  the new IMAPMessage object