Package gw.fs.jar
Class JarFileDirectoryImpl
- java.lang.Object
-
- gw.fs.jar.JarFileDirectoryImpl
-
- All Implemented Interfaces:
IDirectory,IResource,IJarFileDirectory
public class JarFileDirectoryImpl extends Object implements IJarFileDirectory
-
-
Constructor Summary
Constructors Constructor Description JarFileDirectoryImpl(File file)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidclearCaches()booleancreate()booleandelete()IDirectorydir(String relativePath)booleanequals(Object obj)booleanexists()Indicates whether this resource exists.IFilefile(String path)Constucts a file given the path.InputStreamgetInputStream(JarEntry entry)JarFilegetJarFile()StringgetName()Gets this file's or directory's name.JarEntryDirectoryImplgetOrCreateDirectory(String relativeName)JarEntryFileImplgetOrCreateFile(String relativeName)IDirectorygetParent()Gets this file's our directory's parent directory.ResourcePathgetPath()booleanhasChildFile(String path)Returns true if the given path represents a child of this directory that exists.booleanisAdditional()booleanisChildOf(IDirectory dir)Indicates whether this resource is a direct child of the given directory.booleanisDescendantOf(IDirectory dir)Indicates whether this resource is a descendant of the given directory.booleanisInJar()booleanisJavaFile()List<? extends IDirectory>listDirs()List<? extends IFile>listFiles()booleanmkdir()StringrelativePath(IResource resource)FiletoJavaFile()StringtoString()URItoURI()
-
-
-
Constructor Detail
-
JarFileDirectoryImpl
public JarFileDirectoryImpl(File file)
-
-
Method Detail
-
getInputStream
public InputStream getInputStream(JarEntry entry) throws IOException
- Throws:
IOException
-
getOrCreateDirectory
public JarEntryDirectoryImpl getOrCreateDirectory(String relativeName)
- Specified by:
getOrCreateDirectoryin interfaceIJarFileDirectory
-
getOrCreateFile
public JarEntryFileImpl getOrCreateFile(String relativeName)
- Specified by:
getOrCreateFilein interfaceIJarFileDirectory
-
dir
public IDirectory dir(String relativePath)
- Specified by:
dirin interfaceIDirectory
-
file
public IFile file(String path)
Description copied from interface:IDirectoryConstucts a file given the path. If the path is relative path, it will be constructed based on the current directory- Specified by:
filein interfaceIDirectory- Parameters:
path- the path of the file- Returns:
- The file that is under the directory with the name
-
mkdir
public boolean mkdir() throws IOException- Specified by:
mkdirin interfaceIDirectory- Throws:
IOException
-
listDirs
public List<? extends IDirectory> listDirs()
- Specified by:
listDirsin interfaceIDirectory
-
listFiles
public List<? extends IFile> listFiles()
- Specified by:
listFilesin interfaceIDirectory
-
relativePath
public String relativePath(IResource resource)
- Specified by:
relativePathin interfaceIDirectory
-
getParent
public IDirectory getParent()
Description copied from interface:IResourceGets this file's our directory's parent directory.
-
getName
public String getName()
Description copied from interface:IResourceGets this file's or directory's name.
-
exists
public boolean exists()
Description copied from interface:IResourceIndicates whether this resource exists.
-
delete
public boolean delete() throws IOException- Specified by:
deletein interfaceIResource- Throws:
IOException
-
getPath
public ResourcePath getPath()
-
isChildOf
public boolean isChildOf(IDirectory dir)
Description copied from interface:IResourceIndicates whether this resource is a direct child of the given directory.
-
isDescendantOf
public boolean isDescendantOf(IDirectory dir)
Description copied from interface:IResourceIndicates whether this resource is a descendant of the given directory.- Specified by:
isDescendantOfin interfaceIResource- Parameters:
dir- the directory which would be the ancestor- Returns:
- true if this is a descendant of the given directory
-
toJavaFile
public File toJavaFile()
- Specified by:
toJavaFilein interfaceIResource
-
getJarFile
public JarFile getJarFile()
-
isJavaFile
public boolean isJavaFile()
- Specified by:
isJavaFilein interfaceIResource
-
clearCaches
public void clearCaches()
- Specified by:
clearCachesin interfaceIDirectory
-
hasChildFile
public boolean hasChildFile(String path)
Description copied from interface:IDirectoryReturns true if the given path represents a child of this directory that exists. It's essentially equivalent to calling file(path).exists(), but in cases where this directory caches its list of children and the path represents a direct child of this directory, this method can be optimized to avoid file system access by looking in the list of cached children.- Specified by:
hasChildFilein interfaceIDirectory- Parameters:
path- the path of the file- Returns:
- true if the path represents a file that exists as a child of this directory
-
isAdditional
public boolean isAdditional()
- Specified by:
isAdditionalin interfaceIDirectory- Returns:
- true if this is an "additional" path for resources not copied to the target classpath e.g., config bullshit.
-
-