Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## org.mule.api.transport
Interface MessageAdapter

All Superinterfaces:
  Serializable

All Known Subinterfaces:
  MuleMessage, MuleMessageCollection, MutableMessageAdapter

All Known Implementing Classes:
  AbstractMessageAdapter, AjaxMessageAdapter, AxisMessageAdapter, CxfMessageAdapter, DefaultMessageAdapter, DefaultMessageCollection, DefaultMuleMessage, EagerMailMessageAdapter, EjbMessageAdapter, FileContentsMessageAdapter, FileMessageAdapter, HttpMessageAdapter, HttpRequestMessageAdapter, JmsMessageAdapter, MailMessageAdapter, MulticastMessageAdapter, RmiMessageAdapter, SimpleMailMessageAdapter, UdpMessageAdapter, WriterMessageAdapter, XmppMessageAdapter

    public interface MessageAdapter

extends Serializable

`MessageAdapter` provides a common abstraction of different message implementations provided by different underlying technologies.

Method Summary
`void` | `addAttachment(String name, DataHandler dataHandler)` Allows for arbitary data attachments to be associated with the Message.
`void` | `addProperties(Map<String,Object> properties)` Adds a map of properties to be associated with this message
`void` | `addProperties(Map<String,Object> properties, PropertyScope scope)` Adds a map of properties to be associated with this message
`void` | `clearProperties()` Removes all properties on this message
`DataHandler` | `getAttachment(String name)` Retrieve an attachment with the given name.
`Set<String>` | `getAttachmentNames()` Returns a set of the names of the attachments on this message.
`boolean` | `getBooleanProperty(String name, boolean defaultValue)` Gets a boolean property from the message
`int` | `getCorrelationGroupSize()` Determines how many messages are in the correlation group
`String` | `getCorrelationId()` Sets a correlationId for this message.
`int` | `getCorrelationSequence()` Gets the sequence or ordering number for this message in the the correlation group (as defined by the correlationId)
`double` | `getDoubleProperty(String name, double defaultValue)` Gets a double property from the message
`String` | `getEncoding()` Gets the encoding for the current message.
`ExceptionPayload` | `getExceptionPayload()` If an error occurred during the processing of this message this will return a ErrorPayload that contains the root exception and Mule error code, plus any other releated info
`int` | `getIntProperty(String name, int defaultValue)` Gets an integer property from the message
`long` | `getLongProperty(String name, long defaultValue)` Gets a long property from the message
`Object` | `getPayload()`
`Object` | `getProperty(String key)` Gets a property of the message implementation
`Object` | `getProperty(String name, Object defaultValue)` Gets a property from the message
`Object` | `getProperty(String name, PropertyScope scope)` Gets a property from the message with a given scope
`Set<String>` | `getPropertyNames()`
`Set<String>` | `getPropertyNames(PropertyScope scope)` Gets all property names in a given scope
`Object` | `getReplyTo()` Returns a replyTo address for this message.
`String` | `getStringProperty(String name, String defaultValue)` Gets a String property from the message
`String` | `getUniqueId()` gets the unique identifier for the message.
`void` | `release()` Perform any clean up operations on the message resource.
`void` | `removeAttachment(String name)` Remove an attahcment form this message with the specifed name
`Object` | `removeProperty(String key)` Removes a property on this message
`void` | `setBooleanProperty(String name, boolean value)` Sets a boolean property on the message
`void` | `setCorrelationGroupSize(int size)` Determines how many messages are in the correlation group
`void` | `setCorrelationId(String id)` Sets a correlationId for this message.
`void` | `setCorrelationSequence(int sequence)` Gets the sequence or ordering number for this message in the the correlation group (as defined by the correlationId)
`void` | `setDoubleProperty(String name, double value)` Sets a double property on the message
`void` | `setEncoding(String encoding)` Sets the encoding for this message
`void` | `setExceptionPayload(ExceptionPayload payload)` If an error occurs while processing this message, a ErrorPayload is attached which contains the root exception and Mule error code, plus any other releated info.
`void` | `setIntProperty(String name, int value)` Sets a integerproperty on the message
`void` | `setLongProperty(String name, long value)` Sets a long property on the message
`void` | `setProperty(String key, Object value)` Set a property on the message
`void` | `setProperty(String key, Object value, PropertyScope scope)` Set a property on the message
`void` | `setReplyTo(Object replyTo)` Sets a replyTo address for this message.
`void` | `setStringProperty(String name, String value)` Sets a String property on the message

Method Detail

### addProperties

    void addProperties(Map<String,Object> properties)

  Adds a map of properties to be associated with this message

  Parameters:
    `properties` - the properties add to this message

### addProperties

    void addProperties(Map<String,Object> properties,
                       PropertyScope scope)

  Adds a map of properties to be associated with this message

  Parameters:
    `properties` - the properties add to this message
    `scope` - the scope in which the proeprties should be added

### clearProperties

    void clearProperties()

  Removes all properties on this message

### getProperty

    Object getProperty(String key)

  Gets a property of the message implementation

  Parameters:
    `key` - the key on which to lookup the property value
  Returns:
    the property value or null if the property does not exist

### setProperty

    void setProperty(String key,
                     Object value)

  Set a property on the message

  Parameters:
    `key` - the key on which to associate the value
    `value` - the property value

### setProperty

    void setProperty(String key,
                     Object value,
                     PropertyScope scope)

  Set a property on the message

  Parameters:
    `key` - the key on which to associate the value
    `value` - the property value
    `scope` - The scope at which to set the property at
  See Also:
    `PropertyScope`

### removeProperty

    Object removeProperty(String key)

  Removes a property on this message

  Parameters:
    `key` - the property key to remove
  Returns:
    the removed property value or null if the property did not exist

### getPropertyNames

    Set<String> getPropertyNames()

  Returns:
    all property keys on this message

### getPropertyNames

    Set<String> getPropertyNames(PropertyScope scope)

  Gets all property names in a given scope

  Parameters:
    `scope` - the scope of property names
  Returns:
    all property keys on this message

### getPayload

    Object getPayload()

  Returns:
    the current message

### getUniqueId

    String getUniqueId()

  gets the unique identifier for the message. It's up to the implementation to ensure a unique id

  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.

### getProperty

    Object getProperty(String name,
                       Object defaultValue)

  Gets a property from the message

  Parameters:
    `name` - the name or key of the property
    `defaultValue` - a default value if the property doesn't exist in the event
  Returns:
    the property value or the defaultValue if the property does not exist

### getProperty

    Object getProperty(String name,
                       PropertyScope scope)

  Gets a property from the message with a given scope

  Parameters:
    `name` - the name or key of the property
    `scope` - The scope of the property to retrieve
  Returns:
    the property value or the defaultValue if the property does not exist in the specificed scope

### getIntProperty

    int getIntProperty(String name,
                       int defaultValue)

  Gets an integer property from the message

  Parameters:
    `name` - the name or key of the property
    `defaultValue` - a default value if the property doesn't exist in the event
  Returns:
    the property value or the defaultValue if the property does not exist

### getLongProperty

    long getLongProperty(String name,
                         long defaultValue)

  Gets a long property from the message

  Parameters:
    `name` - the name or key of the property
    `defaultValue` - a default value if the property doesn't exist in the event
  Returns:
    the property value or the defaultValue if the property does not exist

### getDoubleProperty

    double getDoubleProperty(String name,
                             double defaultValue)

  Gets a double property from the message

  Parameters:
    `name` - the name or key of the property
    `defaultValue` - a default value if the property doesn't exist in the event
  Returns:
    the property value or the defaultValue if the property does not exist

### getBooleanProperty

    boolean getBooleanProperty(String name,
                               boolean defaultValue)

  Gets a boolean property from the message

  Parameters:
    `name` - the name or key of the property
    `defaultValue` - a default value if the property doesn't exist in the event
  Returns:
    the property value or the defaultValue if the property does not exist

### setBooleanProperty

    void setBooleanProperty(String name,
                            boolean value)

  Sets a boolean property on the message

  Parameters:
    `name` - the property name or key
    `value` - the property value

### setIntProperty

    void setIntProperty(String name,
                        int value)

  Sets a integerproperty on the message

  Parameters:
    `name` - the property name or key
    `value` - the property value

### setLongProperty

    void setLongProperty(String name,
                         long value)

  Sets a long property on the message

  Parameters:
    `name` - the property name or key
    `value` - the property value

### setDoubleProperty

    void setDoubleProperty(String name,
                           double value)

  Sets a double property on the message

  Parameters:
    `name` - the property name or key
    `value` - the property value

### getStringProperty

    String getStringProperty(String name,
                             String defaultValue)

  Gets a String property from the message

  Parameters:
    `name` - the name or key of the property
    `defaultValue` - a default value if the property doesn't exist in the event
  Returns:
    the property value or the defaultValue if the property does not exist

### setStringProperty

    void setStringProperty(String name,
                           String value)

  Sets a String property on the message

  Parameters:
    `name` - the property name or key
    `value` - the property value

### setCorrelationId

    void setCorrelationId(String id)

  Sets a correlationId for this message. The correlation Id can be used by components in the system to manage message relations

  transport protocol. As such not all messages will support the notion of a correlationId i.e. tcp or file. In this situation the correlation Id is set as a property of the message where it's up to developer to keep the association with the message. For example if the message is serialised to xml the correlationId will be available in the message.

  Parameters:
    `id` - the Id reference for this relationship

### getCorrelationId

    String getCorrelationId()

  Sets a correlationId for this message. The correlation Id can be used by components in the system to manage message relations.

  The correlationId is associated with the message using the underlying transport protocol. As such not all messages will support the notion of a correlationId i.e. tcp or file. In this situation the correlation Id is set as a property of the message where it's up to developer to keep the association with the message. For example if the message is serialised to xml the correlationId will be available in the message.

  Returns:
    the correlationId for this message or null if one hasn't been set

### getCorrelationSequence

    int getCorrelationSequence()

  Gets the sequence or ordering number for this message in the the correlation group (as defined by the correlationId)

  Returns:
    the sequence number or -1 if the sequence is not important

### setCorrelationSequence

    void setCorrelationSequence(int sequence)

  Gets the sequence or ordering number for this message in the the correlation group (as defined by the correlationId)

  Parameters:
    `sequence` - the sequence number or -1 if the sequence is not important

### getCorrelationGroupSize

    int getCorrelationGroupSize()

  Determines how many messages are in the correlation group

  Returns:
    total messages in this group or -1 if the size is not known

### setCorrelationGroupSize

    void setCorrelationGroupSize(int size)

  Determines how many messages are in the correlation group

  Parameters:
    `size` - the total messages in this group or -1 if the size is not known

### setReplyTo

    void setReplyTo(Object replyTo)

  Sets a replyTo address for this message. This is useful in an asynchronous environment where the caller doesn't wait for a response and the response needs to be routed somewhere for further processing. The value of this field can be any valid endpointUri url.

  Parameters:
    `replyTo` - the endpointUri url to reply to

### getReplyTo

    Object getReplyTo()

  Returns a replyTo address for this message. This is useful in an asynchronous environment where the caller doesn't wait for a response and the response needs to be routed somewhere for further processing. The value of this field can be any valid endpointUri url.

  Returns:
    the endpointUri url to reply to or null if one has not been set

### getExceptionPayload

    ExceptionPayload getExceptionPayload()

  If an error occurred during the processing of this message this will return a ErrorPayload that contains the root exception and Mule error code, plus any other releated info

  Returns:
    The exception payload (if any) attached to this message

### setExceptionPayload

    void setExceptionPayload(ExceptionPayload payload)

  If an error occurs while processing this message, a ErrorPayload is attached which contains the root exception and Mule error code, plus any other releated info.

  Parameters:
    `payload` - The exception payload to attach to this message

### addAttachment

    void addAttachment(String name,
                       DataHandler dataHandler)
                       throws Exception

  Allows for arbitary data attachments to be associated with the Message. These attachements work in the same way that email attachments work. Attachments can be binary or text

  Parameters:
    `name` - the name to associate with the attachment
    `dataHandler` - The attachment datahandler to use. This will be used to interract with the attachment data
  Throws:
    `Exception`
  See Also:
    `DataHandler`

### removeAttachment

    void removeAttachment(String name)
                          throws Exception

  Remove an attahcment form this message with the specifed name

  Parameters:
    `name` - the name of the attachment to remove. If the attachment does not exist, the request may be ignorred
  Throws:
    `Exception` - different messaging systems handle attachments differnetly, as such some will throw an exception if an attahcment does dot exist.

### getAttachment

    DataHandler getAttachment(String name)

  Retrieve an attachment with the given name. If the attachment does not exist, null will be returned

  Parameters:
    `name` - the name of the attachment to retrieve
  Returns:
    the attachment with the given name or null if the attachment does not exist
  See Also:
    `DataHandler`

### getAttachmentNames

    Set<String> getAttachmentNames()

  Returns a set of the names of the attachments on this message. If there are no attachments an empty set will be returned.

  Returns:
    a set of the names of the attachments on this message. If there are no attachments an empty set will be returned.

### getEncoding

    String getEncoding()

  Gets the encoding for the current message. For potocols that send encoding information with the message, this method should be overriden to expose the transport encoding, otherwise the default encoding in the Mule configuration will be used.

  Returns:
    the encoding for this message. This method must never return null

### setEncoding

    void setEncoding(String encoding)

  Sets the encoding for this message

  Parameters:
    `encoding` - the encoding to use

### release

    void release()

  Perform any clean up operations on the message resource. Typically this is used to esure that a message stream is closed

Overview | Package | Class | Use | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

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