net.fortuna.mstor
Class MStorFolder

java.lang.Object
  extended by javax.mail.Folder
      extended by net.fortuna.mstor.MStorFolder

public class MStorFolder
extends Folder

A folder implementation for the mstor javamail provider.

Author:
Ben Fortuna

Field Summary
 
Fields inherited from class javax.mail.Folder
HOLDS_FOLDERS, HOLDS_MESSAGES, mode, READ_ONLY, READ_WRITE, store
 
Constructor Summary
MStorFolder(MStorStore store, File file)
          Constructs a new mstor folder with metadata enabled.
MStorFolder(MStorStore store, File file, boolean metaEnabled)
          Constructs a new mstor folder instance.
 
Method Summary
 void appendMessages(Message[] messages)
          Appends the specified messages to this folder.
 void close(boolean expunge)
           
 boolean create(int type)
           
 boolean delete(boolean recurse)
           
 boolean exists()
           
 Message[] expunge()
           
 Folder getFolder(String name)
           
 String getFullName()
           
 Message getMessage(int index)
           
 int getMessageCount()
           
protected  MetaFolder getMeta()
           
 String getName()
           
 Folder getParent()
           
 Flags getPermanentFlags()
           
 char getSeparator()
           
 int getType()
           
 boolean hasNewMessages()
           
 boolean isOpen()
           
 Folder[] list(String pattern)
           
 void open(int mode)
           
 boolean renameTo(Folder folder)
           
 
Methods inherited from class javax.mail.Folder
addConnectionListener, addFolderListener, addMessageChangedListener, addMessageCountListener, copyMessages, fetch, getDeletedMessageCount, getMessages, getMessages, getMessages, getMode, getNewMessageCount, getStore, getUnreadMessageCount, getURLName, isSubscribed, list, listSubscribed, listSubscribed, notifyConnectionListeners, notifyFolderListeners, notifyFolderRenamedListeners, notifyMessageAddedListeners, notifyMessageChangedListeners, notifyMessageRemovedListeners, removeConnectionListener, removeFolderListener, removeMessageChangedListener, removeMessageCountListener, search, search, setFlags, setFlags, setFlags, setSubscribed, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MStorFolder

public MStorFolder(MStorStore store,
                   File file)
Constructs a new mstor folder with metadata enabled.

Parameters:
store -
file -

MStorFolder

public MStorFolder(MStorStore store,
                   File file,
                   boolean metaEnabled)
Constructs a new mstor folder instance.

Parameters:
store -
file -
metaEnabled -
Method Detail

getName

public final String getName()
Specified by:
getName in class Folder

getFullName

public final String getFullName()
Specified by:
getFullName in class Folder

getParent

public final Folder getParent()
                       throws MessagingException
Specified by:
getParent in class Folder
Throws:
MessagingException

exists

public final boolean exists()
                     throws MessagingException
Specified by:
exists in class Folder
Throws:
MessagingException

list

public final Folder[] list(String pattern)
                    throws MessagingException
Specified by:
list in class Folder
Throws:
MessagingException

getSeparator

public final char getSeparator()
                        throws MessagingException
Specified by:
getSeparator in class Folder
Throws:
MessagingException

getType

public final int getType()
                  throws MessagingException
Specified by:
getType in class Folder
Throws:
MessagingException

create

public final boolean create(int type)
                     throws MessagingException
Specified by:
create in class Folder
Throws:
MessagingException

hasNewMessages

public final boolean hasNewMessages()
                             throws MessagingException
Specified by:
hasNewMessages in class Folder
Throws:
MessagingException

getFolder

public final Folder getFolder(String name)
                       throws MessagingException
Specified by:
getFolder in class Folder
Throws:
MessagingException

delete

public final boolean delete(boolean recurse)
                     throws MessagingException
Specified by:
delete in class Folder
Throws:
MessagingException

renameTo

public final boolean renameTo(Folder folder)
                       throws MessagingException
Specified by:
renameTo in class Folder
Throws:
MessagingException

open

public final void open(int mode)
                throws MessagingException
Specified by:
open in class Folder
Throws:
MessagingException

close

public final void close(boolean expunge)
                 throws MessagingException
Specified by:
close in class Folder
Throws:
MessagingException

isOpen

public final boolean isOpen()
Specified by:
isOpen in class Folder

getPermanentFlags

public final Flags getPermanentFlags()
Specified by:
getPermanentFlags in class Folder

getMessageCount

public final int getMessageCount()
                          throws MessagingException
Specified by:
getMessageCount in class Folder
Throws:
MessagingException

getMessage

public final Message getMessage(int index)
                         throws MessagingException
Specified by:
getMessage in class Folder
Throws:
MessagingException

appendMessages

public final void appendMessages(Message[] messages)
                          throws MessagingException
Appends the specified messages to this folder. NOTE: The specified message array is destroyed upon processing to alleviate memory concerns with large messages. You should ensure the messages specified in this array are referenced elsewhere if you want to retain them.

Specified by:
appendMessages in class Folder
Throws:
MessagingException

expunge

public final Message[] expunge()
                        throws MessagingException
Specified by:
expunge in class Folder
Throws:
MessagingException

getMeta

protected final MetaFolder getMeta()
Returns:
Returns the metadata for this folder.