org.mule.providers.file
Class FileMessageAdapter

java.lang.Object
  extended by org.mule.providers.AbstractMessageAdapter
      extended by org.mule.providers.file.FileMessageAdapter
All Implemented Interfaces:
Serializable, ThreadSafeAccess, UMOMessageAdapter
Direct Known Subclasses:
FileContentsMessageAdapter

public class FileMessageAdapter
extends AbstractMessageAdapter

FileMessageAdapter provides a wrapper for a file reference. Users can obtain the contents of the message through the payload property and can get the filename and directory in the properties using FileConnector.PROPERTY_FILENAME and FileConnector.PROPERTY_DIRECTORY.

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
protected FileMessageAdapter(FileMessageAdapter template)
           
  FileMessageAdapter(Object message)
           
 
Method Summary
 Object getPayload()
           
 byte[] getPayloadAsBytes()
          Converts the message implementation into a byte array representation
 String getPayloadAsString(String encoding)
          Converts the message implementation into a String representation
 String getUniqueId()
          gets the unique identifier for the message.
 ThreadSafeAccess newThreadCopy()
          By default we return "this".
protected  void setMessage(File message)
           
 
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, 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

FileMessageAdapter

public FileMessageAdapter(Object message)
                   throws MessagingException
Throws:
MessagingException

FileMessageAdapter

protected FileMessageAdapter(FileMessageAdapter template)
Method Detail

getPayload

public Object getPayload()
Returns:
the current message

getPayloadAsBytes

public byte[] getPayloadAsBytes()
                         throws Exception
Description copied from interface: UMOMessageAdapter
Converts the message implementation into a byte array representation

Returns:
byte array of the message
Throws:
Exception - Implemetation may throw an endpoint specific exception

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

setMessage

protected void setMessage(File message)
                   throws MessagingException
Throws:
MessagingException

getUniqueId

public String getUniqueId()
Description copied from interface: UMOMessageAdapter
gets the unique identifier for the message. It's up to the implementation to ensure a unique id

Specified by:
getUniqueId in interface UMOMessageAdapter
Overrides:
getUniqueId in class AbstractMessageAdapter
Returns:
a unique message id. The Id should never be null. If the underlying transport does not have the notion of a message Id, one shuold be generated. The generated Id should be a UUID.

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.