org.apache.commons.vfs.provider.http
Class HttpFileObject

java.lang.Object
  extended by org.apache.commons.vfs.provider.AbstractFileObject
      extended by org.apache.commons.vfs.provider.http.HttpFileObject
All Implemented Interfaces:
FileObject
Direct Known Subclasses:
WebdavFileObject

public class HttpFileObject
extends AbstractFileObject

A file object backed by commons httpclient.

Version:
$Revision: 833575 $ $Date: 2009-11-06 23:17:06 +0100(ven, 06 nov 2009) $
Author:
Adam Murdoch

Constructor Summary
protected HttpFileObject(FileName name, HttpFileSystem fileSystem)
           
 
Method Summary
protected  void doDetach()
          Detaches this file object from its file resource.
protected  long doGetContentSize()
          Returns the size of the file content (in bytes).
protected  InputStream doGetInputStream()
          Creates an input stream to read the file content from.
protected  long doGetLastModifiedTime()
          Returns the last modified time of this file.
protected  RandomAccessContent doGetRandomAccessContent(RandomAccessMode mode)
          Creates access to the file for random i/o.
protected  FileType doGetType()
          Determines the type of this file.
protected  String[] doListChildren()
          Lists the children of this file.
protected  String encodePath(String decodedPath)
           
protected  FileContentInfoFactory getFileContentInfoFactory()
          create the filecontentinfo implementation
protected  void setupMethod(org.apache.commons.httpclient.HttpMethod method)
          Prepares a Method object.
 
Methods inherited from class org.apache.commons.vfs.provider.AbstractFileObject
canRenameTo, childrenChanged, childrenChanged, close, copyFrom, createFile, createFolder, delete, delete, doAttach, doCreateFileContent, doCreateFolder, doDelete, doGetAttributes, doGetCertificates, doGetOutputStream, doIsHidden, doIsReadable, doIsSameFile, doIsWriteable, doListChildrenResolved, doRemoveAttribute, doRename, doSetAttribute, doSetLastModifiedTime, doSetLastModTime, endOutput, exists, finalize, findFiles, findFiles, getChild, getChildren, getContent, 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
 

Constructor Detail

HttpFileObject

protected HttpFileObject(FileName name,
                         HttpFileSystem fileSystem)
Method Detail

doDetach

protected void doDetach()
                 throws Exception
Detaches this file object from its file resource.

Overrides:
doDetach in class AbstractFileObject
Throws:
Exception

doGetType

protected FileType doGetType()
                      throws Exception
Determines the type of this file. Must not return null. The return value of this method is cached, so the implementation can be expensive.

Specified by:
doGetType in class AbstractFileObject
Throws:
Exception

doListChildren

protected String[] doListChildren()
                           throws Exception
Lists the children of this 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:
Exception

doGetContentSize

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

Specified by:
doGetContentSize in class AbstractFileObject
Throws:
Exception

doGetLastModifiedTime

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

This implementation throws an exception.

Overrides:
doGetLastModifiedTime in class AbstractFileObject
Throws:
Exception

doGetInputStream

protected InputStream doGetInputStream()
                                throws Exception
Creates an input stream to read the file content from. Is only called if doGetType() returns FileType.FILE.

It is guaranteed that there are no open output streams for this file when this method is called.

The returned stream does not have to be buffered.

Specified by:
doGetInputStream in class AbstractFileObject
Throws:
Exception

doGetRandomAccessContent

protected RandomAccessContent doGetRandomAccessContent(RandomAccessMode mode)
                                                throws Exception
Description copied from class: AbstractFileObject
Creates access to the file for random i/o. Is only called if AbstractFileObject.doGetType() returns FileType.FILE.

It is guaranteed that there are no open output streams for this file when this method is called.

Overrides:
doGetRandomAccessContent in class AbstractFileObject
Throws:
Exception

setupMethod

protected void setupMethod(org.apache.commons.httpclient.HttpMethod method)
                    throws FileSystemException,
                           org.apache.commons.httpclient.URIException
Prepares a Method object.

Throws:
FileSystemException
org.apache.commons.httpclient.URIException

encodePath

protected String encodePath(String decodedPath)
                     throws org.apache.commons.httpclient.URIException
Throws:
org.apache.commons.httpclient.URIException

getFileContentInfoFactory

protected FileContentInfoFactory getFileContentInfoFactory()
Description copied from class: AbstractFileObject
create the filecontentinfo implementation

Overrides:
getFileContentInfoFactory in class AbstractFileObject


Copyright © 2002-2011 Apache Software Foundation. All Rights Reserved.