org.mule.providers.streaming
Class OutStreamMessageAdapter

java.lang.Object
  extended by org.mule.providers.AbstractMessageAdapter
      extended by org.mule.providers.streaming.OutStreamMessageAdapter
All Implemented Interfaces:
Serializable, ThreadSafeAccess, UMOMessageAdapter

public class OutStreamMessageAdapter
extends AbstractMessageAdapter

StreamMessageAdapter wraps an java.io.OutputStream and allows meta information to be associated with the stream.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class org.mule.providers.AbstractMessageAdapter
attachments, DEFAULT_FAILFAST, encoding, exceptionPayload, id, logger, properties, READ, WRITE
 
Constructor Summary
  OutStreamMessageAdapter(Object message)
           
protected OutStreamMessageAdapter(OutStreamMessageAdapter template)
           
 
Method Summary
 void close()
           
 void flush()
           
 Object getPayload()
           
 byte[] getPayloadAsBytes()
          Converts the message implementation into a String representation
 String getPayloadAsString(String encoding)
          Converts the message implementation into a String representation
 OutputStream getStream()
           
 ThreadSafeAccess newThreadCopy()
          By default we return "this".
 void write(byte[] bytes)
           
 void write(byte[] bytes, int offset, int len)
           
 void write(String string)
           
 void write(String string, int offset, int len)
           
 
Methods inherited from class org.mule.providers.AbstractMessageAdapter
addAttachment, addProperties, assertAccess, clearProperties, convertToBytes, getAttachment, getAttachmentNames, getBooleanProperty, getCorrelationGroupSize, getCorrelationId, getCorrelationSequence, getDoubleProperty, getEncoding, getExceptionPayload, getIntProperty, getLongProperty, getPayloadAsString, getProperty, getProperty, getPropertyNames, getReplyTo, getStringProperty, getUniqueId, isDisabled, newException, removeAttachment, removeProperty, resetAccessControl, setBooleanProperty, setCorrelationGroupSize, setCorrelationId, setCorrelationSequence, setDoubleProperty, setEncoding, setExceptionPayload, setIntProperty, setLongProperty, setProperty, setReplyTo, setStringProperty, toString
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OutStreamMessageAdapter

public OutStreamMessageAdapter(Object message)
                        throws MessageTypeNotSupportedException
Throws:
MessageTypeNotSupportedException

OutStreamMessageAdapter

protected OutStreamMessageAdapter(OutStreamMessageAdapter template)
Method Detail

getPayloadAsString

public String getPayloadAsString(String encoding)
                          throws Exception
Converts the message implementation into a String representation

Parameters:
encoding - The encoding to use when transforming the message (if necessary). The parameter is used when converting from a byte array
Returns:
String representation of the message payload
Throws:
Exception - Implementation may throw an endpoint specific exception

getPayloadAsBytes

public byte[] getPayloadAsBytes()
                         throws Exception
Converts the message implementation into a String representation

Returns:
String representation of the message
Throws:
Exception - Implemetation may throw an endpoint specific exception

getPayload

public Object getPayload()
Returns:
the current message

write

public void write(String string)
           throws IOException
Throws:
IOException

write

public void write(String string,
                  int offset,
                  int len)
           throws IOException
Throws:
IOException

write

public void write(byte[] bytes)
           throws IOException
Throws:
IOException

write

public void write(byte[] bytes,
                  int offset,
                  int len)
           throws IOException
Throws:
IOException

getStream

public OutputStream getStream()

flush

public void flush()
           throws IOException
Throws:
IOException

close

public void close()
           throws IOException
Throws:
IOException

newThreadCopy

public ThreadSafeAccess newThreadCopy()
Description copied from class: AbstractMessageAdapter
By default we return "this". This allows older code to inter-operate but doesn't, of course, give the required safety. Subclasses should override this method. Re-writing the threading handling should remove this requirement....

Specified by:
newThreadCopy in interface ThreadSafeAccess
Overrides:
newThreadCopy in class AbstractMessageAdapter
Returns:
A new copy of this


Copyright © 2003-2008 MuleSource, Inc.. All Rights Reserved.