Package org.apache.poi.hsmf.datatypes
Class PropertiesChunk
java.lang.Object
org.apache.poi.hsmf.datatypes.Chunk
org.apache.poi.hsmf.datatypes.PropertiesChunk
- Direct Known Subclasses:
MessagePropertiesChunk
,StoragePropertiesChunk
A Chunk which holds (single) fixed-length properties, and pointer to the variable length ones / multi-valued ones (which get their own chunk).
There are two kinds of PropertiesChunks, which differ only in their headers.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final String
static final int
static final int
static final String
Fields inherited from class org.apache.poi.hsmf.datatypes.Chunk
DEFAULT_NAME_PREFIX
-
Constructor Summary
ConstructorsModifierConstructorDescriptionprotected
PropertiesChunk
(ChunkGroup parentGroup) Creates a Properties Chunk. -
Method Summary
Modifier and TypeMethodDescriptionCreates a string to use to identify this chunk in the POI file system object.Returns all the properties in the chunk, along with their values.Returns all the properties in the chunk, without looking up any chunk-based valuesgetRawValue
(MAPIProperty property) Returns the value / pointer to the value chunk of the property, or null if none existsgetValues
(MAPIProperty property) Returns all values for the given property, looking up chunk based ones as required, of null if none existprotected void
Called once the parent ChunkGroup has been populated, to match up the Chunks in it with our Variable Sized Properties.protected void
readProperties
(InputStream value) void
setProperty
(PropertyValue value) Defines a property.protected void
writeNodeData
(DirectoryEntry directory, List<PropertyValue> values) Write the nodes for variable-length data.protected List
<PropertyValue> Writes the header of the properties.void
writeProperties
(DirectoryEntry directory) Writes this chunk in the specifiedDirectoryEntry
.Methods inherited from class org.apache.poi.hsmf.datatypes.Chunk
getChunkId, getType, readValue, writeValue
-
Field Details
-
NAME
- See Also:
-
VARIABLE_LENGTH_PROPERTY_PREFIX
- See Also:
-
PROPERTIES_FLAG_READABLE
public static final int PROPERTIES_FLAG_READABLE- See Also:
-
PROPERTIES_FLAG_WRITEABLE
public static final int PROPERTIES_FLAG_WRITEABLE- See Also:
-
-
Constructor Details
-
PropertiesChunk
Creates a Properties Chunk.
-
-
Method Details
-
getEntryName
Description copied from class:Chunk
Creates a string to use to identify this chunk in the POI file system object.- Overrides:
getEntryName
in classChunk
-
getRawProperties
Returns all the properties in the chunk, without looking up any chunk-based values -
getProperties
Returns all the properties in the chunk, along with their values.
Any chunk-based values will be looked up and returned as such
-
setProperty
Defines a property. Multi-valued properties are not yet supported. -
getValues
Returns all values for the given property, looking up chunk based ones as required, of null if none exist -
getRawValue
Returns the value / pointer to the value chunk of the property, or null if none exists -
matchVariableSizedPropertiesToChunks
protected void matchVariableSizedPropertiesToChunks()Called once the parent ChunkGroup has been populated, to match up the Chunks in it with our Variable Sized Properties. -
readProperties
- Throws:
IOException
-
writeProperties
Writes this chunk in the specifiedDirectoryEntry
.- Parameters:
directory
- The directory.- Throws:
IOException
- If an I/O error occurs.
-
writeNodeData
protected void writeNodeData(DirectoryEntry directory, List<PropertyValue> values) throws IOException Write the nodes for variable-length data. Those properties are returned bywriteProperties(java.io.OutputStream)
.- Parameters:
directory
- The directory.values
- The values.- Throws:
IOException
- If an I/O error occurs.
-
writeProperties
Writes the header of the properties.- Parameters:
out
- TheOutputStream
.- Returns:
- The variable-length properties that need to be written in another node.
- Throws:
IOException
- If an I/O error occurs.
-