org.mule.umo
Interface UMOEvent

All Known Implementing Classes:
MuleEvent

public interface UMOEvent

UMOEvent represents any data event occuring in the Mule environment. All data sent or received within the mule environment will be passed between components as an UMOEvent.

The UMOEvent holds a UMOMessage payload and provides helper methods for obtaining the data in a format that the receiving Mule UMO understands. The event can also maintain any number of properties that can be set and retrieved by Mule UMO components.

Version:
$Revision: 1.1.1.1 $
Author:
Ross Mason
See Also:
UMOMessage

Field Summary
static int TIMEOUT_DO_NOT_WAIT
           
static int TIMEOUT_WAIT_FOREVER
           
 
Method Summary
 boolean getBooleanProperty(java.lang.String name, boolean defaultValue)
          Gets a Boolean property associated with the current event.
 UMOComponent getComponent()
          Retrieves the component for the current event
 double getDoubleProperty(java.lang.String name, double defaultValue)
          Gets a Double property associated with the current event.
 UMOEndpoint getEndpoint()
          Gets the endpoint associated with this event
 java.lang.String getId()
          Every event in the system is assigned a universally unique id (UUID).
 int getIntProperty(java.lang.String name, int defaultValue)
          Gets an Integer property associated with the current event.
 long getLongProperty(java.lang.String name, long defaultValue)
          Gets a Long property associated with the current event.
 UMOMessage getMessage()
          Returns the message payload for this event
 byte[] getMessageAsBytes()
          Reterns the conents of the message as a byte array.
 java.lang.String getMessageAsString()
          Returns the message contents as a string
 java.io.OutputStream getOutputStream()
          An outputstream the can optionally be used write response data to an incoming message.
 java.util.Map getProperties()
          Returns a map of properties associated with the event
 java.lang.Object getProperty(java.lang.String name)
          Gets a property associated with the current event.
 java.lang.Object getProperty(java.lang.String name, java.lang.Object defaultValue)
          Gets a property associated with the current event.
 UMOSession getSession()
          Retrieves the component session for the current event
 int getTimeout()
          The number of milliseconds to wait for a return event when running synchronously.
 java.lang.Object getTransformedMessage()
          Returns the message transformed into it's recognised or expected format.
 byte[] getTransformedMessageAsBytes()
          Returns the message transformed into it's recognised or expected format and then into an array of bytes.
 java.lang.String getTransformedMessageAsString()
          Returns the message transformed into it's recognised or expected format and then into a String.
 boolean isStopFurtherProcessing()
          Determines whether the default processing for this event will be executed.
 boolean isSynchronous()
          Determines whether the was sent synchrounously or not
 java.lang.Object removeProperty(java.lang.Object key)
          Removes a property from the event
 void setBooleanProperty(java.lang.String name, boolean value)
          Sets a Boolean property associated with the current event.
 void setDoubleProperty(java.lang.String name, double value)
          Sets a Double property associated with the current event.
 void setIntProperty(java.lang.String name, int value)
          Sets an Integer property associated with the current event.
 void setLongProperty(java.lang.String name, long value)
          Sets a Long property associated with the current event.
 void setProperty(java.lang.String name, java.lang.Object value)
          Sets a property associated with the current event.
 void setStopFurtherProcessing(boolean stopFurtherProcessing)
          Determines whether the default processing for this event will be executed.
 void setSynchronous(boolean value)
          Determines whether the was sent synchrounously or not
 void setTimeout(int timeout)
          The number of milliseconds to wait for a return event when running synchronously.
 

Field Detail

TIMEOUT_WAIT_FOREVER

public static final int TIMEOUT_WAIT_FOREVER
See Also:
Constant Field Values

TIMEOUT_DO_NOT_WAIT

public static final int TIMEOUT_DO_NOT_WAIT
See Also:
Constant Field Values
Method Detail

getMessage

public UMOMessage getMessage()
Returns the message payload for this event

Returns:
the message payload for this event

getMessageAsBytes

public byte[] getMessageAsBytes()
                         throws UMOException
Reterns the conents of the message as a byte array.

Returns:
the conents of the message as a byte array
Throws:
UMOException - if the message cannot be converted into an array of bytes

getTransformedMessage

public java.lang.Object getTransformedMessage()
                                       throws TransformerException
Returns the message transformed into it's recognised or expected format. The transformer used is the one configured on the endpoint through which this event was received.

Returns:
the message transformed into it's recognised or expected format.
Throws:
TransformerException - if a failure occurs in the transformer
See Also:
UMOTransformer

getTransformedMessageAsBytes

public byte[] getTransformedMessageAsBytes()
                                    throws TransformerException
Returns the message transformed into it's recognised or expected format and then into an array of bytes. The transformer used is the one configured on the endpoint through which this event was received.

Returns:
the message transformed into it's recognised or expected format as an array of bytes.
Throws:
TransformerException - if a failure occurs in the transformer
See Also:
UMOTransformer

getTransformedMessageAsString

public java.lang.String getTransformedMessageAsString()
                                               throws TransformerException
Returns the message transformed into it's recognised or expected format and then into a String. The transformer used is the one configured on the endpoint through which this event was received.

Returns:
the message transformed into it's recognised or expected format as a Strings.
Throws:
TransformerException - if a failure occurs in the transformer
See Also:
UMOTransformer

getMessageAsString

public java.lang.String getMessageAsString()
                                    throws UMOException
Returns the message contents as a string

Returns:
the message contents as a string
Throws:
UMOException - if the message cannot be converted into a string

getId

public java.lang.String getId()
Every event in the system is assigned a universally unique id (UUID).

Returns:
the unique identifier for the event

getProperty

public java.lang.Object getProperty(java.lang.String name)
Gets a property associated with the current event. Calling this method is equivilent to calling event.getMessage().getProperty(...)

Parameters:
name - the property name
Returns:
the property value or null if the property does not exist

getProperty

public java.lang.Object getProperty(java.lang.String name,
                                    java.lang.Object defaultValue)
Gets a property associated with the current event. Calling this method is equivilent to calling event.getMessage().getProperty(..., ...)

Parameters:
name - the property name
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

getIntProperty

public int getIntProperty(java.lang.String name,
                          int defaultValue)
Gets an Integer property associated with the current event. Calling this method is equivilent to calling event.getMessage().getIntProperty(..., ...)

Parameters:
name - the property name
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

public long getLongProperty(java.lang.String name,
                            long defaultValue)
Gets a Long property associated with the current event. Calling this method is equivilent to calling event.getMessage().getLongProperty(..., ...)

Parameters:
name - the property name
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

public double getDoubleProperty(java.lang.String name,
                                double defaultValue)
Gets a Double property associated with the current event. Calling this method is equivilent to calling event.getMessage().getDoubleProperty(..., ...)

Parameters:
name - the property name
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

public boolean getBooleanProperty(java.lang.String name,
                                  boolean defaultValue)
Gets a Boolean property associated with the current event. Calling this method is equivilent to calling event.getMessage().getbooleanProperty(..., ...)

Parameters:
name - the property name
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

setProperty

public void setProperty(java.lang.String name,
                        java.lang.Object value)
Sets a property associated with the current event. Calling this method is equivilent to calling event.getMessage().setProperty(..., ...)

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

setBooleanProperty

public void setBooleanProperty(java.lang.String name,
                               boolean value)
Sets a Boolean property associated with the current event. Calling this method is equivilent to calling event.getMessage().setBooleanProperty(..., ...)

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

setIntProperty

public void setIntProperty(java.lang.String name,
                           int value)
Sets an Integer property associated with the current event. Calling this method is equivilent to calling event.getMessage().setIntProperty(..., ...)

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

setLongProperty

public void setLongProperty(java.lang.String name,
                            long value)
Sets a Long property associated with the current event. Calling this method is equivilent to calling event.getMessage().setLongProperty(..., ...)

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

setDoubleProperty

public void setDoubleProperty(java.lang.String name,
                              double value)
Sets a Double property associated with the current event. Calling this method is equivilent to calling event.getMessage().setDoubleProperty(..., ...)

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

getProperties

public java.util.Map getProperties()
Returns a map of properties associated with the event

Returns:
a map of properties on the event

getEndpoint

public UMOEndpoint getEndpoint()
Gets the endpoint associated with this event

Returns:
the endpoint associated with this event

getSession

public UMOSession getSession()
Retrieves the component session for the current event

Returns:
the component session for the event

getComponent

public UMOComponent getComponent()
Retrieves the component for the current event

Returns:
the component for the event

isStopFurtherProcessing

public boolean isStopFurtherProcessing()
Determines whether the default processing for this event will be executed. By default, the Mule server will route events according to a components configuration. The user can override this behaviour by obtaining a reference to the Event context, either by implementing org.mule.umo.lifecycle.Callable or calling UMOManager.getEventContext to obtain the UMOEventContext for the current thread. The user can programmatically control how events are dispached.

Returns:
Returns true is the user has set stopFurtherProcessing.
See Also:
UMOManager, UMOEventContext, Callable

setStopFurtherProcessing

public void setStopFurtherProcessing(boolean stopFurtherProcessing)
Determines whether the default processing for this event will be executed. By default, the Mule server will route events according to a components configuration. The user can override this behaviour by obtaining a reference to the Event context, either by implementing org.mule.umo.lifecycle.Callable or calling UMOManager.getEventContext to obtain the UMOEventContext for the current thread. The user can programmatically control how events are dispached.

Parameters:
stopFurtherProcessing - the value to set.

isSynchronous

public boolean isSynchronous()
Determines whether the was sent synchrounously or not

Returns:
true if the event is synchronous

setSynchronous

public void setSynchronous(boolean value)
Determines whether the was sent synchrounously or not

Parameters:
value - true if the event is synchronous

getTimeout

public int getTimeout()
The number of milliseconds to wait for a return event when running synchronously. 0 wait forever -1 try and receive, but do not wait or a positive millisecod value

Returns:
the event timeout in milliseconds

setTimeout

public void setTimeout(int timeout)
The number of milliseconds to wait for a return event when running synchronously. 0 wait forever -1 try and receive, but do not wait or a positive millisecod value

Parameters:
timeout - the event timeout in milliseconds

getOutputStream

public java.io.OutputStream getOutputStream()
An outputstream the can optionally be used write response data to an incoming message.

Returns:
an output strem if one has been made available by the message receiver that received the message

removeProperty

public java.lang.Object removeProperty(java.lang.Object key)
Removes a property from the event

Parameters:
key - the property key to remove
Returns:
the removed property or null if the property was not found or if the underlying message does not return the removed property


Copyright © 2003-2005 SymphonySoft Limited. All Rights Reserved.