com.binaryfantasy.murq.source
Class MemorySource

java.lang.Object
  extended by com.binaryfantasy.murq.source.MemorySource
All Implemented Interfaces:
ISource

public class MemorySource
extends Object
implements ISource

A ISource implementation intended for testing purposes only. As the name implies, content streamed to this source is held in memory only.

Author:
Bill Weiss

Constructor Summary
MemorySource()
          Default constructor.
 
Method Summary
 void close()
          Called when a source is no longer to be used and provides a chance for clean up and release of resources.
 InputStream getInputStream(String key)
          Returns a stream to read the content specified by the key, or null if no content is associated with the key.
 Set<String> getKeys()
          Returns a Set of all current keys in this source, or an empty Set if there are none.
 OutputStream getOutputStream(String key)
          Returns a stream to write the content associated with the key.
 boolean remove(String key)
          Returns true if the content mapped to the provided key was removed, false if no content is associated with the key.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

MemorySource

public MemorySource()
Default constructor.

Method Detail

close

public void close()
           throws IOException
Description copied from interface: ISource
Called when a source is no longer to be used and provides a chance for clean up and release of resources.

Specified by:
close in interface ISource
Throws:
IOException - if there is a problem during closing.

getKeys

public Set<String> getKeys()
                    throws IOException
Description copied from interface: ISource
Returns a Set of all current keys in this source, or an empty Set if there are none.

Specified by:
getKeys in interface ISource
Returns:
a Set of all current keys in this source, or an empty Set if there are none.
Throws:
IOException - if there is a problem reading the keys.

remove

public boolean remove(String key)
               throws IOException
Description copied from interface: ISource
Returns true if the content mapped to the provided key was removed, false if no content is associated with the key.

Specified by:
remove in interface ISource
Parameters:
key - unique value associated with the content.
Returns:
true if the content mapped to the provided key was removed, false if no content is associated with the key.
Throws:
IOException - if an error occurred while trying to remove the content.

getInputStream

public InputStream getInputStream(String key)
                           throws IOException
Description copied from interface: ISource
Returns a stream to read the content specified by the key, or null if no content is associated with the key.

Specified by:
getInputStream in interface ISource
Parameters:
key - unique value associated with the content.
Returns:
a stream to read the content specified by the key, or null if no content is associated with the key.
Throws:
IOException - if there is an error while getting the content stream for reading.

getOutputStream

public OutputStream getOutputStream(String key)
                             throws IOException
Description copied from interface: ISource
Returns a stream to write the content associated with the key.

Specified by:
getOutputStream in interface ISource
Parameters:
key - unique value associated with the content.
Returns:
a stream to write the content associated with the key.
Throws:
IOException - if there is an error while getting the content stream for writing.

toString

public String toString()
Overrides:
toString in class Object


Copyright (c) 2000-2006, BinaryFantasy.com