org.apache.commons.vfs2.provider.url
Class UrlFileObject

java.lang.Object
  extended by org.apache.commons.vfs2.provider.AbstractFileObject
      extended by org.apache.commons.vfs2.provider.url.UrlFileObject
All Implemented Interfaces:
FileObject

public class UrlFileObject
extends AbstractFileObject
implements FileObject

A FileObject implementation backed by a URL.

Author:
Commons VFS team

Constructor Summary
protected UrlFileObject(UrlFileSystem fs, AbstractFileName fileName)
           
 
Method Summary
protected  java.net.URL createURL(FileName name)
           
protected  void doAttach()
          Attaches this file object to its file resource.
protected  long doGetContentSize()
          Returns the size of the file content (in bytes).
protected  java.io.InputStream doGetInputStream()
          Creates an input stream to read the file content from.
protected  long doGetLastModifiedTime()
          Returns the last modified time of this file.
protected  FileType doGetType()
          Determines the type of the file.
protected  java.lang.String[] doListChildren()
          Lists the children of the file.
 
Methods inherited from class org.apache.commons.vfs2.provider.AbstractFileObject
canRenameTo, childrenChanged, close, copyFrom, createFile, createFolder, delete, delete, doCreateFileContent, doCreateFolder, doDelete, doDetach, doGetAttributes, doGetCertificates, doGetOutputStream, doGetRandomAccessContent, doIsHidden, doIsReadable, doIsSameFile, doIsWriteable, doListChildrenResolved, doRemoveAttribute, doRename, doSetAttribute, doSetLastModifiedTime, endOutput, exists, finalize, findFiles, findFiles, getChild, getChildren, getContent, getFileContentInfoFactory, getFileOperations, getFileSystem, getInputStream, getName, getOutputStream, getOutputStream, getParent, getRandomAccessContent, getType, getURL, handleChanged, handleCreate, handleDelete, holdObject, injectType, isAttached, isContentOpen, isHidden, isReadable, isSameFile, isWriteable, moveTo, notifyAllStreamsClosed, onChange, onChildrenChanged, refresh, resolveFile, resolveFile, toString
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface org.apache.commons.vfs2.FileObject
canRenameTo, close, copyFrom, createFile, createFolder, delete, delete, exists, findFiles, findFiles, getChild, getChildren, getContent, getFileOperations, getFileSystem, getName, getParent, getType, getURL, isAttached, isContentOpen, isHidden, isReadable, isWriteable, moveTo, refresh, resolveFile, resolveFile
 

Constructor Detail

UrlFileObject

protected UrlFileObject(UrlFileSystem fs,
                        AbstractFileName fileName)
Method Detail

doAttach

protected void doAttach()
                 throws java.lang.Exception
Attaches this file object to its file resource. This method is called before any of the doBlah() or onBlah() methods. Sub-classes can use this method to perform lazy initialisation.

Overrides:
doAttach in class AbstractFileObject
Throws:
java.lang.Exception - if an error occurs.

createURL

protected java.net.URL createURL(FileName name)
                          throws java.net.MalformedURLException,
                                 FileSystemException,
                                 URIException
Throws:
java.net.MalformedURLException
FileSystemException
URIException

doGetType

protected FileType doGetType()
                      throws java.lang.Exception
Determines the type of the file.

Specified by:
doGetType in class AbstractFileObject
Returns:
the type of the file.
Throws:
java.lang.Exception - if an error occurs.

doGetContentSize

protected long doGetContentSize()
                         throws java.lang.Exception
Returns the size of the file content (in bytes).

Specified by:
doGetContentSize in class AbstractFileObject
Returns:
The size of the file in bytes.
Throws:
java.lang.Exception - if an error occurs.

doGetLastModifiedTime

protected long doGetLastModifiedTime()
                              throws java.lang.Exception
Returns the last modified time of this file.

Overrides:
doGetLastModifiedTime in class AbstractFileObject
Returns:
The last modification time.
Throws:
java.lang.Exception - if an error occurs.

doListChildren

protected java.lang.String[] doListChildren()
                                     throws java.lang.Exception
Lists the children of the file.

Specified by:
doListChildren in class AbstractFileObject
Returns:
a possible empty String array if the file is a directory or null or an exception if the file is not a directory or can't be read.
Throws:
java.lang.Exception - if an error occurs.

doGetInputStream

protected java.io.InputStream doGetInputStream()
                                        throws java.lang.Exception
Creates an input stream to read the file content from.

Specified by:
doGetInputStream in class AbstractFileObject
Returns:
An InputStream to read the file content.
Throws:
java.lang.Exception - if an error occurs.