public abstract class ZipArchiveDataNode extends DefaultDataNode
ZipFileDataNode and ZipStreamDataNode.| Modifier | Constructor and Description |
|---|---|
protected |
ZipArchiveDataNode(DataSource datsrc)
Constructs a ZipArchiveDataNode.
|
| Modifier and Type | Method and Description |
|---|---|
boolean |
allowsChildren()
The
DefaultDataNode implementation of this method returns
false. |
Iterator |
getChildIterator()
The
DefaultDataNode implementation of this method throws
UnsupportedOperationException
(DefaultDataNode.allowsChildren() is false). |
protected abstract Iterator |
getChildIteratorAtLevel(String level,
DataNode parent)
Returns an iterator over the DataNodes at a given level in the
hierarchy of this archive.
|
protected abstract List |
getEntries()
Returns a list of all the
ZipEntry objects in
this zip archive. |
protected List |
getEntriesAtLevel(String level)
Returns all the ZipEntry objects in this archive at a given level
in the hierarchy.
|
String |
getName()
Gets the name of this object.
|
String |
getNodeTLA()
Returns the string "ZIP".
|
String |
getNodeType()
Returns a short sentence indicating what kind of node this is.
|
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(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 List getEntries() throws IOException
ZipEntry objects in
this zip archive.ZipEntry objects
which make up this zip archive.IOExceptionprotected abstract Iterator getChildIteratorAtLevel(String level, DataNode parent) throws IOException
level.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 levelIOExceptionpublic static boolean isMagic(byte[] magic)
magic - a byte array containing the
first few bytes of a source which might be a zipmagic represents the magic number of a
zip archivepublic String getName()
DataNodegetName in interface DataNodegetName in class DefaultDataNodepublic String getPathSeparator()
DefaultDataNodegetPathSeparator in interface DataNodegetPathSeparator in class DefaultDataNodepublic String getNodeTLA()
getNodeTLA in interface DataNodegetNodeTLA in class DefaultDataNodepublic String getNodeType()
DataNodegetNodeType in interface DataNodegetNodeType in class DefaultDataNodeDataNodepublic boolean allowsChildren()
DefaultDataNodeDefaultDataNode implementation of this method returns
false.allowsChildren in interface DataNodeallowsChildren in class DefaultDataNodetrue if the node is of a type which can have
child nodes, false otherwisepublic Iterator getChildIterator()
DefaultDataNodeDefaultDataNode implementation of this method throws
UnsupportedOperationException
(DefaultDataNode.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 List getEntriesAtLevel(String level) throws IOException
level.level - the required starting substring of the name of all
ZipEntries to be returnedZipEntry
objects at the given levelIOExceptionCopyright © 2025 Central Laboratory of the Research Councils. All Rights Reserved.