Appendix D. Mule component overview

You can configure many different components in Mule 2.0: the basic Mule elements, as well as the connector-specific elements such as JMS connectors, file-specific transformers, and so on.

The following tables explain each element you can use in the Mule configuration file, beginning with the basic Mule elements and then continuing to the connector-specific configuration elements. Most of the descriptions are based on the XSD documentation and the Javadocs for the specific classes.

Mule core elements

The Mule core elements, listed in table D.1, form the basis of any Mule configuration file. These elements are from the http://www.mulesource.org/schema/mule/core/2.0 namespace.

Table D.1. Mule core elements

Name

Description

and-filter Returns true only if all the enclosed filters return true.
append-string-transformer A transformer that appends a string to a string payload.
array-entry-point-resolver Delivers the message to a method that takes a single array as its argument. This element can be set on the model or component; the model value provides a default that individual component values can override. This element can also be used directly or as part of a set of resolvers; the resolvers in a set are used in turn until one is successful.
auto-transformer A transformer that uses the transform-discovery mechanism to convert the message payload. This transformer works much better when transforming custom object types rather than Java types because there is less chance for ambiguity.
base64-decoder-transformer A transformer that base64-decodes a message to give an array of bytes.
base64-encoder-transformer A transformer that base64-encodes a string or byte array message.
bridge-component Transfers a message from inbound to outbound endpoints. This name is provided for backward compatibility—it’s equivalent to not specifying any component.
byte-array-to-hex-string-transformer A transformer that converts a byte array to a string of hexadecimal digits.
byte-array-to-object-transformer A transformer that converts a byte array to an object (either deserializing or converting to a string).
byte-array-to-serializable-transformer A transformer that converts a byte array to an object (deserializing the object).
byte-array-to-string-transformer A transformer that converts a byte array to a string.
callable-entry-point-resolver An entry point resolver for components that implement the Callable interface. This passes a MuleEventContext to the component. This element can be set on the model or component; the model value provides a default that individual component values can override. This element can also be used directly or as part of a set of resolvers; the resolvers in a set are used in turn until one is successful.
chaining-router A router that sends the event through multiple endpoints using the result of the first invocation as the input for the next.
collection-aggregator-router A router that returns the aggregated result as a MuleMessageCollection that contains all the events from the aggregation.
collection-async-reply-router Configures a collection response router. This returns a MuleMessageCollection message type that contains all events received for the current correlation.
component A simple POJO component that is invoked by Mule when a message is received. The instance can be specified via a factory or a class.
component-threading-profile The threading profile to use on the component.
correlation-resequencer-router A router that resequences events according to their dispatch sequence in the correlation group.
custom-async-reply-router Lets you specify your own custom async-reply-router instead of using the ones provided by Mule.
custom-catch-all-strategy Lets you use a custom catch-all-strategy instead of using the Mule-provided ones.
custom-connector A user-defined connector.
custom-correlation-aggregator-router Lets you create a user-defined aggregator.
custom-entry-point-resolver A custom entry point resolver that allows user-supplied code to determine how a message is passed to a component in Java. This element can be set on the model or component; the model value provides a default that individual component values can override. This element can also be used directly or as part of a set of resolvers; the resolvers in a set are used in turn until one is successful.
custom-entry-point-resolver-set A custom entry point resolver set that allows user-supplied code to determine how a message is passed to a component in Java. This element can be set on the model or component; the model value provides a default that individual component values can override.
custom-exception-strategy A user-defined exception strategy.
custom-filter A user-implemented filter.
custom-forwarding-catch-all-strategy Lets you create a user defined custom-forwarding-catch-all-strategy.
custom-inbound-router Lets you use a custom custom-inbound-router instead of using the Mule-provided ones.
custom-lifecycle-adapter-factory Lets you create a custom-lifecycle-adapter-factory.
custom-message-info-mapping Allows the configuration of a custom implementation of MessageInfoMapping.
custom-outbound-router Lets you use a custom custom-outbound-router instead of using the Mule-provided ones.
custom-service A user-implemented service (typically used only in testing).
custom-transaction Allow access to user-defined or otherwise unsupported third-party transactions.
custom-transaction-manager A user-implemented transaction manager.
custom-transformer A user-implemented transformer.
decrypt-transformer A transformer that decrypts a message.
default-connector-exception-strategy Provides default exception-handling via an endpoint.
default-service-exception-strategy Provides default exception-handling via an endpoint.
echo-component Logs the message and returns the payload as the result.
encrypt-transformer A transformer that encrypts a message.
encryption-security-filter A filter that provides password-based encryption.
endpoint An endpoint template that you can use to construct an inbound or outbound endpoint elsewhere in the configuration by referencing the endpoint’s name. Each transport implements its own endpoint element with a friendlier syntax, but this generic element can be used with any transport by supplying the correct address URI. For example, vm://foo describes a VM transport endpoint.
endpoint-selector-router A router that lets you route the event based on a certain property from the event.
entry-point-resolver-set An extensible set of entry point resolvers that determine how a message is passed to a component in Java. Each entry-point resolver is tried in turn until one succeeds in delivering the message to the component. This element can be set on the model or component; the model value provides a default that individual component values can override.
exception-based-router A router that lets you route an exception to a specific endpoint based on the type of exception.
exception-type-filter A filter that matches the type of an exception.
expression-filter A filter that can evaluate a range of expressions. It supports base expression types such as header, payload, regex, and wildcard.
expression-message-info-mapping Allows expressions to be configured to extract the message information.
expression-transformer A transformer that evaluates one or more expressions on the current event. Each expression equates to a parameter in the return message. The return message for two or more expressions is an Object[].
filter A filter that is defined elsewhere (at the global level, or as a Spring bean).
filtering-router A router that uses a filter to define where to route a specific message to.
forwarding-catch-all-strategy Acts as a catch-and-forward router for any events not caught by the router this strategy is associated with. Users can assign an endpoint to this strategy, where all events are forwarded.
forwarding-router Forwards an incoming event over another transport without invoking a service. This can be used to implement a bridge across different transports.
gzip-compress-transformer A transformer that compresses a byte array using gzip.
gzip-uncompress-transformer A transformer that uncompresses a byte array using gzip.
hex-string-to-byte-array-transformer A transformer that converts a string of hexadecimal digits to a byte array.
idempotent-receiver-router A router that ensures that only unique messages are received by a service. It does so by checking the unique ID of the incoming message.
idempotent-secure-hash-receiver-router A router that ensures that only unique messages are received by a service. It does so by calculating the SHA-256 hash of the message.
inbound-endpoint An inbound endpoint that receives messages from the associated transport. Each transport implements its own inbound endpoint element with a friendlier syntax, but this generic element can be used with any transport by supplying the correct address URI. For example, vm://foo describes a VM transport endpoint.
inbound-pass-through-router A router that allows inbound routing over all registered endpoints without any filtering. This class is used by Mule when a specific inbound router hasn’t been configured on a UMODescriptor.
include-entry-point A possible method for delivery.
jboss-transaction-manager The JBoss transaction manager.
jndi-transaction-manager Retrieves a named transaction manager factory from JNDI.
jrun-transaction-manager The JRun transaction manager.
legacy-entry-point-resolver-set An extensible set of entry-point resolvers (which determine how a message is passed to a component in Java) that contains resolvers to implement the standard logic. This is provided by default and is only needed explicitly if it will be extended with other entry point resolvers. This element can be set on the model or component; the model value provides a default that individual component values can override.
list-message-splitter-router A splitter that accepts a List as a message payload and then routes list elements as messages over an endpoint where the endpoint’s filter accepts the payload.
log-component Logs the message content (or content length if it’s a large message).
logging-catch-all-strategy A simple strategy that only logs events not caught by the router associated with this strategy.
message-chunking-aggregator-router Aggregates the various chunks from message-chunking-router back together.
message-chunking-router A router that breaks up the current message into smaller parts and sends them to the same destination. The Destination service needs to have a MessageChunkingAggregator inbound router in order to rebuild the message at the other end.
message-properties-transformer A transformer that can add or delete message properties.
message-property-filter A filter that matches properties on an event. This can be useful because the event properties represent all the meta information about the event from the underlying transport; for an event received over HTTP, you can check for HTTP headers, and so on. The pattern should be expressed as a key/value pair: for example, propertyName=value. To compare more than one property, use the logic filters for And, Or, and Not expressions. By default, the comparison is case sensitive; you can set the caseSensitive property to override this.
method-entry-point-resolver Delivers the message to a named method. This element can be set on the model or component; the model value provides a default that individual component values can override. This element can also be used directly or as part of a set of resolvers; the resolvers in a set are used in turn until one is successful.
model By default, a Staged Event Driven Architecture (SEDA) model.
mule Either the root element of a Mule configuration or a top-level element in a Spring configuration that contains further Mule elements.
multicasting-router A router that broadcasts the current message to every endpoint registered with this router.
no-action-transformer A transformer that has no effect.
no-arguments-entry-point-resolver Calls a method without arguments (the message isn’t passed to the component).
not-filter Inverts the enclosed filter (if it returns true for a message, this returns false, and vice versa).
null-component Throws an exception if it receives a message.
object-to-byte-array-transformer A transformer that serializes all objects except strings (which are converted using getBytes()).
object-to-string-transformer A transformer that gives a human-readable description of various types (useful for debugging).
or-filter Returns true if any of the enclosed filters returns true.
outbound-endpoint Sends messages to the associated transport. Each transport implements its own outbound endpoint element with a friendlier syntax, but this generic element can be used with any transport by supplying the correct address URI. For example, vm://foo describes a VM transport endpoint.
outbound-pass-through-router Allows outbound routing over a single endpoint without any filtering. This class is used by Mule when a single outbound router is set on a UMODescriptor.
payload-type-filter A filter that matches the type of the payload.
pooled-component A pooled POJO component that is invoked by Mule when a message is received. The instance can be specified via a factory or class.
pooling-profile Defines the object-pooling parameters for the service it’s associated with.
properties Sets Mule properties. These are name/value pairs that can be set on components, services, and so on, and that provide a generic way of configuring the system. In Mule 2, you typically shouldn’t need to use generic properties like this, because almost all functionality is exposed via dedicated elements. But it can be useful in configuring obscure or overlooked options and in configuring transports from the generic endpoint elements.
property-entry-point-resolver Uses a message property to select the component method to be called. This element can be set on the model or component; the model value provides a default that individual component values can override. This element can also be used directly or as part of a set of resolvers; the resolvers in a set are used in turn until one is successful.
prototype-object Uses the defined component as a prototype.
queue-profile Configures the queue profile used on a component.
recipient-list-router A router that you can configure to send the received message to multiple endpoints at the same time.
reflection-entry-point-resolver Generates a list of candidate methods from the component via reflections. This element can be set on the model or component; the model value provides a default that individual component values can override. This element can also be used directly or as part of a set of resolvers; the resolvers in a set are used in turn until one is successful.
regex-filter A filter that matches string messages against a regular expression. The Java regular expression engine (java.util.regex.Pattern) is used.
resin-transaction-manager The Resin transaction manager.
security-manager The default security manager.
seda-model A SEDA model, which has separate threads and queues for each component.
selective-consumer-router An inbound router used to filter out unwanted events. The filtering is performed by a Filter that can be set on the router.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.47.208