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.routing.outbound
Class FilteringOutboundRouter

    java.lang.Object
      org.mule.routing.AbstractRouter
          org.mule.routing.outbound.AbstractOutboundRouter
              org.mule.routing.outbound.FilteringOutboundRouter

All Implemented Interfaces:
  MuleContextAware, Disposable, Initialisable, OutboundRouter, Router

Direct Known Subclasses:
  AbstractMessageSplitter, AbstractRecipientList, ChainingRouter, EndpointSelector, MessageChunkingRouter, MulticastingRouter, OutboundPassThroughRouter, SxcFilteringOutboundRouter, TemplateEndpointRouter

    public class FilteringOutboundRouter

extends AbstractOutboundRouter

`FilteringRouter` is a router that accepts events based on a filter set.

Field Summary
`protected ExpressionManager` | `expressionManager`

Fields inherited from class org.mule.routing.outbound.AbstractOutboundRouter
`ENABLE_CORRELATION_ALWAYS, ENABLE_CORRELATION_IF_NOT_SET, ENABLE_CORRELATION_NEVER, enableCorrelation, endpoints, logger, messageInfoMapping, replyTo, resultsHandler, transactionConfig`

Fields inherited from class org.mule.routing.AbstractRouter
`muleContext`

Fields inherited from interface org.mule.api.lifecycle.Initialisable
`PHASE_NAME`

Fields inherited from interface org.mule.api.lifecycle.Disposable
`PHASE_NAME`

Constructor Summary
`FilteringOutboundRouter()`

Method Summary
`void` | `addEndpoint(OutboundEndpoint endpoint)` Adds an endpoint to this router
`OutboundEndpoint` | `getEndpoint(int index, MuleMessage message)` Will Return the endpont at the given index and will resolve any template tags on the Endpoint URI if necessary
`Filter` | `getFilter()`
`List` | `getTransformers()`
`void` | `initialise()` Method used to perform any initialisation work.
`boolean` | `isMatch(MuleMessage message)` Determines if the event should be processed by this router.
`boolean` | `isRequiresNewMessage()` Determines is this router requires a new message copy.
`boolean` | `isUseTemplates()`
`MuleMessage` | `route(MuleMessage message, MuleSession session)` This method is responsible for routing the Message via the MuleSession.
`void` | `setFilter(Filter filter)`
`void` | `setTransformers(List transformers)`
`void` | `setUseTemplates(boolean useTemplates)`

Methods inherited from class org.mule.routing.outbound.AbstractOutboundRouter
`createTransactionTemplate, dispatch, getEnableCorrelation, getEndpoint, getEndpoints, getMessageInfoMapping, getReplyTo, getResultsHandler, getTransactionConfig, isDynamicEndpoints, removeEndpoint, send, setEnableCorrelation, setEnableCorrelationAsString, setEndpoints, setMessageInfoMapping, setMessageProperties, setReplyTo, setResultsHandler, setTransactionConfig`

Methods inherited from class org.mule.routing.AbstractRouter
`dispose, getMuleContext, getRouterStatistics, setMuleContext, setRouterStatistics`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Methods inherited from interface org.mule.api.routing.Router
`getRouterStatistics, setRouterStatistics`

Methods inherited from interface org.mule.api.lifecycle.Disposable
`dispose`

Field Detail

### expressionManager

    protected ExpressionManager expressionManager

Constructor Detail

### FilteringOutboundRouter

    public FilteringOutboundRouter()

Method Detail

### initialise

    public void initialise()
                    throws InitialisationException

  Description copied from interface: `Initialisable`
  Method used to perform any initialisation work. If a fatal error occurs during initialisation an `InitialisationException` should be thrown, causing the Mule instance to shutdown. If the error is recoverable, say by retrying to connect, a `RecoverableException` should be thrown. There is no guarantee that by throwing a Recoverable exception that the Mule instance will not shut down.

  Specified by:
    `initialise` in interface `Initialisable`
  Overrides:
    `initialise` in class `AbstractRouter`
  Throws:
    `InitialisationException` - if a fatal error occurs causing the Mule instance to shutdown
    `RecoverableException` - if an error occurs that can be recovered from

### route

    public MuleMessage route(MuleMessage message,
                             MuleSession session)
                      throws RoutingException

  Description copied from interface: `OutboundRouter`
  This method is responsible for routing the Message via the MuleSession. The logic for this method will change for each type of router depending on expected behaviour. For example, a MulticastingRouter might just iterate through the list of assoaciated endpoints sending the message. Another type of router such as the ExceptionBasedRouter will hit the first endpoint, if it fails try the second, and so on. Most router implementations will extends the FilteringOutboundRouter which implements all the common logic need for a router.

  Parameters:
    `message` - the message to send via one or more endpoints on this router
    `session` - the session used to actually send the event
  Returns:
    a result message if any from the invocation. If the synchronous flag is false a null result will always be returned.
  Throws:
    `RoutingException`
  See Also:
    `FilteringOutboundRouter`, `ExceptionBasedRouter`, `MulticastingRouter`

### getFilter

    public Filter getFilter()

### setFilter

    public void setFilter(Filter filter)

### isMatch

    public boolean isMatch(MuleMessage message)
                    throws RoutingException

  Description copied from interface: `OutboundRouter`
  Determines if the event should be processed by this router. Routers can be selectively invoked by configuring a filter on them. Usually the filter is applied to the message when calling this method. All core Mule outbound routers extend the FilteringOutboundRouter router that handles this method automatically.

  Parameters:
    `message` - the current message to evaluate
  Returns:
    true if the event should be processed by this router
  Throws:
    `RoutingException`
  See Also:
    `SelectiveConsumer`

### getTransformers

    public List getTransformers()

### setTransformers

    public void setTransformers(List transformers)

### addEndpoint

    public void addEndpoint(OutboundEndpoint endpoint)

  Description copied from interface: `OutboundRouter`
  Adds an endpoint to this router

  Specified by:
    `addEndpoint` in interface `OutboundRouter`
  Overrides:
    `addEndpoint` in class `AbstractOutboundRouter`
  Parameters:
    `endpoint` - the endpoint to add to the router

### getEndpoint

    public OutboundEndpoint getEndpoint(int index,
                                        MuleMessage message)
                                 throws CouldNotRouteOutboundMessageException

  Will Return the endpont at the given index and will resolve any template tags on the Endpoint URI if necessary

  Parameters:
    `index` - the index of the endpoint to get
    `message` - the current message. This is required if template matching is being used
  Returns:
    the endpoint at the index, with any template tags resolved
  Throws:
    `CouldNotRouteOutboundMessageException` - if the template causs the endpoint to become illegal or malformed

### isUseTemplates

    public boolean isUseTemplates()

### setUseTemplates

    public void setUseTemplates(boolean useTemplates)

### isRequiresNewMessage

    public boolean isRequiresNewMessage()

  Description copied from interface: `OutboundRouter`
  Determines is this router requires a new message copy.

  Specified by:
    `isRequiresNewMessage` in interface `OutboundRouter`
  Overrides:
    `isRequiresNewMessage` in class `AbstractOutboundRouter`

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.