public class DirectoryNode extends EntryNode implements DirectoryEntry, POIFSViewable, java.lang.Iterable<Entry>
| Modifier and Type | Method and Description |
|---|---|
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
|
DocumentInputStream |
createDocumentInputStream(Entry document)
open a document in the directory's entry's list of entries
|
DocumentInputStream |
createDocumentInputStream(java.lang.String documentName)
open a document in the directory's entry's list of entries
|
DocumentEntry |
createOrUpdateDocument(java.lang.String name,
java.io.InputStream stream)
Set the contents of a document, creating if needed,
otherwise updating.
|
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
|
java.util.Set<java.lang.String> |
getEntryNames()
get the names of all the Entries contained directly in this
instance (in other words, names of children only; no grandchildren
etc).
|
POIFSFileSystem |
getFileSystem() |
POIFSDocumentPath |
getPath() |
java.lang.String |
getShortDescription()
Provides a short description of the object, to be used when a
POIFSViewable object has not provided its contents.
|
ClassID |
getStorageClsid()
Gets the storage clsid of the directory entry
|
java.lang.Object[] |
getViewableArray()
Get an array of objects, some of which may implement
POIFSViewable
|
java.util.Iterator<java.lang.Object> |
getViewableIterator()
Get an Iterator of objects, some of which may implement
POIFSViewable
|
boolean |
hasEntry(java.lang.String name)
Checks if entry with specified name present
|
protected boolean |
isDeleteOK()
extensions use this method to verify internal rules regarding
deletion of the underlying store.
|
boolean |
isDirectoryEntry()
is this a DirectoryEntry?
|
boolean |
isEmpty()
is this DirectoryEntry empty?
|
java.util.Iterator<Entry> |
iterator()
Returns an Iterator over all the entries
|
boolean |
preferArray()
Give viewers a hint as to whether to call getViewableArray or
getViewableIterator
|
void |
setStorageClsid(ClassID clsidStorage)
Sets the storage clsid for the directory entry
|
java.util.Spliterator<Entry> |
spliterator()
Returns a Spliterator over all the entries
|
delete, getName, getParent, getProperty, isDocumentEntry, isRoot, renameToclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitpublic POIFSDocumentPath getPath()
public POIFSFileSystem getFileSystem()
public DocumentInputStream createDocumentInputStream(java.lang.String documentName) throws java.io.IOException
documentName - the name of the document to be openedjava.io.IOException - if the document does not exist or the
name is that of a DirectoryEntrypublic DocumentInputStream createDocumentInputStream(Entry document) throws java.io.IOException
document - the document to be openedjava.io.IOException - if the document does not exist or the
name is that of a DirectoryEntrypublic java.util.Iterator<Entry> getEntries()
getEntries in interface DirectoryEntrypublic java.util.Set<java.lang.String> getEntryNames()
getEntryNames in interface DirectoryEntrypublic boolean isEmpty()
isEmpty in interface DirectoryEntrypublic int getEntryCount()
getEntryCount in interface DirectoryEntrypublic boolean hasEntry(java.lang.String name)
DirectoryEntryhasEntry in interface DirectoryEntrypublic Entry getEntry(java.lang.String name) throws java.io.FileNotFoundException
getEntry in interface DirectoryEntryname - the name of the Entry to obtain.java.io.FileNotFoundException - if no Entry with the specified
name exists in this DirectoryEntrypublic DocumentEntry createDocument(java.lang.String name, java.io.InputStream stream) throws java.io.IOException
createDocument in interface DirectoryEntryname - the name of the new DocumentEntrystream - the InputStream from which to create the new
DocumentEntryjava.io.IOException - if the document can't be createdpublic DocumentEntry createDocument(java.lang.String name, int size, POIFSWriterListener writer) throws java.io.IOException
createDocument in interface DirectoryEntryname - the name of the new DocumentEntrysize - the size of the new DocumentEntrywriter - the writer of the new DocumentEntryjava.io.IOException - if the document can't be createdpublic DirectoryEntry createDirectory(java.lang.String name) throws java.io.IOException
createDirectory in interface DirectoryEntryname - the name of the new DirectoryEntryjava.io.IOException - if the directory can't be createdpublic DocumentEntry createOrUpdateDocument(java.lang.String name, java.io.InputStream stream) throws java.io.IOException
name - the name of the new or existing DocumentEntrystream - the InputStream from which to populate the DocumentEntryjava.io.IOException - if the document can't be created or its content be replacedpublic ClassID getStorageClsid()
getStorageClsid in interface DirectoryEntrypublic void setStorageClsid(ClassID clsidStorage)
setStorageClsid in interface DirectoryEntryclsidStorage - storage Class IDpublic boolean isDirectoryEntry()
isDirectoryEntry in interface EntryisDirectoryEntry in class EntryNodeprotected boolean isDeleteOK()
isDeleteOK in class EntryNodepublic java.lang.Object[] getViewableArray()
getViewableArray in interface POIFSViewablepublic java.util.Iterator<java.lang.Object> getViewableIterator()
getViewableIterator in interface POIFSViewablepublic boolean preferArray()
preferArray in interface POIFSViewablepublic java.lang.String getShortDescription()
getShortDescription in interface POIFSViewablepublic java.util.Iterator<Entry> iterator()
iterator in interface java.lang.Iterable<Entry>Copyright 2022 The Apache Software Foundation or its licensors, as applicable.