org.apache.poi
Class POIDocument

java.lang.Object
  extended by org.apache.poi.POIDocument
Direct Known Subclasses:
HDGFDiagram, HSLFSlideShow, HSSFWorkbook, HWPFDocument

public abstract class POIDocument
extends java.lang.Object

This holds the common functionality for all POI Document classes. Currently, this relates to Document Information Properties

Author:
Nick Burch

Field Summary
protected  DirectoryNode directory
          The directory that our document lives in
protected  DocumentSummaryInformation dsInf
          Holds further metadata on our document
protected  POIFSFileSystem filesystem
          The open POIFS FileSystem that contains our document
protected  boolean initialized
           
protected  POILogger logger
          For our own logging use
protected  SummaryInformation sInf
          Holds metadata on our document
 
Constructor Summary
protected POIDocument(DirectoryNode dir, POIFSFileSystem fs)
           
protected POIDocument(POIFSFileSystem fs)
           
 
Method Summary
protected  void copyNodes(POIFSFileSystem source, POIFSFileSystem target, java.util.List excepts)
          Copies nodes from one POIFS to the other minus the excepts
 DocumentSummaryInformation getDocumentSummaryInformation()
          Fetch the Document Summary Information of the document
protected  PropertySet getPropertySet(java.lang.String setName)
          For a given named property entry, either return it or null if if it wasn't found
 SummaryInformation getSummaryInformation()
          Fetch the Summary Information of the document
protected  void readProperties()
          Find, and create objects for, the standard Documment Information Properties (HPSF).
abstract  void write(java.io.OutputStream out)
          Writes the document out to the specified output stream
protected  void writeProperties(POIFSFileSystem outFS)
          Writes out the standard Documment Information Properties (HPSF)
protected  void writeProperties(POIFSFileSystem outFS, java.util.List writtenEntries)
          Writes out the standard Documment Information Properties (HPSF)
protected  void writePropertySet(java.lang.String name, PropertySet set, POIFSFileSystem outFS)
          Writes out a given ProperySet
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

sInf

protected SummaryInformation sInf
Holds metadata on our document


dsInf

protected DocumentSummaryInformation dsInf
Holds further metadata on our document


filesystem

protected POIFSFileSystem filesystem
The open POIFS FileSystem that contains our document


directory

protected DirectoryNode directory
The directory that our document lives in


logger

protected POILogger logger
For our own logging use


initialized

protected boolean initialized
Constructor Detail

POIDocument

protected POIDocument(DirectoryNode dir,
                      POIFSFileSystem fs)

POIDocument

protected POIDocument(POIFSFileSystem fs)
Method Detail

getDocumentSummaryInformation

public DocumentSummaryInformation getDocumentSummaryInformation()
Fetch the Document Summary Information of the document


getSummaryInformation

public SummaryInformation getSummaryInformation()
Fetch the Summary Information of the document


readProperties

protected void readProperties()
Find, and create objects for, the standard Documment Information Properties (HPSF). If a given property set is missing or corrupt, it will remain null;


getPropertySet

protected PropertySet getPropertySet(java.lang.String setName)
For a given named property entry, either return it or null if if it wasn't found


writeProperties

protected void writeProperties(POIFSFileSystem outFS)
                        throws java.io.IOException
Writes out the standard Documment Information Properties (HPSF)

Parameters:
outFS - the POIFSFileSystem to write the properties into
Throws:
java.io.IOException

writeProperties

protected void writeProperties(POIFSFileSystem outFS,
                               java.util.List writtenEntries)
                        throws java.io.IOException
Writes out the standard Documment Information Properties (HPSF)

Parameters:
outFS - the POIFSFileSystem to write the properties into
writtenEntries - a list of POIFS entries to add the property names too
Throws:
java.io.IOException

writePropertySet

protected void writePropertySet(java.lang.String name,
                                PropertySet set,
                                POIFSFileSystem outFS)
                         throws java.io.IOException
Writes out a given ProperySet

Parameters:
name - the (POIFS Level) name of the property to write
set - the PropertySet to write out
outFS - the POIFSFileSystem to write the property into
Throws:
java.io.IOException

write

public abstract void write(java.io.OutputStream out)
                    throws java.io.IOException
Writes the document out to the specified output stream

Throws:
java.io.IOException

copyNodes

protected void copyNodes(POIFSFileSystem source,
                         POIFSFileSystem target,
                         java.util.List excepts)
                  throws java.io.IOException
Copies nodes from one POIFS to the other minus the excepts

Parameters:
source - is the source POIFS to copy from
target - is the target POIFS to copy to
excepts - is a list of Strings specifying what nodes NOT to copy
Throws:
java.io.IOException


Copyright 2008 The Apache Software Foundation or its licensors, as applicable.