Class SectionIDMap

  • All Implemented Interfaces:
    Serializable, Cloneable, Map

    public class SectionIDMap
    extends HashMap

    Maps section format IDs to PropertyIDMaps. It is initialized with two well-known section format IDs: those of the \005SummaryInformation stream and the \005DocumentSummaryInformation stream.

    If you have a section format ID you can use it as a key to query this map. If you get a PropertyIDMap returned your section is well-known and you can query the PropertyIDMap for PID strings. If you get back null you are on your own.

    This Map expects the byte arrays of section format IDs as keys. A key maps to a PropertyIDMap describing the property IDs in sections with the specified section format ID.

    Since:
    2002-02-09
    Version:
    $Id: SectionIDMap.java 489730 2006-12-22 19:18:16Z bayard $
    Author:
    Rainer Klute (klute@rainer-klute.de)
    See Also:
    Serialized Form
    • Field Detail

      • SUMMARY_INFORMATION_ID

        public static final byte[] SUMMARY_INFORMATION_ID

        The SummaryInformation's section's format ID.

      • DOCUMENT_SUMMARY_INFORMATION_ID

        public static final byte[][] DOCUMENT_SUMMARY_INFORMATION_ID

        The DocumentSummaryInformation's first and second sections' format ID.

      • UNDEFINED

        public static final String UNDEFINED

        A property without a known name is described by this string.

        See Also:
        Constant Field Values
    • Constructor Detail

      • SectionIDMap

        public SectionIDMap()
    • Method Detail

      • getInstance

        public static SectionIDMap getInstance()

        Returns the singleton instance of the default SectionIDMap.

        Returns:
        The instance value
      • getPIDString

        public static String getPIDString​(byte[] sectionFormatID,
                                          long pid)

        Returns the property ID string that is associated with a given property ID in a section format ID's namespace.

        Parameters:
        sectionFormatID - Each section format ID has its own name space of property ID strings and thus must be specified.
        pid - The property ID
        Returns:
        The well-known property ID string associated with the property ID pid in the name space spanned by sectionFormatID . If the pid /sectionFormatID combination is not well-known, the string "[undefined]" is returned.
      • get

        public PropertyIDMap get​(byte[] sectionFormatID)

        Returns the PropertyIDMap for a given section format ID.

        Parameters:
        sectionFormatID - the section format ID
        Returns:
        the property ID map
      • get

        public Object get​(Object sectionFormatID)
        Deprecated.
        Use get(byte[]) instead!

        Returns the PropertyIDMap for a given section format ID.

        Specified by:
        get in interface Map
        Overrides:
        get in class HashMap
        Parameters:
        sectionFormatID - A section format ID as a byte[] .
        Returns:
        the property ID map
      • put

        public Object put​(byte[] sectionFormatID,
                          PropertyIDMap propertyIDMap)

        Associates a section format ID with a PropertyIDMap.

        Parameters:
        sectionFormatID - the section format ID
        propertyIDMap - the property ID map
        Returns:
        as defined by Map.put(K, V)
      • put

        public Object put​(Object key,
                          Object value)
        Deprecated.
        Specified by:
        put in interface Map
        Overrides:
        put in class HashMap
        Parameters:
        key - This parameter remains undocumented since the method is deprecated.
        value - This parameter remains undocumented since the method is deprecated.
        Returns:
        The return value remains undocumented since the method is deprecated.
        See Also:
        put(byte[], PropertyIDMap)