Class DefaultFileContent

java.lang.Object
org.apache.commons.vfs.provider.DefaultFileContent
All Implemented Interfaces:
FileContent

public final class DefaultFileContent extends Object implements FileContent
The content of a file.
Version:
$Revision: 480428 $ $Date: 2006-11-29 07:15:24 +0100 (Wed, 29 Nov 2006) $
Author:
Adam Murdoch
  • Constructor Details

  • Method Details

    • getFile

      public FileObject getFile()
      Returns the file that this is the content of.
      Specified by:
      getFile in interface FileContent
    • getSize

      public long getSize() throws FileSystemException
      Returns the size of the content (in bytes).
      Specified by:
      getSize in interface FileContent
      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
      Returns the last-modified timestamp.
      Specified by:
      getLastModifiedTime in interface FileContent
      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.
      Specified by:
      setLastModifiedTime in interface FileContent
      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.
      Specified by:
      getAttributes in interface FileContent
      Throws:
      FileSystemException - If the file does not exist, or does not support attributes.
    • getAttributeNames

      public String[] getAttributeNames() throws FileSystemException
      Lists the attributes of this file.
      Specified by:
      getAttributeNames in interface FileContent
      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.
      Specified by:
      getAttribute in interface FileContent
      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.
      Specified by:
      setAttribute in interface FileContent
      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
      Returns the certificates used to sign this file.
      Specified by:
      getCertificates in interface FileContent
      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 content.
      Specified by:
      getInputStream in interface FileContent
      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.
    • getRandomAccessContent

      public RandomAccessContent getRandomAccessContent(RandomAccessMode mode) throws FileSystemException
      Returns an input/output stream to use to read and write the content of the file in an random manner.
      Specified by:
      getRandomAccessContent in interface FileContent
      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() throws FileSystemException
      Returns an output stream for writing the content.
      Specified by:
      getOutputStream in interface FileContent
      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.
    • getOutputStream

      public OutputStream getOutputStream(boolean bAppend) throws FileSystemException
      Returns an output stream for writing the content in append mode.
      Specified by:
      getOutputStream in interface FileContent
      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 all streams, readers and writers.
      Specified by:
      close in interface FileContent
      Throws:
      FileSystemException
    • isOpen

      public boolean isOpen()
      check if a input and/or output stream is open.
      This checks only the scope of the current thread.
      Specified by:
      isOpen in interface FileContent
      Returns:
      true if this is the case
    • isOpenGlobal

      public boolean isOpenGlobal()
      check if a input and/or output stream is open.
      This checks all threads.
      Returns:
      true if this is the case
    • getContentInfo

      public FileContentInfo getContentInfo() throws FileSystemException
      get the content info. e.g. content-type, content-encoding
      Specified by:
      getContentInfo in interface FileContent
      Throws:
      FileSystemException