public abstract class ZipArchiveDataNode extends DefaultDataNode
ZipFileDataNode and ZipStreamDataNode.| Modifier | Constructor and Description |
|---|---|
protected |
ZipArchiveDataNode(uk.ac.starlink.util.DataSource datsrc)
Constructs a ZipArchiveDataNode.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
allowsChildren()
The DefaultDataNode implementation of this method returns
false.
|
java.util.Iterator |
getChildIterator()
The DefaultDataNode implementation of this method throws
UnsupportedOperationException
(
DefaultDataNode.allowsChildren() is false). |
protected abstract java.util.Iterator |
getChildIteratorAtLevel(java.lang.String level,
DataNode parent)
Returns an iterator over the DataNodes at a given level in the
hierarchy of this archive.
|
protected abstract java.util.List |
getEntries()
Returns a list of all the ZipEntry objects in
this zip archive.
|
protected java.util.List |
getEntriesAtLevel(java.lang.String level)
Returns all the ZipEntry objects in this archive at a given level
in the hierarchy.
|
java.lang.String |
getName()
Gets the name of this object.
|
java.lang.String |
getNodeTLA()
Returns the string "ZIP".
|
java.lang.String |
getNodeType()
Returns a short sentence indicating what kind of node this is.
|
java.lang.String |
getPathSeparator()
Returns a default separator string.
|
static boolean |
isMagic(byte[] magic)
Tests whether the presented byte array looks like the start of a
Zip archive.
|
beep, configureDetail, getChildMaker, getCreator, getDataObject, getDescription, getIcon, getLabel, getParentObject, getPathElement, hasDataObject, makeChild, makeErrorChild, registerDataObject, setChildMaker, setCreator, setDescription, setIconID, setLabel, setName, setParentObject, toStringprotected ZipArchiveDataNode(uk.ac.starlink.util.DataSource datsrc)
throws NoSuchDataException
datsrc - a data source corresponding to the archive; this is
used for checking the magic number to see whether it looks
like a zip archive or notNoSuchDataExceptionprotected abstract java.util.List getEntries()
throws java.io.IOException
ZipEntry objects
which make up this zip archive.java.io.IOExceptionprotected abstract java.util.Iterator getChildIteratorAtLevel(java.lang.String level,
DataNode parent)
throws java.io.IOException
level - the required starting substring of the name of all
ZipEntries to be represented in the resultparent - the DataNode whose children the resulting nodes will beDataNode objects corresponding to
the ZipEntry objects specified by leveljava.io.IOExceptionpublic static boolean isMagic(byte[] magic)
magic - a byte array containing the
first few bytes of a source which might be a zippublic java.lang.String getName()
DataNodegetName in interface DataNodegetName in class DefaultDataNodepublic java.lang.String getPathSeparator()
DefaultDataNodegetPathSeparator in interface DataNodegetPathSeparator in class DefaultDataNodepublic java.lang.String getNodeTLA()
getNodeTLA in interface DataNodegetNodeTLA in class DefaultDataNodepublic java.lang.String getNodeType()
DataNodegetNodeType in interface DataNodegetNodeType in class DefaultDataNodeDataNodepublic boolean allowsChildren()
DefaultDataNodeallowsChildren in interface DataNodeallowsChildren in class DefaultDataNodetrue if the node is of a type which can have
child nodes, false otherwisepublic java.util.Iterator getChildIterator()
DefaultDataNodeDefaultDataNode.allowsChildren() is false).getChildIterator in interface DataNodegetChildIterator in class DefaultDataNodeIterator over the children. Each object
iterated over should be a DataNode.
Behaviour is undefined if this method is called on an
object for which allowsChildren returns
false.protected java.util.List getEntriesAtLevel(java.lang.String level)
throws java.io.IOException
level - the required starting substring of the name of all
ZipEntries to be returnedZipEntry
objects at the given leveljava.io.IOExceptionCopyright © 2017 Central Laboratory of the Research Councils. All Rights Reserved.