Class AbstractMetaFolder<T extends MessageDelegate>

    • Method Detail

      • getType

        public final int getType()
        Returns:
        the type of folder this delegate represents.
        See Also:
        Folder.HOLDS_FOLDERS, Folder.HOLDS_MESSAGES
      • getFolderName

        public final String getFolderName()
        Returns:
        Returns the name.
      • getFullName

        public final String getFullName()
        Returns:
        the full name of the folder.
      • exists

        public final boolean exists()
        Indicates whether the folder represented by this delegate exists.
        Returns:
        true if the folder exists, otherwise false
      • delete

        public final boolean delete()
        Delete the folder delegate.
        Returns:
        true if the delegate is deleted, otherwise false
      • renameTo

        public final boolean renameTo​(String name)
        Rename the folder delegate.
        Parameters:
        name - the new folder name
        Returns:
        true if the folder is renamed, otherwise false
      • open

        public final void open​(int mode)
        Open the folder delegate.
        Parameters:
        mode - the mode to open the folder
        See Also:
        Folder.READ_ONLY, Folder.READ_WRITE
      • close

        public final void close()
                         throws javax.mail.MessagingException
        Close the folder delegate.
        Throws:
        javax.mail.MessagingException - where an unexpected error occurs closing the folder
      • getSeparator

        public final char getSeparator()
        Returns:
        the folder separator for this delegate type.
      • getMessageCount

        public final int getMessageCount()
                                  throws javax.mail.MessagingException
        Returns the number of messages in the folder delegate.
        Returns:
        the total message count
        Throws:
        javax.mail.MessagingException - where an unexpected error occurs retrieving the message count
      • getMessageAsStream

        public final InputStream getMessageAsStream​(int index)
                                             throws IOException
        Returns an input stream from which to read the specified message.
        Parameters:
        index - the index of the message to return
        Returns:
        an input stream for the specified message
        Throws:
        IOException - where an error occurs
      • appendMessages

        public final void appendMessages​(javax.mail.Message[] messages)
                                  throws javax.mail.MessagingException
        Append the specified messages to this delegate.
        Parameters:
        messages - an array of messages to append to the folder
        Throws:
        javax.mail.MessagingException - where an error occurs appending the messages
      • create

        public final boolean create​(int type)
                             throws javax.mail.MessagingException
        Initialise the delegate based on the specified folder type.
        Parameters:
        type - a folder type
        Returns:
        true if the delegate is created, otherwise false
        Throws:
        javax.mail.MessagingException - where an unexpected error occurs creating the delegate
      • expunge

        public final void expunge​(javax.mail.Message[] deleted)
                           throws javax.mail.MessagingException
        Permanently delete the specified messages from this delegate.
        Parameters:
        deleted - an array of deleted messages to expunge
        Throws:
        javax.mail.MessagingException - where an error occurs expunging the messages
      • newUidValidity

        protected int newUidValidity()
        Returns:
      • getFile

        protected final File getFile()
        Returns:
        the underlying meta file
      • getFileExtension

        protected abstract String getFileExtension()
        Returns:
      • removeMessages

        protected abstract T[] removeMessages​(javax.mail.Message[] deleted)
        Parameters:
        deleted -