org.apache.avalon.excalibur.monitor
Class StreamResource

java.lang.Object
  extended byorg.apache.avalon.excalibur.monitor.Resource
      extended byorg.apache.avalon.excalibur.monitor.StreamResource
All Implemented Interfaces:
Modifiable
Direct Known Subclasses:
FileResource, SourceResource

public abstract class StreamResource
extends Resource

Managed Stream based Resource. This is convenient when you want to dynamically set and get the information from the resource. For instance, the Resource does not need to be actively monitored if all access to the resource goes through this type of Resource. It can notify the change as soon as the Writer or OutputStream has been closed.

Version:
$Id: StreamResource.java,v 1.4 2004/02/28 11:47:32 cziegeler Exp $
Author:
Avalon Development Team

Field Summary
 
Fields inherited from class org.apache.avalon.excalibur.monitor.Resource
m_eventSupport, m_previousModified, MODIFIED
 
Constructor Summary
StreamResource(java.lang.String location)
          Required constructor.
 
Method Summary
abstract  java.io.Reader getResourceAsReader()
          Get the Resource contents as a Reader.
abstract  java.io.InputStream getResourceAsStream()
          Get the Resource contents as an InputStream.
abstract  java.io.OutputStream setResourceAsStream()
          Set the Resource contents as an OutputStream.
abstract  java.io.Writer setResourceAsWriter()
          Set the Resource contents as a Writer.
protected  void streamClosedEvent()
          Automatically handle the streamClosedEvent from the ResourceOutputStream and ResourceWriter.
 
Methods inherited from class org.apache.avalon.excalibur.monitor.Resource
addPropertyChangeListener, addPropertyChangeListener, addPropertyChangeListenersFrom, fireAndSetModifiedTime, getEventSupport, getPreviousModified, getResourceKey, hasListeners, hasListeners, lastModified, removeAllPropertyChangeListeners, removePropertyChangeListener, removePropertyChangeListener, setPreviousModified, testModifiedAfter, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

StreamResource

public StreamResource(java.lang.String location)
               throws java.lang.Exception
Required constructor. The String location is transformed by the specific resource monitor. For instance, a FileResource will be able to convert a string representation of a path to the proper File object.

Method Detail

getResourceAsStream

public abstract java.io.InputStream getResourceAsStream()
                                                 throws java.io.IOException
Get the Resource contents as an InputStream.

Throws:
java.io.IOException

getResourceAsReader

public abstract java.io.Reader getResourceAsReader()
                                            throws java.io.IOException
Get the Resource contents as a Reader.

Throws:
java.io.IOException

setResourceAsStream

public abstract java.io.OutputStream setResourceAsStream()
                                                  throws java.io.IOException
Set the Resource contents as an OutputStream.

Throws:
java.io.IOException

setResourceAsWriter

public abstract java.io.Writer setResourceAsWriter()
                                            throws java.io.IOException
Set the Resource contents as a Writer.

Throws:
java.io.IOException

streamClosedEvent

protected void streamClosedEvent()
Automatically handle the streamClosedEvent from the ResourceOutputStream and ResourceWriter.



Copyright © 1997-2005 The Apache Software Foundation. All Rights Reserved.