## org.apache.poi.poifs.filesystem
Interface DirectoryEntry

All Superinterfaces:
  Entry, java.lang.Iterable<Entry>

All Known Implementing Classes:
  DirectoryNode, FilteringDirectoryNode

    public interface DirectoryEntry

extends Entry, java.lang.Iterable<Entry>

This interface defines methods specific to Directory objects managed by a Filesystem instance.

Author:
  Marc Johnson (mjohnson at apache dot org)

Method Summary
`DirectoryEntry` `createDirectory(java.lang.String name)` create a new DirectoryEntry
`DocumentEntry` `createDocument(java.lang.String name, java.io.InputStream stream)` create a new DocumentEntry
`DocumentEntry` `createDocument(java.lang.String name, int size, POIFSWriterListener writer)` create a new DocumentEntry; the data will be provided later
`java.util.Iterator<Entry>` `getEntries()` get an iterator of the Entry instances contained directly in this instance (in other words, children only; no grandchildren etc.)
`Entry` `getEntry(java.lang.String name)` get a specified Entry by name
`int` `getEntryCount()` find out how many Entry instances are contained directly within this DirectoryEntry
`ClassID` `getStorageClsid()` Gets the storage clsid of the directory entry
`boolean` `hasEntry(java.lang.String name)` Checks if entry with specified name present
`boolean` `isEmpty()` is this DirectoryEntry empty?
`void` `setStorageClsid(ClassID clsidStorage)` Sets the storage clsid for the directory entry

Methods inherited from interface org.apache.poi.poifs.filesystem.Entry
`delete, getName, getParent, isDirectoryEntry, isDocumentEntry, renameTo`

Methods inherited from interface java.lang.Iterable
`iterator`

Method Detail

### getEntries

    java.util.Iterator<Entry> getEntries()

  get an iterator of the Entry instances contained directly in this instance (in other words, children only; no grandchildren etc.)

  Returns:
    iterator; never null, but hasNext() may return false immediately (i.e., this DirectoryEntry is empty). All objects retrieved by next() are guaranteed to be implementations of Entry.

### isEmpty

    boolean isEmpty()

  is this DirectoryEntry empty?

  Returns:
    true if this instance contains no Entry instances

### getEntryCount

    int getEntryCount()

  find out how many Entry instances are contained directly within this DirectoryEntry

  Returns:
    number of immediately (no grandchildren etc.) contained Entry instances

### hasEntry

    boolean hasEntry(java.lang.String name)

  Checks if entry with specified name present

### getEntry

    Entry getEntry(java.lang.String name)
                   throws java.io.FileNotFoundException

  get a specified Entry by name

  Parameters:
    `name` - the name of the Entry to obtain.
  Returns:
    the specified Entry, if it is directly contained in this DirectoryEntry
  Throws:
    `java.io.FileNotFoundException` - if no Entry with the specified name exists in this DirectoryEntry

### createDocument

    DocumentEntry createDocument(java.lang.String name,
                                 java.io.InputStream stream)
                                 throws java.io.IOException

  create a new DocumentEntry

  Parameters:
    `name` - the name of the new DocumentEntry
    `stream` - the InputStream from which to create the new DocumentEntry
  Returns:
    the new DocumentEntry
  Throws:
    `java.io.IOException`

### createDocument

    DocumentEntry createDocument(java.lang.String name,
                                 int size,
                                 POIFSWriterListener writer)
                                 throws java.io.IOException

  create a new DocumentEntry; the data will be provided later

  Parameters:
    `name` - the name of the new DocumentEntry
    `size` - the size of the new DocumentEntry
    `writer` - the writer of the new DocumentEntry
  Returns:
    the new DocumentEntry
  Throws:
    `java.io.IOException`

### createDirectory

    DirectoryEntry createDirectory(java.lang.String name)
                                   throws java.io.IOException

  create a new DirectoryEntry

  Parameters:
    `name` - the name of the new DirectoryEntry
  Returns:
    the new DirectoryEntry
  Throws:
    `java.io.IOException`

### getStorageClsid

    ClassID getStorageClsid()

  Gets the storage clsid of the directory entry

  Returns:
    storage Class ID

### setStorageClsid

    void setStorageClsid(ClassID clsidStorage)

  Sets the storage clsid for the directory entry

  Parameters:
    `clsidStorage` - storage Class ID

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