Recommended: Sing it, brah! 5 fabulous songs for developers
JW's Top 5
Optimize with a SATA RAID Storage Solution
Range of capacities as low as $1250 per TB. Ideal if you currently rely on servers/disks/JBODs
Page 5 of 7
A Mule model encapsulates and manages the runtime behavior of a Mule server instance. A model consists of:
The Mule manager maintains and provides the following services:
The diagram in Figure 2 illustrates a high-level view of the message flow for the Mule architecture.
![]()
Figure 2: Mule high-level architecture. Click on thumbnail to view full-sized image.
Mule events contain event data and properties examined and manipulated by event-aware components. The properties are arbitrary and can be set at any time after an event is created.
The org.mule.umo.UMOEvent class represents an event occurring in the Mule environment. All data sent or received within the Mule environment is passed
between components as an instance of UMOEvent. The data in a Mule event can be accessed in its original format or in a transformed format. A Mule event uses a transformer
associated with the provider that received the event to transform the event's payload into a format the receiving component
understands.
The payload for a Mule event is contained within an instance of the org.mule.umo.UMOMessage interface. A UMOMessageinstance is composed of the payload itself and its associated properties. This interface also acts as a common abstraction
of different message implementations provided by different underlying technologies.
The org.mule.extras.client.MuleClient class defines a simple API that allows Mule clients to send and receive events to and from a Mule server. In most Mule applications,
events are triggered by some external occurrence, such as a message received on a topic or a file being deleted from a directory.
The following illustrates how to send an event synchronously to another Mule component:
String componentName = "MyReceiver"; // The name of the receiving component.
String transformers = null; // A comma-separated list of transformers
// to apply to the result message.
String payload = "A test event"; // The payload of the event.
java.util.Map messageProperties = null; // Any properties to be associated
// with the payload.
MuleClient client = new MuleClient();
UMOMessage message = client.sendDirect(componentName,
transformers,
payload,
messageProperties);
System.out.println("Event result: " + message.getPayloadAsString());
An instance of MuleClient requires a server URL to define the endpoint for the remote Mule server to which the MuleClientinstance will connect. The URL defines the protocol, the message's endpoint destination, and, optionally, the provider to
use when dispatching the event. Endpoint examples are:
Mule can send and receive events in three different ways:
Archived Discussions (Read only)