Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.apache.commons.vfs
Interface FileContent

All Known Implementing Classes:
  DefaultFileContent

public interface FileContent

Represents the data content of a file.

To read from a file, use the `InputStream` returned by `getInputStream()`.

To write to a file, use the `OutputStream` returned by `getOutputStream()` method. This will create the file, and the parent folder, if necessary.

A file may have multiple InputStreams open at the sametime.

Version:
  $Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Mi, 29 Nov 2006) $
Author:
  Adam Murdoch
See Also:
  `FileObject.getContent()`

Method Summary
`void` | `close()` Closes all resources used by the content, including any open stream.
`Object` | `getAttribute(String attrName)` Gets the value of an attribute of the file's content.
`String[]` | `getAttributeNames()` Lists the attributes of the file's content.
`Map` | `getAttributes()` Returns a read-only map of this file's attributes.
`Certificate[]` | `getCertificates()` Retrieves the certificates if any used to sign this file or folder.
`FileContentInfo` | `getContentInfo()` get the content info. e.g. type, encoding, ...
`FileObject` | `getFile()` Returns the file which this is the content of.
`InputStream` | `getInputStream()` Returns an input stream for reading the file's content.
`long` | `getLastModifiedTime()` Determines the last-modified timestamp of the file.
`OutputStream` | `getOutputStream()` Returns an output stream for writing the file's content.
`OutputStream` | `getOutputStream(boolean bAppend)` Returns an output stream for writing the file's content.
`RandomAccessContent` | `getRandomAccessContent(RandomAccessMode mode)` Returns an stream for reading/writing the file's content.
`long` | `getSize()` Determines the size of the file, in bytes.
`boolean` | `isOpen()` check if this file has open streams
`void` | `setAttribute(String attrName, Object value)` Sets the value of an attribute of the file's content.
`void` | `setLastModifiedTime(long modTime)` Sets the last-modified timestamp of the file.

Method Detail

### getFile

    public FileObject getFile()

  Returns the file which this is the content of.

### getSize

    public long getSize()
                 throws FileSystemException

  Determines the size of the file, in bytes.

  Returns:
    The size of the file, in bytes.
  Throws:
    `FileSystemException` - If the file does not exist, or is being written to, or on error determining the size.

### getLastModifiedTime

    public long getLastModifiedTime()
                             throws FileSystemException

  Determines the last-modified timestamp of the file.

  Returns:
    The last-modified timestamp.
  Throws:
    `FileSystemException` - If the file does not exist, or is being written to, or on error determining the last-modified timestamp.

### setLastModifiedTime

    public void setLastModifiedTime(long modTime)
                             throws FileSystemException

  Sets the last-modified timestamp of the file. Creates the file if it does not exist.

  Parameters:
    `modTime` - The time to set the last-modified timestamp to.
  Throws:
    `FileSystemException` - If the file is read-only, or is being written to, or on error setting the last-modified timestamp.

### getAttributes

    public Map getAttributes()
                      throws FileSystemException

  Returns a read-only map of this file's attributes.

  Throws:
    `FileSystemException` - If the file does not exist, or does not support attributes.

### getAttributeNames

    public String[] getAttributeNames()
                               throws FileSystemException

  Lists the attributes of the file's content.

  Returns:
    The names of the attributes. Never returns null;
  Throws:
    `FileSystemException` - If the file does not exist, or does not support attributes.

### getAttribute

    public Object getAttribute(String attrName)
                        throws FileSystemException

  Gets the value of an attribute of the file's content.

  Parameters:
    `attrName` - The name of the attribute. Attribute names are case insensitive.
  Returns:
    The value of the attribute, or null if the attribute value is unknown.
  Throws:
    `FileSystemException` - If the file does not exist, or does not support attributes.

### setAttribute

    public void setAttribute(String attrName,
                             Object value)
                      throws FileSystemException

  Sets the value of an attribute of the file's content. Creates the file if it does not exist.

  Parameters:
    `attrName` - The name of the attribute.
    `value` - The value of the attribute.
  Throws:
    `FileSystemException` - If the file does not exist, or is read-only, or does not support attributes, or on error setting the attribute.

### getCertificates

    public Certificate[] getCertificates()
                                  throws FileSystemException

  Retrieves the certificates if any used to sign this file or folder.

  Returns:
    The certificates, or an empty array if there are no certificates or the file does not support signing.
  Throws:
    `FileSystemException` - If the file does not exist, or is being written.

### getInputStream

    public InputStream getInputStream()
                               throws FileSystemException

  Returns an input stream for reading the file's content.

  There may only be a single input or output stream open for the file at any time.

  Returns:
    An input stream to read the file's content from. The input stream is buffered, so there is no need to wrap it in a `BufferedInputStream`.
  Throws:
    `FileSystemException` - If the file does not exist, or is being read, or is being written, or on error opening the stream.

### getOutputStream

    public OutputStream getOutputStream()
                                 throws FileSystemException

  Returns an output stream for writing the file's content.

  If the file does not exist, this method creates it, and the parent folder, if necessary. If the file does exist, it is replaced with whatever is written to the output stream.

  There may only be a single input or output stream open for the file at any time.

  Returns:
    An output stream to write the file's content to. The stream is buffered, so there is no need to wrap it in a `BufferedOutputStream`.
  Throws:
    `FileSystemException` - If the file is read-only, or is being read, or is being written, or on error opening the stream.

### getRandomAccessContent

    public RandomAccessContent getRandomAccessContent(RandomAccessMode mode)
                                               throws FileSystemException

  Returns an stream for reading/writing the file's content.

  If the file does not exist, and you use one of the write* methods, this method creates it, and the parent folder, if necessary. If the file does exist, parts of the file are replaced with whatever is written at a given position.

  There may only be a single input or output stream open for the file at any time.

  Throws:
    `FileSystemException` - If the file is read-only, or is being read, or is being written, or on error opening the stream.

### getOutputStream

    public OutputStream getOutputStream(boolean bAppend)
                                 throws FileSystemException

  Returns an output stream for writing the file's content.

  If the file does not exist, this method creates it, and the parent folder, if necessary. If the file does exist, it is replaced with whatever is written to the output stream.

  There may only be a single input or output stream open for the file at any time.

  Parameters:
    `bAppend` - true if you would like to append to the file
  Returns:
    An output stream to write the file's content to. The stream is buffered, so there is no need to wrap it in a `BufferedOutputStream`.
  Throws:
    `FileSystemException` - If the file is read-only, or is being read, or is being written, or on error opening the stream.

### close

    public void close()
               throws FileSystemException

  Closes all resources used by the content, including any open stream. Commits pending changes to the file.

  This method is a hint to the implementation that it can release resources. This object can continue to be used after calling this method.

  Throws:
    `FileSystemException`

### getContentInfo

    public FileContentInfo getContentInfo()
                                   throws FileSystemException

  get the content info. e.g. type, encoding, ...

  Throws:
    `FileSystemException`

### isOpen

    public boolean isOpen()

  check if this file has open streams

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

Copyright © 2002-2006 The Apache Software Foundation. All Rights Reserved.