Class SummaryInformation


  • public final class SummaryInformation
    extends PropertySet
    Convenience class representing a Summary Information stream in a Microsoft Office document.
    See Also:
    DocumentSummaryInformation
    • Field Detail

      • DEFAULT_STREAM_NAME

        public static final java.lang.String DEFAULT_STREAM_NAME
        The document name a summary information stream usually has in a POIFS filesystem.
        See Also:
        Constant Field Values
      • FORMAT_ID

        public static final ClassID FORMAT_ID
        The SummaryInformation's section's format ID.
    • Constructor Detail

      • SummaryInformation

        public SummaryInformation​(java.io.InputStream stream)
                           throws NoPropertySetStreamException,
                                  MarkUnsupportedException,
                                  java.io.IOException,
                                  java.io.UnsupportedEncodingException
        Creates a SummaryInformation instance from an InputStream in the Horrible Property Set Format.

        The constructor reads the first few bytes from the stream and determines whether it is really a property set stream. If it is, it parses the rest of the stream. If it is not, it resets the stream to its beginning in order to let other components mess around with the data and throws an exception.

        Parameters:
        stream - Holds the data making out the property set stream.
        Throws:
        MarkUnsupportedException - if the stream does not support the InputStream.markSupported() method.
        java.io.IOException - if the InputStream cannot be accessed as needed.
        NoPropertySetStreamException - if the input stream does not contain a property set.
        java.io.UnsupportedEncodingException - if a character encoding is not supported.
    • Method Detail

      • getPropertySetIDMap

        public PropertyIDMap getPropertySetIDMap()
        Description copied from class: PropertySet
        The id to name mapping of the properties in this set.
        Overrides:
        getPropertySetIDMap in class PropertySet
        Returns:
        the id to name mapping of the properties in this set or null if not applicable
      • getTitle

        public java.lang.String getTitle()
        Returns:
        The title or null
      • setTitle

        public void setTitle​(java.lang.String title)
        Sets the title.
        Parameters:
        title - The title to set.
      • removeTitle

        public void removeTitle()
        Removes the title.
      • getSubject

        public java.lang.String getSubject()
        Returns the subject (or null).
        Returns:
        The subject or null
      • setSubject

        public void setSubject​(java.lang.String subject)
        Sets the subject.
        Parameters:
        subject - The subject to set.
      • removeSubject

        public void removeSubject()
        Removes the subject.
      • getAuthor

        public java.lang.String getAuthor()
        Returns the author (or null).
        Returns:
        The author or null
      • setAuthor

        public void setAuthor​(java.lang.String author)
        Sets the author.
        Parameters:
        author - The author to set.
      • removeAuthor

        public void removeAuthor()
        Removes the author.
      • getKeywords

        public java.lang.String getKeywords()
        Returns the keywords (or null).
        Returns:
        The keywords or null
      • setKeywords

        public void setKeywords​(java.lang.String keywords)
        Sets the keywords.
        Parameters:
        keywords - The keywords to set.
      • removeKeywords

        public void removeKeywords()
        Removes the keywords.
      • getComments

        public java.lang.String getComments()
        Returns the comments (or null).
        Returns:
        The comments or null
      • setComments

        public void setComments​(java.lang.String comments)
        Sets the comments.
        Parameters:
        comments - The comments to set.
      • removeComments

        public void removeComments()
        Removes the comments.
      • getTemplate

        public java.lang.String getTemplate()
        Returns the template (or null).
        Returns:
        The template or null
      • setTemplate

        public void setTemplate​(java.lang.String template)
        Sets the template.
        Parameters:
        template - The template to set.
      • removeTemplate

        public void removeTemplate()
        Removes the template.
      • getLastAuthor

        public java.lang.String getLastAuthor()
        Returns the last author (or null).
        Returns:
        The last author or null
      • setLastAuthor

        public void setLastAuthor​(java.lang.String lastAuthor)
        Sets the last author.
        Parameters:
        lastAuthor - The last author to set.
      • removeLastAuthor

        public void removeLastAuthor()
        Removes the last author.
      • getRevNumber

        public java.lang.String getRevNumber()
        Returns the revision number (or null).
        Returns:
        The revision number or null
      • setRevNumber

        public void setRevNumber​(java.lang.String revNumber)
        Sets the revision number.
        Parameters:
        revNumber - The revision number to set.
      • removeRevNumber

        public void removeRevNumber()
        Removes the revision number.
      • getEditTime

        public long getEditTime()
        Returns the total time spent in editing the document (or 0).
        Returns:
        The total time spent in editing the document or 0 if the SummaryInformation does not contain this information.
      • setEditTime

        public void setEditTime​(long time)
        Sets the total time spent in editing the document.
        Parameters:
        time - The time to set.
      • removeEditTime

        public void removeEditTime()
        Remove the total time spent in editing the document.
      • getLastPrinted

        public java.util.Date getLastPrinted()
        Returns the last printed time (or null).
        Returns:
        The last printed time or null
      • setLastPrinted

        public void setLastPrinted​(java.util.Date lastPrinted)
        Sets the lastPrinted.
        Parameters:
        lastPrinted - The lastPrinted to set.
      • removeLastPrinted

        public void removeLastPrinted()
        Removes the lastPrinted.
      • getCreateDateTime

        public java.util.Date getCreateDateTime()
        Returns the creation time (or null).
        Returns:
        The creation time or null
      • setCreateDateTime

        public void setCreateDateTime​(java.util.Date createDateTime)
        Sets the creation time.
        Parameters:
        createDateTime - The creation time to set.
      • removeCreateDateTime

        public void removeCreateDateTime()
        Removes the creation time.
      • getLastSaveDateTime

        public java.util.Date getLastSaveDateTime()
        Returns the last save time (or null).
        Returns:
        The last save time or null
      • setLastSaveDateTime

        public void setLastSaveDateTime​(java.util.Date time)
        Sets the total time spent in editing the document.
        Parameters:
        time - The time to set.
      • removeLastSaveDateTime

        public void removeLastSaveDateTime()
        Remove the total time spent in editing the document.
      • getPageCount

        public int getPageCount()
        Returns the page count or 0 if the SummaryInformation does not contain a page count.
        Returns:
        The page count or 0 if the SummaryInformation does not contain a page count.
      • setPageCount

        public void setPageCount​(int pageCount)
        Sets the page count.
        Parameters:
        pageCount - The page count to set.
      • removePageCount

        public void removePageCount()
        Removes the page count.
      • getWordCount

        public int getWordCount()
        Returns the word count or 0 if the SummaryInformation does not contain a word count.
        Returns:
        The word count or null
      • setWordCount

        public void setWordCount​(int wordCount)
        Sets the word count.
        Parameters:
        wordCount - The word count to set.
      • removeWordCount

        public void removeWordCount()
        Removes the word count.
      • getCharCount

        public int getCharCount()
        Returns the character count or 0 if the SummaryInformation does not contain a char count.
        Returns:
        The character count or null
      • setCharCount

        public void setCharCount​(int charCount)
        Sets the character count.
        Parameters:
        charCount - The character count to set.
      • removeCharCount

        public void removeCharCount()
        Removes the character count.
      • getThumbnail

        public byte[] getThumbnail()
        Returns the thumbnail (or null) when this method is implemented. Please note that the return type is likely to change!

        To process this data, you may wish to make use of the Thumbnail class. The raw data is generally an image in WMF or Clipboard (BMP?) format

        Returns:
        The thumbnail or null
      • getThumbnailThumbnail

        public Thumbnail getThumbnailThumbnail()
        Returns the thumbnail (or null), processed as an object which is (largely) able to unpack the thumbnail image data.
        Returns:
        The thumbnail or null
      • setThumbnail

        public void setThumbnail​(byte[] thumbnail)
        Sets the thumbnail.
        Parameters:
        thumbnail - The thumbnail to set.
      • removeThumbnail

        public void removeThumbnail()
        Removes the thumbnail.
      • getApplicationName

        public java.lang.String getApplicationName()
        Returns the application name (or null).
        Returns:
        The application name or null
      • setApplicationName

        public void setApplicationName​(java.lang.String applicationName)
        Sets the application name.
        Parameters:
        applicationName - The application name to set.
      • removeApplicationName

        public void removeApplicationName()
        Removes the application name.
      • getSecurity

        public int getSecurity()
        Returns a security code which is one of the following values:
        • 0 if the SummaryInformation does not contain a security field or if there is no security on the document. Use PropertySet.wasNull() to distinguish between the two cases!
        • 1 if the document is password protected
        • 2 if the document is read-only recommended
        • 4 if the document is read-only enforced
        • 8 if the document is locked for annotations
        Returns:
        The security code or null
      • setSecurity

        public void setSecurity​(int security)
        Sets the security code.
        Parameters:
        security - The security code to set.
      • removeSecurity

        public void removeSecurity()
        Removes the security code.