com.aspose.email

Interfaces

Classes

Enums

Exceptions

com.aspose.email

Class FolderInfo



  • public final class FolderInfo
    extends Object

    Represents information about personal folder in PST.

    • Field Detail

      • MessageAdded

        public final com.aspose.ms.lang.Event<MessageAddedEventHandler> MessageAdded

        Occurs when a message is added to the current folder.

      • ItemMoved

        public com.aspose.ms.lang.Event<ItemMovedEventHandler> ItemMoved

        Occurs when an item is moved to the another folder.

    • Constructor Detail

      • FolderInfo

        public FolderInfo()

        Initializes a new instance of the FolderInfo class.

    • Method Detail

      • getDisplayName

        public final String getDisplayName()

        Gets the display name of folder.

        Value: The display name.
      • getContentCount

        public final int getContentCount()

        Gets the total number of items in the folder.

        Value: The content count.
      • getContentUnreadCount

        public final int getContentUnreadCount()

        Gets the number of unread items in the folder.

        Value: The content unread count.
      • hasSubFolders

        public final boolean hasSubFolders()

        Gets a value indicating whether the Folder object has any subfolders.

        Value: The has sub folders.
      • getContainerClass

        public final String getContainerClass()

        Gets container class of the folder object.

        Value: The container class.
      • getLastModificationTime

        public final Date getLastModificationTime()

        Gets the last modification time.

        Value: The last modification time. If the folder doesn't have PR_LAST_MODIFICATION_TIME property, DateTime.MinValue is returned.
      • getEntryId

        public final byte[] getEntryId()

        Gets the entry ID.

        Value: The entry id.
      • getEntryIdString

        public final String getEntryIdString()

        Gets string representation of entry ID.

        Value: The entry id string.
      • getSubFolder

        public final FolderInfo getSubFolder(String name)

        Get subfolder.

        Parameters:
        name - Name of subfolder.
        Returns:
        A FolderInfo object.
      • getSubFolder

        public final FolderInfo getSubFolder(String name,
                              boolean ignoreCase)

        Gets the subfolder.

        Parameters:
        name - Name of subfolder.
        ignoreCase - Indicates that a search should ignore case sensitivity when matching the folder name.
        Returns:
        A FolderInfo object.
      • getSubFolders

        public final FolderInfoCollection getSubFolders()

        Gets collection of subfolders.

        Returns:
        The FolderInfo collection.
      • getSubFolders

        public final FolderInfoCollection getSubFolders(int kind)

        Gets collection of subfolders.

        Parameters:
        kind - The FolderKind that represents kind of folder.
        Returns:
        The FolderInfo collection.
      • getSubFolders

        public final FolderInfoCollection getSubFolders(MailQuery query)

        Gets collection of subfolders.

        Parameters:
        query - MailQuery that represents search query.
        Returns:
        The FolderInfo collection.
      • getContents

        public final MessageInfoCollection getContents(boolean tryToReadCorruptedContents)

        Get collection of messages.

        Parameters:
        tryToReadCorruptedContents - If the value of this parameter is true, the method will try to read the content even if the file is corrupted. This value can be used if the GetContents() method throws an exception about the file corruption. If the value of this parameter is false, the method works in the same way as GetContents() method without parameters.
        Returns:
        Collection of MessageInfo.
      • getContents

        public final MessageInfoCollection getContents()

        Get collection of messages.

        Returns:
        Collection of MessageInfo.
      • getContents

        public final MessageInfoCollection getContents(int kind)

        Get collection of messages.

        Parameters:
        kind - The message kind.
        Returns:
        Collection of MessageInfo.
      • getContents

        public final MessageInfoCollection getContents(MailQuery query)

        Get collection of messages.

        Parameters:
        query - MailQuery that represents search query.
        Returns:
        Collection of MessageInfo.
      • getContents

        public final MessageInfoCollection getContents(int startIndex,
                                        int count)

        Gets the collection of messages.

        Parameters:
        startIndex - The start message index.
        count - The number of messages that will be retrieved.


        If "count" param is less than 0 or more than remained message count then remained message count will be returned.

        Returns:
        Collection of MessageInfo.
        Throws:
        com.aspose.ms.System.ArgumentOutOfRangeException - throws, if startIndex less than 0.
        com.aspose.ms.System.ArgumentOutOfRangeException - throws, if startIndex more or equal to total message count that folder contains.
      • enumerateFolders

        public final com.aspose.ms.System.Collections.Generic.IGenericEnumerable<FolderInfo> enumerateFolders()

        Exposes the enumerator, which supports an iteration of subfolders in folder.

        Returns:
        System.Collections.Generic.IEnumerableltTgt, that represents an enumerator that iterates through a subfolders in folder.
      • enumerateFolders

        public final com.aspose.ms.System.Collections.Generic.IGenericEnumerable<FolderInfo> enumerateFolders(int kind)

        Exposes the enumerator, which supports an iteration of subfolders in folder.

        Parameters:
        kind - The FolderKind that represents kind of folder.
        Returns:
        System.Collections.Generic.IEnumerableltTgt, that represents an enumerator that iterates through a subfolders in folder.
      • enumerateMessages

        public final com.aspose.ms.System.Collections.Generic.IGenericEnumerable<MessageInfo> enumerateMessages()

        Exposes the enumerator, which supports an iteration of messages in folder.

        Returns:
        System.Collections.Generic.IEnumerableltTgt, that represents an enumerator that iterates through a messages in folder.
      • enumerateMessageObjects

        public final com.aspose.ms.System.Collections.Generic.IGenericEnumerable<MessageObject> enumerateMessageObjects()

        Exposes the enumerator, which supports an iteration of messages in folder.

        Returns:
        System.Collections.Generic.IEnumerableltTgt, that represents an enumerator that iterates through a messages in folder.
      • enumerateMapiMessages

        public final com.aspose.ms.System.Collections.Generic.IGenericEnumerable<MapiMessage> enumerateMapiMessages()

        Exposes the enumerator, which supports an iteration of messages in folder.

        Returns:
        System.Collections.Generic.IEnumerableltTgt, that represents an enumerator that iterates through a messages in folder.
      • enumerateMessagesEntryId

        public final com.aspose.ms.System.Collections.Generic.IGenericEnumerable<String> enumerateMessagesEntryId()

        Enumerates the entryID of messages.

        Returns:
        System.Collections.Generic.IEnumerableltTgt, that represents an enumerator that iterates through entryID of messages in folder.
      • retrieveFullPath

        public final String retrieveFullPath()

        Retrieves the full path of folder within the PST file.

        Returns:
        The string that represents the full path.
      • addSubFolder

        public final FolderInfo addSubFolder(String name,
                              boolean createHierarchy)

        Adds the new sub-folder.

        Parameters:
        name - The name of sub-folder.
        createHierarchy - if set to true, it is possible to create a folder hierarchy using string notation. Backslash ('\') is used as path separator.
        Returns:
        The new sub-folder.
        Throws:
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
        com.aspose.ms.System.ArgumentNullException - throws, if a sub-folder name is null or empty.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
      • addSubFolder

        public final FolderInfo addSubFolder(String name)

        Adds the new sub-folder.

        Parameters:
        name - The name of sub-folder.
        Returns:
        The new sub-folder.
        Throws:
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
        com.aspose.ms.System.ArgumentNullException - throws, if a sub-folder name is null or empty.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
      • addSubFolder

        public final FolderInfo addSubFolder(String name,
                              String containerClass)

        Adds the new subfolder.

        Parameters:
        name - The name of subfolder.
        containerClass - Container class of the sub-Folder object.
        Returns:
        The new subfolder.
        Throws:
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
        com.aspose.ms.System.ArgumentNullException - throws, if a subfolder name is null or empty.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
      • addMessage

        public final String addMessage(MapiMessage message)

        Adds a new message into folder.

        Parameters:
        message - The message necessary to add.
        Returns:
        The string that represents the EntryId of the added message.
        Throws:
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
        com.aspose.ms.System.ArgumentNullException - throws, if a message to add is null.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
      • addFile

        public final String addFile(String fileName,
                     String messageClass)

        Adds a file into pst folder.

        Parameters:
        fileName - The name of file necessary to add.
        messageClass - The message class.
        Returns:
        The string that represents the EntryId of the added message.
        Throws:
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
        com.aspose.ms.System.ArgumentNullException - throws, if a name of file to add is null or empty.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
      • addMapiMessageItem

        public final String addMapiMessageItem(IMapiMessageItem item)

        Adds the IMapiMessageItem object into folder.

        Parameters:
        item - The item necessary to add.
        Returns:
        The string that represents the EntryId of the added item.
        Throws:
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
        com.aspose.ms.System.ArgumentNullException - throws, if an item to add is null.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
        com.aspose.ms.System.NotSupportedException - Thrown when MessageClass doesn't belong to IPM.Note, IPM.StickyNote, IPM.Contact, IPM.Activity, IPM.Appointment, IPM.Schedule.meeting, IPM.Task.
        com.aspose.ms.System.InvalidOperationException - Thrown when MessageClass doesn't correspond to the folder's ContainerClass.
      • addMessages

        public final void addMessages(Iterable<MapiMessage> messages)

        Provides message adding in a bulk mode.

        Parameters:
        messages - An IEnumerator representing the enumerator, which supports iteration over a collection of MapiMessage.
      • moveContents

        public final void moveContents(FolderInfo newFolder)

        Moves the contents to a new folder.

        Parameters:
        newFolder - The new folder.
      • moveSubfolders

        public final void moveSubfolders(FolderInfo newFolder)

        Moves the subfolders to a new parent folder.

        Parameters:
        newFolder - The new parent folder.
      • mergeWith

        public final void mergeWith(FolderInfo sourceFolder)

        Merges the folder with the folder from another pst.

        Parameters:
        sourceFolder - The source folder.
        Throws:
        com.aspose.ms.System.InvalidOperationException - Throws when the source folder is located in the same pst.
      • mergeWith

        public final void mergeWith(FolderInfo sourceFolder,
                     boolean recursiveHandler)

        Merges the folder with the folder from another pst. OnItemMoved event is called on both messages and directories.

        Parameters:
        sourceFolder - The source folder.
        recursiveHandler - If true, OnItemMoved will be called on all messages, including messages in sub-directories, otherwise OnItemMoved will be called only for messages in the current directory.
        Throws:
        com.aspose.ms.System.InvalidOperationException - Throws when the source folder is located in the same pst.
      • deleteChildItem

        public final void deleteChildItem(byte[] entryId)

        Deletes the item (folder or message) by it's entryId.

        Parameters:
        entryId - The entry id.


        The item must be contained in a folder.

        Throws:
        com.aspose.ms.System.ArgumentNullException - throws, if entryId is null.
        com.aspose.ms.System.InvalidOperationException - throws, if the item doesn't belong to the folder or the item can't be deleted or entryID has the incorrect value.
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
      • deleteChildItems

        public final void deleteChildItems(Iterable<String> entryIdCollection)

        Deletes the child messages.

        Parameters:
        entryIdCollection - The entry id collection.
        Throws:
        com.aspose.ms.System.NotImplementedException - The ANSI file version editing is not implemented.
        com.aspose.ms.System.InvalidOperationException - The PST is open for reading only. or The item, to be deleted, doesn't belong to this folder. or The search folder cannot be deleted. or The \Deleted Items\ folder cannot be deleted. or The entryId is incorrect.
        com.aspose.ms.System.ArgumentNullException - entryId;The entryId cannot be null.
      • updateMessage

        public final void updateMessage(String entryId,
                         MapiMessageItemBase updatedMessage)

        Updates the message in folder.

        Parameters:
        entryId - The message entry identifier.
        updatedMessage - The updated message.
        Throws:
        com.aspose.ms.System.NotImplementedException - The ANSI file version editing is not implemented.
        com.aspose.ms.System.InvalidOperationException - The PST is open for reading only. or The entryId is incorrect.
        com.aspose.ms.System.ArgumentNullException - entryId; The entry id cannot be null or empty. or updatedMessage; The message cannot be null.
      • changeMessages

        public final void changeMessages(Iterable<String> entryIdCollection,
                          MapiPropertyCollection updatedProperties)

        Changes the messages in folder.

        Parameters:
        entryIdCollection - The entry identifier collection.
        updatedProperties - The updated properties.
        Throws:
        com.aspose.ms.System.NotImplementedException - The ANSI file version editing is not implemented.
        com.aspose.ms.System.InvalidOperationException - The PST is open for reading only. or The entryId is incorrect.
        com.aspose.ms.System.ArgumentNullException - entryIdCollection;The collection of entry ids cannot be null. or updatedProperties;The collection of properties cannot be null.
      • changeMessages

        public final void changeMessages(MapiPropertyCollection updatedProperties)

        Changes all messages in folder.

        Parameters:
        updatedProperties - The updated properties.
        Throws:
        com.aspose.ms.System.NotImplementedException - The ANSI file version editing is not implemented.
        com.aspose.ms.System.InvalidOperationException - The PST is open for reading only. or The entryId is incorrect.
        com.aspose.ms.System.ArgumentNullException - entryIdCollection;The collection of entry ids cannot be null. or updatedProperties;The collection of properties cannot be null.
      • changeContainerClass

        public final void changeContainerClass(String containerClass)

        Changes the container class.

        Parameters:
        containerClass - Container class of the of the folder object.
        Throws:
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.
      • changeDisplayName

        public final void changeDisplayName(String newName)

        Changes the display name.

        Parameters:
        newName - A new name.
        Throws:
        com.aspose.ms.System.InvalidOperationException - throws, if a PST is open for reading only.
        com.aspose.ms.System.NotImplementedException - throws, if a PST file version is ANSI.