Class SectionIDMap

java.lang.Object
java.util.AbstractMap<K,​V>
java.util.HashMap
org.docx4j.org.apache.poi.hpsf.wellknown.SectionIDMap
All Implemented Interfaces:
java.io.Serializable, java.lang.Cloneable, java.util.Map

public class SectionIDMap
extends java.util.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.

Author:
Rainer Klute (klute@rainer-klute.de)
See Also:
Serialized Form
  • Nested Class Summary

    Nested classes/interfaces inherited from class java.util.AbstractMap

    java.util.AbstractMap.SimpleEntry<K extends java.lang.Object,​V extends java.lang.Object>, java.util.AbstractMap.SimpleImmutableEntry<K extends java.lang.Object,​V extends java.lang.Object>

    Nested classes/interfaces inherited from interface java.util.Map

    java.util.Map.Entry<K extends java.lang.Object,​V extends java.lang.Object>
  • Field Summary

    Fields 
    Modifier and Type Field Description
    static byte[][] DOCUMENT_SUMMARY_INFORMATION_ID
    The DocumentSummaryInformation's first and second sections' format ID.
    static byte[] SUMMARY_INFORMATION_ID
    The SummaryInformation's section's format ID.
    static java.lang.String UNDEFINED
    A property without a known name is described by this string.
  • Constructor Summary

    Constructors 
    Constructor Description
    SectionIDMap()  
  • Method Summary

    Modifier and Type Method Description
    PropertyIDMap get​(byte[] sectionFormatID)
    Returns the PropertyIDMap for a given section format ID.
    java.lang.Object get​(java.lang.Object sectionFormatID)
    Deprecated.
    Use get(byte[]) instead!
    static SectionIDMap getInstance()
    Returns the singleton instance of the default SectionIDMap.
    static java.lang.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.
    java.lang.Object put​(byte[] sectionFormatID, PropertyIDMap propertyIDMap)
    Associates a section format ID with a PropertyIDMap.
    java.lang.Object put​(java.lang.Object key, java.lang.Object value)
    Deprecated.

    Methods inherited from class java.util.HashMap

    clear, clone, compute, computeIfAbsent, computeIfPresent, containsKey, containsValue, entrySet, forEach, getOrDefault, isEmpty, keySet, merge, putAll, putIfAbsent, remove, remove, replace, replace, replaceAll, size, values

    Methods inherited from class java.util.AbstractMap

    equals, hashCode, toString

    Methods inherited from class java.lang.Object

    finalize, getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.util.Map

    equals, hashCode
  • Field Details

    • 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 java.lang.String UNDEFINED

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

      See Also:
      Constant Field Values
  • Constructor Details

  • Method Details

    • getInstance

      public static SectionIDMap getInstance()

      Returns the singleton instance of the default SectionIDMap.

      Returns:
      The instance value
    • getPIDString

      public static java.lang.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 java.lang.Object get​(java.lang.Object sectionFormatID)
      Deprecated.
      Use get(byte[]) instead!

      Returns the PropertyIDMap for a given section format ID.

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

      public java.lang.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 java.lang.Object put​(java.lang.Object key, java.lang.Object value)
      Deprecated.
      Specified by:
      put in interface java.util.Map
      Overrides:
      put in class java.util.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)