org.apache.aries.util.filesystem.impl
Class FileImpl

java.lang.Object
  extended by org.apache.aries.util.filesystem.impl.FileImpl
All Implemented Interfaces:
IFile
Direct Known Subclasses:
DirectoryImpl

public class FileImpl
extends Object
implements IFile

An implementation of IFile that represents a java.io.File.


Field Summary
protected  File file
          This file in the file system
protected  String rootDir
          The name of the root directory of the file system
protected  File rootDirFile
          The root File in the file system
 
Constructor Summary
FileImpl(File f, File rootFile)
           
 
Method Summary
 IDirectory convert()
           
 IDirectory convertNested()
           
 boolean equals(Object obj)
           
 long getLastModified()
           
 String getName()
           
 IDirectory getParent()
           
 IDirectory getRoot()
           
 long getSize()
           
 int hashCode()
           
 boolean isDirectory()
           
 boolean isFile()
           
 InputStream open()
          The input stream returned by this method should always be closed after use.
 String toString()
           
 URL toURL()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

rootDir

protected String rootDir
The name of the root directory of the file system


file

protected File file
This file in the file system


rootDirFile

protected File rootDirFile
The root File in the file system

Constructor Detail

FileImpl

public FileImpl(File f,
                File rootFile)
Parameters:
f - this file.
rootFile - the root of the vFS.
Method Detail

convert

public IDirectory convert()
Specified by:
convert in interface IFile
Returns:
if this is a directory return this as an IDirectory, otherwise return null.

getLastModified

public long getLastModified()
Specified by:
getLastModified in interface IFile
Returns:
the last modified date of the file.

getName

public String getName()
Specified by:
getName in interface IFile
Returns:
the name of the file relative to the root of the virtual FS. This will return a '/' separated path indepedent of underlying filesystem

getParent

public IDirectory getParent()
Specified by:
getParent in interface IFile
Returns:
returns the parent directory of this IFile, or null if this is the root.

getSize

public long getSize()
Specified by:
getSize in interface IFile
Returns:
the size of the file.

isDirectory

public boolean isDirectory()
Specified by:
isDirectory in interface IFile
Returns:
true iff this IFile is also an IDirectory

isFile

public boolean isFile()
Specified by:
isFile in interface IFile
Returns:
true iff this IFile is not an IDirectory

open

public InputStream open()
                 throws IOException
Description copied from interface: IFile
The input stream returned by this method should always be closed after use.

Specified by:
open in interface IFile
Returns:
An InputStream to read the file from.
Throws:
IOException

getRoot

public IDirectory getRoot()
Specified by:
getRoot in interface IFile
Returns:
the root of this file system.

toURL

public URL toURL()
          throws MalformedURLException
Specified by:
toURL in interface IFile
Returns:
a URL that can be used to get at this file at a later date.
Throws:
MalformedURLException

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

hashCode

public int hashCode()
Overrides:
hashCode in class Object

toString

public String toString()
Overrides:
toString in class Object

convertNested

public IDirectory convertNested()
Specified by:
convertNested in interface IFile
Returns:
if this is a directory or an archive, returns the opened IDirectory


Copyright © 2009-2011 The Apache Software Foundation. All Rights Reserved.