Class ZipDirectory
java.lang.Object
org.apache.aries.util.filesystem.impl.ZipFileImpl
org.apache.aries.util.filesystem.impl.ZipDirectory
- All Implemented Interfaces:
Iterable<IFile>
,IDirectory
,IFile
A directory in the zip.
-
Constructor Summary
ConstructorsConstructorDescriptionZipDirectory
(File zip1, ZipEntry entry1, ZipDirectory parent, ZipCloseableDirectory cache) Constructs a directory in the zip.ZipDirectory
(File fs, IDirectory parent) This constructor creates the root of the zip.ZipDirectory
(ZipDirectory other, ZipCloseableDirectory cache) -
Method Summary
Modifier and TypeMethodDescriptionconvert()
boolean
Gets the requested file under this directory.getRoot()
int
hashCode()
boolean
boolean
isFile()
boolean
isRoot()
boolean
iterator()
open()
The input stream returned by this method should always be closed after use.Open a more effective implementation with user regulated resource management.Methods inherited from class org.apache.aries.util.filesystem.impl.ZipFileImpl
convertNested, getLastModified, getName, getNameInZip, getParent, getSize, getZipPathToRoot, toString, toURL
Methods inherited from interface org.apache.aries.util.filesystem.IFile
convertNested, getLastModified, getName, getParent, getSize, toURL
Methods inherited from interface java.lang.Iterable
forEach, spliterator
-
Constructor Details
-
ZipDirectory
Constructs a directory in the zip.- Parameters:
zip1
- the zip file.entry1
- the entry in the zip representing this dir.parent
- the parent directory.
-
ZipDirectory
This constructor creates the root of the zip.- Parameters:
fs
-parent
-file
-- Throws:
MalformedURLException
-
ZipDirectory
-
-
Method Details
-
getFile
Description copied from interface:IDirectory
Gets the requested file under this directory. The file may be located any number of levels within this directory. The name is relative to this directory. If the file cannot be found it will return null.- Specified by:
getFile
in interfaceIDirectory
- Parameters:
name
- the name of the file.- Returns:
- the IFile, or null if no such file exists.
-
isRoot
public boolean isRoot()- Specified by:
isRoot
in interfaceIDirectory
- Returns:
- true if this IDirectory is the root of the virtual file system.
-
listFiles
- Specified by:
listFiles
in interfaceIDirectory
- Returns:
- the list of files in this directory. Files must be in this directory and not in sub-directories.
-
listAllFiles
- Specified by:
listAllFiles
in interfaceIDirectory
- Returns:
- the list of files in all directories (including sub-directories). This is the complete list.
-
iterator
-
convert
- Specified by:
convert
in interfaceIFile
- Overrides:
convert
in classZipFileImpl
- Returns:
- if this is a directory return this as an IDirectory, otherwise return null.
-
isDirectory
public boolean isDirectory()- Specified by:
isDirectory
in interfaceIFile
- Overrides:
isDirectory
in classZipFileImpl
- Returns:
- true iff this IFile is also an IDirectory
-
isFile
public boolean isFile()- Specified by:
isFile
in interfaceIFile
- Overrides:
isFile
in classZipFileImpl
- Returns:
- true iff this IFile is not an IDirectory
-
open
Description copied from interface:IFile
The input stream returned by this method should always be closed after use.- Specified by:
open
in interfaceIFile
- Overrides:
open
in classZipFileImpl
- Returns:
- An InputStream to read the file from.
-
getRoot
- Specified by:
getRoot
in interfaceIFile
- Overrides:
getRoot
in classZipFileImpl
- Returns:
- the root of this file system.
-
isZipRoot
public boolean isZipRoot() -
equals
- Overrides:
equals
in classZipFileImpl
-
hashCode
public int hashCode()- Overrides:
hashCode
in classZipFileImpl
-
toCloseable
Description copied from interface:IDirectory
Open a more effective implementation with user regulated resource management. The implementation will be more efficient for batch operations. Make sure to call close when finished with the returned IDirectory. IFiles and IDirectories other than the returned closeable directory will stay valid after calling the close method but will no longer perform as efficiently. InputStreams that are open at the time of calling close may be invalidated.- Specified by:
toCloseable
in interfaceIDirectory
- Returns:
ICloseableDirectory
or null if a batch aware version of thisIDirectory
is not supported
-