Package com.icegreen.greenmail.store
Interface MailFolder
- All Known Implementing Classes:
ImapSessionFolder
public interface MailFolder
Represents a mailbox within an
Store.
May provide storage for MovingMessage objects, or be a non-selectable placeholder in the
Mailbox hierarchy.
TODO this is a "grown" interface, which needs some more design and thought re:
how it will fit in with the other mail storage in James.- Version:
- $Revision: 109034 $
- Author:
- Darrell DeBoer
-
Method Summary
Modifier and TypeMethodDescriptionvoidaddListener(FolderListener listener) longappendMessage(jakarta.mail.internet.MimeMessage message, jakarta.mail.Flags flags, Date internalDate) Appends a message.longcopyMessage(long uid, MailFolder toFolder) voidvoidexpunge()voidExpunges flagged for deletion messages in given range.jakarta.mail.FlagsThe flags (at a minimum, the system-defined flags) that are applicable for this mailbox.intgetMessage(long uid) intgetMessages(MsgRangeFilter msgRangeFilter) long[]intgetMsn(long uid) getName()jakarta.mail.FlagsPermanent flags are those which the client can add or remove from the message flags permanently; that is, concurrent and subsequent sessions will see any change in permanent flagsintgetRecentCount(boolean reset) longlongintbooleanlongmoveMessage(long uid, MailFolder toFolder) voidremoveListener(FolderListener listener) voidreplaceFlags(jakarta.mail.Flags flags, long uid, FolderListener silentListener, boolean addUid) long[]search(jakarta.mail.search.SearchTerm searchTerm) voidsetFlags(jakarta.mail.Flags flags, boolean value, long uid, FolderListener silentListener, boolean addUid) voidvoidstore(MovingMessage mail) voidstore(jakarta.mail.internet.MimeMessage mail)
-
Method Details
-
getName
String getName() -
getFullName
String getFullName() -
getAvailableFlags
jakarta.mail.Flags getAvailableFlags()The flags (at a minimum, the system-defined flags) that are applicable for this mailbox.- Returns:
- the applicable mailbox flags
- See Also:
-
getPermanentFlags
jakarta.mail.Flags getPermanentFlags()Permanent flags are those which the client can add or remove from the message flags permanently; that is, concurrent and subsequent sessions will see any change in permanent flags- Returns:
- the permanent (persisting across sessions) flags
- See Also:
-
getMessageCount
int getMessageCount() -
getRecentCount
int getRecentCount(boolean reset) -
getUidValidity
long getUidValidity() -
getFirstUnseen
int getFirstUnseen() -
getUnseenCount
int getUnseenCount() -
isSelectable
boolean isSelectable() -
getUIDNext
long getUIDNext() -
appendMessage
long appendMessage(jakarta.mail.internet.MimeMessage message, jakarta.mail.Flags flags, Date internalDate) Appends a message.- Parameters:
message- the message.flags- the flags.internalDate- the received date- Returns:
- the uid.
-
deleteAllMessages
void deleteAllMessages() -
expunge
- Throws:
FolderException
-
expunge
Expunges flagged for deletion messages in given range.- Parameters:
idRanges- the ranges. Can be null.- See Also:
-
ExpungeCommand
-
addListener
-
removeListener
-
store
- Throws:
Exception
-
store
- Throws:
Exception
-
getMessage
-
getMessageUids
long[] getMessageUids() -
search
long[] search(jakarta.mail.search.SearchTerm searchTerm) -
copyMessage
- Throws:
FolderException
-
moveMessage
- Throws:
FolderException
-
setFlags
void setFlags(jakarta.mail.Flags flags, boolean value, long uid, FolderListener silentListener, boolean addUid) throws FolderException - Throws:
FolderException
-
replaceFlags
void replaceFlags(jakarta.mail.Flags flags, long uid, FolderListener silentListener, boolean addUid) throws FolderException - Throws:
FolderException
-
getMsn
- Throws:
FolderException
-
signalDeletion
void signalDeletion() -
getMessages
-
getMessages
List<StoredMessage> getMessages() -
getNonDeletedMessages
List<StoredMessage> getNonDeletedMessages()
-