Class DocumentSummaryInformation


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

      • DEFAULT_STREAM_NAME

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

        public static final ClassID[] FORMAT_ID
    • Constructor Detail

      • DocumentSummaryInformation

        public DocumentSummaryInformation​(java.io.InputStream stream)
                                   throws NoPropertySetStreamException,
                                          MarkUnsupportedException,
                                          java.io.IOException,
                                          java.io.UnsupportedEncodingException
        Creates a DocumentSummaryInformation 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
      • getCategory

        public java.lang.String getCategory()
        Returns the category (or null).
        Returns:
        The category value
      • setCategory

        public void setCategory​(java.lang.String category)
        Sets the category.
        Parameters:
        category - The category to set.
      • removeCategory

        public void removeCategory()
        Removes the category.
      • getPresentationFormat

        public java.lang.String getPresentationFormat()
        Returns the presentation format (or null).
        Returns:
        The presentation format value
      • setPresentationFormat

        public void setPresentationFormat​(java.lang.String presentationFormat)
        Sets the presentation format.
        Parameters:
        presentationFormat - The presentation format to set.
      • removePresentationFormat

        public void removePresentationFormat()
        Removes the presentation format.
      • getByteCount

        public int getByteCount()
        Returns the byte count or 0 if the DocumentSummaryInformation does not contain a byte count.
        Returns:
        The byteCount value
      • setByteCount

        public void setByteCount​(int byteCount)
        Sets the byte count.
        Parameters:
        byteCount - The byte count to set.
      • removeByteCount

        public void removeByteCount()
        Removes the byte count.
      • getLineCount

        public int getLineCount()
        Returns the line count or 0 if the DocumentSummaryInformation does not contain a line count.
        Returns:
        The line count value
      • setLineCount

        public void setLineCount​(int lineCount)
        Sets the line count.
        Parameters:
        lineCount - The line count to set.
      • removeLineCount

        public void removeLineCount()
        Removes the line count.
      • getParCount

        public int getParCount()
        Returns the par count or 0 if the DocumentSummaryInformation does not contain a par count.
        Returns:
        The par count value
      • setParCount

        public void setParCount​(int parCount)
        Sets the par count.
        Parameters:
        parCount - The par count to set.
      • removeParCount

        public void removeParCount()
        Removes the par count.
      • getSlideCount

        public int getSlideCount()
        Returns the slide count or 0 if the DocumentSummaryInformation does not contain a slide count.
        Returns:
        The slide count value
      • setSlideCount

        public void setSlideCount​(int slideCount)
        Sets the slideCount.
        Parameters:
        slideCount - The slide count to set.
      • removeSlideCount

        public void removeSlideCount()
        Removes the slide count.
      • getNoteCount

        public int getNoteCount()
        Returns the note count or 0 if the DocumentSummaryInformation does not contain a note count.
        Returns:
        The note count value
      • setNoteCount

        public void setNoteCount​(int noteCount)
        Sets the note count.
        Parameters:
        noteCount - The note count to set.
      • removeNoteCount

        public void removeNoteCount()
        Removes the noteCount.
      • getHiddenCount

        public int getHiddenCount()
        Returns the hidden count or 0 if the DocumentSummaryInformation does not contain a hidden count.
        Returns:
        The hidden count value
      • setHiddenCount

        public void setHiddenCount​(int hiddenCount)
        Sets the hidden count.
        Parameters:
        hiddenCount - The hidden count to set.
      • removeHiddenCount

        public void removeHiddenCount()
        Removes the hidden count.
      • getMMClipCount

        public int getMMClipCount()
        Returns the mmclip count or 0 if the DocumentSummaryInformation does not contain a mmclip count.
        Returns:
        The mmclip count value
      • setMMClipCount

        public void setMMClipCount​(int mmClipCount)
        Sets the mmclip count.
        Parameters:
        mmClipCount - The mmclip count to set.
      • removeMMClipCount

        public void removeMMClipCount()
        Removes the mmclip count.
      • getScale

        public boolean getScale()
        Returns true when scaling of the thumbnail is desired, false if cropping is desired.
        Returns:
        The scale value
      • setScale

        public void setScale​(boolean scale)
        Sets the scale.
        Parameters:
        scale - The scale to set.
      • removeScale

        public void removeScale()
        Removes the scale.
      • getHeadingPair

        public byte[] getHeadingPair()

        Returns the heading pair (or null) when this method is implemented. Please note that the return type is likely to change!

        Returns:
        The heading pair value
      • setHeadingPair

        public void setHeadingPair​(byte[] headingPair)
        Sets the heading pair.
        Parameters:
        headingPair - The heading pair to set.
      • removeHeadingPair

        public void removeHeadingPair()
        Removes the heading pair.
      • getDocparts

        public byte[] getDocparts()

        Returns the doc parts (or null) when this method is implemented. Please note that the return type is likely to change!

        Returns:
        The doc parts value
      • setDocparts

        public void setDocparts​(byte[] docparts)
        Sets the doc parts.
        Parameters:
        docparts - The doc parts to set.
      • removeDocparts

        public void removeDocparts()
        Removes the doc parts.
      • getManager

        public java.lang.String getManager()
        Returns the manager (or null).
        Returns:
        The manager value
      • setManager

        public void setManager​(java.lang.String manager)
        Sets the manager.
        Parameters:
        manager - The manager to set.
      • removeManager

        public void removeManager()
        Removes the manager.
      • getCompany

        public java.lang.String getCompany()
        Returns the company (or null).
        Returns:
        The company value
      • setCompany

        public void setCompany​(java.lang.String company)
        Sets the company.
        Parameters:
        company - The company to set.
      • removeCompany

        public void removeCompany()
        Removes the company.
      • getLinksDirty

        public boolean getLinksDirty()
        Returns true if the custom links are dirty.

        Returns:
        The links dirty value
      • setLinksDirty

        public void setLinksDirty​(boolean linksDirty)
        Sets the linksDirty.
        Parameters:
        linksDirty - The links dirty value to set.
      • removeLinksDirty

        public void removeLinksDirty()
        Removes the links dirty.
      • getCharCountWithSpaces

        public int getCharCountWithSpaces()
        Returns the character count including whitespace, or 0 if the DocumentSummaryInformation does not contain this char count.

        This is the whitespace-including version of SummaryInformation.getCharCount()

        Returns:
        The character count or null
      • setCharCountWithSpaces

        public void setCharCountWithSpaces​(int count)
        Sets the character count including whitespace
        Parameters:
        count - The character count to set.
      • removeCharCountWithSpaces

        public void removeCharCountWithSpaces()
        Removes the character count
      • getHyperlinksChanged

        public boolean getHyperlinksChanged()
        Get if the User Defined Property Set has been updated outside of the Application.

        If it has (true), the hyperlinks should be updated on document load.

        Returns:
        true, if the hyperlinks should be updated on document load
      • setHyperlinksChanged

        public void setHyperlinksChanged​(boolean changed)
        Set the flag for if the User Defined Property Set has been updated outside of the Application.
        Parameters:
        changed - true, if the User Defined Property Set has been updated
      • removeHyperlinksChanged

        public void removeHyperlinksChanged()
        Removes the flag for if the User Defined Property Set has been updated outside of the Application.
      • getApplicationVersion

        public int getApplicationVersion()
        Gets the version of the Application which wrote the Property set, stored with the two high order bytes having the major version number, and the two low order bytes the minor version number.

        This will be 0 if no version is set.

        Returns:
        the Application version
      • setApplicationVersion

        public void setApplicationVersion​(int version)
        Sets the Application version, which must be a 4 byte int with the two high order bytes having the major version number, and the two low order bytes the minor version number.
        Parameters:
        version - the Application version
      • removeApplicationVersion

        public void removeApplicationVersion()
        Removes the Application Version
      • getVBADigitalSignature

        public byte[] getVBADigitalSignature()
        Returns the VBA digital signature for the VBA project embedded in the document (or null).
        Returns:
        the VBA digital signature
      • setVBADigitalSignature

        public void setVBADigitalSignature​(byte[] signature)
        Sets the VBA digital signature for the VBA project embedded in the document.
        Parameters:
        signature - VBA Digital Signature for the project
      • removeVBADigitalSignature

        public void removeVBADigitalSignature()
        Removes the VBA Digital Signature
      • getContentType

        public java.lang.String getContentType()
        Gets the content type of the file (or null).
        Returns:
        the content type of the file
      • setContentType

        public void setContentType​(java.lang.String type)
        Sets the content type of the file
        Parameters:
        type - the content type of the file
      • removeContentType

        public void removeContentType()
        Removes the content type of the file
      • getContentStatus

        public java.lang.String getContentStatus()
        Gets the content status of the file (or null).
        Returns:
        the content status of the file
      • setContentStatus

        public void setContentStatus​(java.lang.String status)
        Sets the content status of the file
        Parameters:
        status - the content status of the file
      • removeContentStatus

        public void removeContentStatus()
        Removes the content status of the file
      • getLanguage

        public java.lang.String getLanguage()
        Gets the document language, which is normally unset and empty (or null).
        Returns:
        the document language
      • setLanguage

        public void setLanguage​(java.lang.String language)
        Set the document language
        Parameters:
        language - the document language
      • removeLanguage

        public void removeLanguage()
        Removes the document language
      • getDocumentVersion

        public java.lang.String getDocumentVersion()
        Gets the document version as a string, which is normally unset and empty (or null).
        Returns:
        the document verion
      • setDocumentVersion

        public void setDocumentVersion​(java.lang.String version)
        Sets the document version string
        Parameters:
        version - the document version string
      • removeDocumentVersion

        public void removeDocumentVersion()
        Removes the document version string
      • getCustomProperties

        public CustomProperties getCustomProperties()
        Gets the custom properties.
        Returns:
        The custom properties.
      • setCustomProperties

        public void setCustomProperties​(CustomProperties customProperties)
        Sets the custom properties.
        Parameters:
        customProperties - The custom properties
      • removeCustomProperties

        public void removeCustomProperties()
        Removes the custom properties.