Package gnu.mail.providers.maildir
Class MaildirFolder
- java.lang.Object
-
- javax.mail.Folder
-
- gnu.mail.providers.maildir.MaildirFolder
-
public final class MaildirFolder extends Folder
The folder class implementing a Maildir-format mailbox.- Author:
- Chris Burdess
-
-
Field Summary
-
Fields inherited from class javax.mail.Folder
HOLDS_FOLDERS, HOLDS_MESSAGES, mode, READ_ONLY, READ_WRITE, store
-
-
Constructor Summary
Constructors Modifier Constructor Description protectedMaildirFolder(Store store, java.lang.String filename)Constructor.protectedMaildirFolder(Store store, java.lang.String filename, boolean root, boolean inbox)Constructor.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidappendMessages(Message[] m)Appends messages to this folder.voidclose(boolean expunge)Closes this folder.booleancreate(int type)Creates this folder in the store.booleandelete(boolean recurse)Deletes this folder.booleanexists()Indicates whether this folder exists.Message[]expunge()Expunges this folder.FoldergetFolder(java.lang.String filename)Returns the subfolder of this folder with the specified name.java.lang.StringgetFullName()Returns the full name of this folder.MessagegetMessage(int msgnum)Returns the specified message number from this folder.intgetMessageCount()Returns the number of messages in this folder.Message[]getMessages()Returns the messages in this folder.java.lang.StringgetName()Returns the name of this folder.intgetNewMessageCount()Returns the number of new messages in this folder.FoldergetParent()Returns the parent folder.FlagsgetPermanentFlags()Returns the permanent flags for this folder.chargetSeparator()Returns the separator character.intgetType()Returns the type of this folder.URLNamegetURLName()Return a URLName representing this folder.booleanhasNewMessages()Indicates whether this folder contains new messages.booleanisOpen()Indicates whether this folder is open.Folder[]list()Returns the subfolders of this folder.Folder[]list(java.lang.String pattern)Returns the subfolders of this folder matching the specified pattern.voidopen(int mode)Opens this folder.booleanrenameTo(Folder folder)Renames this folder.-
Methods inherited from class javax.mail.Folder
addConnectionListener, addFolderListener, addMessageChangedListener, addMessageCountListener, copyMessages, fetch, getDeletedMessageCount, getMessages, getMessages, getMode, getStore, getUnreadMessageCount, isSubscribed, listSubscribed, listSubscribed, notifyConnectionListeners, notifyFolderListeners, notifyFolderRenamedListeners, notifyMessageAddedListeners, notifyMessageChangedListeners, notifyMessageRemovedListeners, removeConnectionListener, removeFolderListener, removeMessageChangedListener, removeMessageCountListener, search, search, setFlags, setFlags, setFlags, setSubscribed, toString
-
-
-
-
Method Detail
-
getName
public java.lang.String getName()
Returns the name of this folder.
-
getFullName
public java.lang.String getFullName()
Returns the full name of this folder.- Specified by:
getFullNamein classFolder
-
getURLName
public URLName getURLName() throws MessagingException
Return a URLName representing this folder.- Overrides:
getURLNamein classFolder- Throws:
MessagingException
-
getType
public int getType() throws MessagingExceptionReturns the type of this folder.- Specified by:
getTypein classFolder- Throws:
MessagingException- if a messaging error occurred
-
exists
public boolean exists() throws MessagingExceptionIndicates whether this folder exists.- Specified by:
existsin classFolder- Throws:
MessagingException- if a messaging error occurred
-
hasNewMessages
public boolean hasNewMessages() throws MessagingExceptionIndicates whether this folder contains new messages.- Specified by:
hasNewMessagesin classFolder- Throws:
MessagingException- if a messaging error occurred
-
open
public void open(int mode) throws MessagingExceptionOpens this folder. If the folder is opened for writing, a lock must be acquired on the mbox. If this fails a MessagingException is thrown.- Specified by:
openin classFolder- Parameters:
mode- open the Folder READ_ONLY or READ_WRITE- Throws:
MessagingException- if a messaging error occurred
-
close
public void close(boolean expunge) throws MessagingExceptionCloses this folder.- Specified by:
closein classFolder- Parameters:
expunge- if the folder is to be expunged before it is closed- Throws:
MessagingException- if a messaging error occurred
-
expunge
public Message[] expunge() throws MessagingException
Expunges this folder. This deletes all the messages marked as deleted.- Specified by:
expungein classFolder- Throws:
MessagingException- if a messaging error occurred
-
isOpen
public boolean isOpen()
Indicates whether this folder is open.
-
getPermanentFlags
public Flags getPermanentFlags()
Returns the permanent flags for this folder.- Specified by:
getPermanentFlagsin classFolder
-
getMessageCount
public int getMessageCount() throws MessagingExceptionReturns the number of messages in this folder.- Specified by:
getMessageCountin classFolder- Throws:
MessagingException- if a messaging error occurred
-
getNewMessageCount
public int getNewMessageCount() throws MessagingExceptionReturns the number of new messages in this folder.- Overrides:
getNewMessageCountin classFolder- Throws:
MessagingException- if a messaging error occurred
-
getMessage
public Message getMessage(int msgnum) throws MessagingException
Returns the specified message number from this folder.- Specified by:
getMessagein classFolder- Parameters:
msgnum- the message number- Throws:
MessagingException- if a messaging error occurred
-
getMessages
public Message[] getMessages() throws MessagingException
Returns the messages in this folder.- Overrides:
getMessagesin classFolder- Throws:
MessagingException- if a messaging error occurred
-
appendMessages
public void appendMessages(Message[] m) throws MessagingException
Appends messages to this folder. Only MimeMessages within the array will be appended, as we don't know how to retrieve internet content for other kinds.- Specified by:
appendMessagesin classFolder- Parameters:
m- an array of messages to be appended- Throws:
FolderNotFoundException- if this folder does not existMessagingException- if the append operation failed
-
getParent
public Folder getParent() throws MessagingException
Returns the parent folder.- Specified by:
getParentin classFolder- Throws:
MessagingException
-
list
public Folder[] list() throws MessagingException
Returns the subfolders of this folder.- Overrides:
listin classFolder- Throws:
MessagingException
-
list
public Folder[] list(java.lang.String pattern) throws MessagingException
Returns the subfolders of this folder matching the specified pattern.- Specified by:
listin classFolder- Parameters:
pattern- the match pattern- Throws:
MessagingException
-
getSeparator
public char getSeparator() throws MessagingExceptionReturns the separator character.- Specified by:
getSeparatorin classFolder- Throws:
MessagingException
-
create
public boolean create(int type) throws MessagingExceptionCreates this folder in the store.- Specified by:
createin classFolder- Parameters:
type- the desired type of the folder- Throws:
MessagingException
-
delete
public boolean delete(boolean recurse) throws MessagingExceptionDeletes this folder.- Specified by:
deletein classFolder- Parameters:
recurse- delete any subfolders- Returns:
- true if the folder is deleted successfully, false otherwise
- Throws:
FolderNotFoundException- if this folder does not existMessagingException
-
renameTo
public boolean renameTo(Folder folder) throws MessagingException
Renames this folder.- Specified by:
renameToin classFolder- Parameters:
folder- a folder representing the new name for this folder- Returns:
- true if the folder is renamed successfully, false otherwise
- Throws:
FolderNotFoundException- if this folder does not existMessagingException
-
getFolder
public Folder getFolder(java.lang.String filename) throws MessagingException
Returns the subfolder of this folder with the specified name.- Specified by:
getFolderin classFolder- Parameters:
filename- the name of the folder- Throws:
MessagingException
-
-