Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.poi.poifs.filesystem
Class POIFSDocument

    java.lang.Object
      org.apache.poi.poifs.filesystem.POIFSDocument

All Implemented Interfaces:
  POIFSViewable, BATManaged, BlockWritable

    public final class POIFSDocument

extends java.lang.Object
implements BATManaged, BlockWritable, POIFSViewable

This class manages a document in the POIFS filesystem.

Author:
  Marc Johnson (mjohnson at apache dot org)

Constructor Summary
`POIFSDocument(java.lang.String name, java.io.InputStream stream)`
`POIFSDocument(java.lang.String name, int size, POIFSBigBlockSize bigBlockSize, POIFSDocumentPath path, POIFSWriterListener writer)` Constructor
`POIFSDocument(java.lang.String name, int size, POIFSDocumentPath path, POIFSWriterListener writer)`
`POIFSDocument(java.lang.String name, ListManagedBlock[] blocks, int length)`
`POIFSDocument(java.lang.String name, POIFSBigBlockSize bigBlockSize, java.io.InputStream stream)` Constructor
`POIFSDocument(java.lang.String name, POIFSBigBlockSize bigBlockSize, ListManagedBlock[] blocks, int length)` Constructor from small blocks
`POIFSDocument(java.lang.String name, RawDataBlock[] blocks, int length)` Constructor from large blocks
`POIFSDocument(java.lang.String name, SmallDocumentBlock[] blocks, int length)` Constructor from small blocks

Method Summary
`int` | `countBlocks()` Return the number of BigBlock's this instance uses
`java.lang.String` | `getShortDescription()` Provides a short description of the object, to be used when a POIFSViewable object has not provided its contents.
`int` | `getSize()`
`BlockWritable[]` | `getSmallBlocks()`
`java.lang.Object[]` | `getViewableArray()` Get an array of objects, some of which may implement POIFSViewable
`java.util.Iterator` | `getViewableIterator()` Get an Iterator of objects, some of which may implement POIFSViewable
`boolean` | `preferArray()` Give viewers a hint as to whether to call getViewableArray or getViewableIterator
`void` | `setStartBlock(int index)` Set the start block for this instance
`void` | `writeBlocks(java.io.OutputStream stream)` Write the storage to an OutputStream

Methods inherited from class java.lang.Object
`equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         RawDataBlock[] blocks,
                         int length)
                  throws java.io.IOException

  Constructor from large blocks

  Parameters:
    `name` - the name of the POIFSDocument
    `blocks` - the big blocks making up the POIFSDocument
    `length` - the actual length of the POIFSDocument
  Throws:
    `java.io.IOException`

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         SmallDocumentBlock[] blocks,
                         int length)

  Constructor from small blocks

  Parameters:
    `name` - the name of the POIFSDocument
    `blocks` - the small blocks making up the POIFSDocument
    `length` - the actual length of the POIFSDocument

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         POIFSBigBlockSize bigBlockSize,
                         ListManagedBlock[] blocks,
                         int length)
                  throws java.io.IOException

  Constructor from small blocks

  Parameters:
    `name` - the name of the POIFSDocument
    `blocks` - the small blocks making up the POIFSDocument
    `length` - the actual length of the POIFSDocument
  Throws:
    `java.io.IOException`

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         ListManagedBlock[] blocks,
                         int length)
                  throws java.io.IOException

Throws:
  `java.io.IOException`

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         POIFSBigBlockSize bigBlockSize,
                         java.io.InputStream stream)
                  throws java.io.IOException

  Constructor

  Parameters:
    `name` - the name of the POIFSDocument
    `stream` - the InputStream we read data from
  Throws:
    `java.io.IOException`

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         java.io.InputStream stream)
                  throws java.io.IOException

Throws:
  `java.io.IOException`

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         int size,
                         POIFSBigBlockSize bigBlockSize,
                         POIFSDocumentPath path,
                         POIFSWriterListener writer)

  Constructor

  Parameters:
    `name` - the name of the POIFSDocument
    `size` - the length of the POIFSDocument
    `path` - the path of the POIFSDocument
    `writer` - the writer who will eventually write the document contents

### POIFSDocument

    public POIFSDocument(java.lang.String name,
                         int size,
                         POIFSDocumentPath path,
                         POIFSWriterListener writer)

Method Detail

### getSmallBlocks

    public BlockWritable[] getSmallBlocks()

  Returns:
    array of SmallDocumentBlocks; may be empty, cannot be null

### getSize

    public int getSize()

  Returns:
    size of the document

### writeBlocks

    public void writeBlocks(java.io.OutputStream stream)
                     throws java.io.IOException

  Write the storage to an OutputStream

  Specified by:
    `writeBlocks` in interface `BlockWritable`
  Parameters:
    `stream` - the OutputStream to which the stored data should be written
  Throws:
    `java.io.IOException` - on problems writing to the specified stream

### countBlocks

    public int countBlocks()

  Return the number of BigBlock's this instance uses

  Specified by:
    `countBlocks` in interface `BATManaged`
  Returns:
    count of BigBlock instances

### setStartBlock

    public void setStartBlock(int index)

  Set the start block for this instance

  Specified by:
    `setStartBlock` in interface `BATManaged`
  Parameters:
    `index` - index into the array of blocks making up the filesystem

### getViewableArray

    public java.lang.Object[] getViewableArray()

  Get an array of objects, some of which may implement POIFSViewable

  Specified by:
    `getViewableArray` in interface `POIFSViewable`
  Returns:
    an array of Object; may not be null, but may be empty

### getViewableIterator

    public java.util.Iterator getViewableIterator()

  Get an Iterator of objects, some of which may implement POIFSViewable

  Specified by:
    `getViewableIterator` in interface `POIFSViewable`
  Returns:
    an Iterator; may not be null, but may have an empty back end store

### preferArray

    public boolean preferArray()

  Give viewers a hint as to whether to call getViewableArray or getViewableIterator

  Specified by:
    `preferArray` in interface `POIFSViewable`
  Returns:
    `true` if a viewer should call getViewableArray, `false` if a viewer should call getViewableIterator

### getShortDescription

    public java.lang.String getShortDescription()

  Provides a short description of the object, to be used when a POIFSViewable object has not provided its contents.

  Specified by:
    `getShortDescription` in interface `POIFSViewable`
  Returns:
    short description

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD