Package org.apache.poi.poifs.property
Class PropertyTable
java.lang.Object
org.apache.poi.poifs.property.PropertyTable
- All Implemented Interfaces:
BATManaged
This class embodies the Property Table for a
POIFSFileSystem
;
this is basically the directory for all of the documents in the
filesystem and looks up entries in the filesystem to their
chain of blocks.-
Constructor Summary
ConstructorsConstructorDescriptionPropertyTable
(HeaderBlock headerBlock) PropertyTable
(HeaderBlock headerBlock, POIFSFileSystem filesystem) reading constructor (used when we've read in a file and we want to extract the property table from it). -
Method Summary
Modifier and TypeMethodDescriptionvoid
addProperty
(Property property) Add a property to the list of properties we manageint
Return the number of BigBlock's this instance usesgetRoot()
Get the root propertyint
Get the start block for the property tablevoid
preWrite()
Prepare to be writtenvoid
removeProperty
(Property property) Remove a property from the list of properties we managevoid
setStartBlock
(int index) Set the start block for this instancevoid
write
(POIFSStream stream) Writes the properties out into the given low-level stream
-
Constructor Details
-
PropertyTable
-
PropertyTable
reading constructor (used when we've read in a file and we want to extract the property table from it). Populates the properties thoroughly- Parameters:
headerBlock
- the header block of the filefilesystem
- the filesystem to read from- Throws:
IOException
- if anything goes wrong (which should be a result of the input being NFG)
-
-
Method Details
-
addProperty
Add a property to the list of properties we manage- Parameters:
property
- the new Property to manage
-
removeProperty
Remove a property from the list of properties we manage- Parameters:
property
- the Property to be removed
-
getRoot
Get the root property- Returns:
- the root property
-
getStartBlock
public int getStartBlock()Get the start block for the property table- Returns:
- start block index
-
setStartBlock
public void setStartBlock(int index) Set the start block for this instance- Specified by:
setStartBlock
in interfaceBATManaged
- Parameters:
index
- index into the array of BigBlock instances making up the the filesystem
-
countBlocks
public int countBlocks()Return the number of BigBlock's this instance uses- Specified by:
countBlocks
in interfaceBATManaged
- Returns:
- count of BigBlock instances
-
preWrite
public void preWrite()Prepare to be written -
write
Writes the properties out into the given low-level stream- Throws:
IOException
-