org.mule.impl
Class ImmutableMuleDescriptor

java.lang.Object
  extended byorg.mule.impl.ImmutableMuleDescriptor
All Implemented Interfaces:
UMOImmutableDescriptor
Direct Known Subclasses:
MuleDescriptor

public class ImmutableMuleDescriptor
extends java.lang.Object
implements UMOImmutableDescriptor

MuleDescriptor describes all the properties for a Mule UMO. New Mule UMOs can be initialised as needed from their descriptor.

Version:
$Revision: 1.4 $
Author:
Ross Mason

Field Summary
protected  boolean containerManaged
          Determines whether the component described by this descriptor is hosted in a container.
protected  java.beans.ExceptionListener exceptionListener
          holds the exception stategy for this UMO
static java.lang.String IMPLEMENTATION_TYPE_LOCAL
          Implementation type can be prepended to the implementation string to control how the implementation is loaded.
protected  java.lang.Object implementationReference
          The implementationReference used to create the Object UMO instance Can either be a string such as a container reference or classname or can be an instance of the implementation
protected  UMOEndpoint inboundEndpoint
           
protected  UMOInboundMessageRouter inboundRouter
           
protected  UMOTransformer inboundTransformer
          The transformer for the default receive endpoint
protected  java.util.List initialisationCallbacks
           
protected  java.util.List intecerptorList
          A list of UMOinteceptors that will be executed when the Mule UMO executed
protected static java.lang.String MULE_PROPERTY_DOT_PROPERTIES
          Property that allows for a property file to be used to load properties instead of listing them directly in the mule-configuration file
protected  java.lang.String name
          The descriptor name
protected  UMOEndpoint outboundEndpoint
           
protected  UMOOutboundMessageRouter outboundRouter
           
protected  UMOTransformer outboundTransformer
          The transformer for the default send Endpoint
protected  PoolingProfile poolingProfile
          the pooling configuration used when initialising the component described by this descriptor.
protected  java.util.HashMap properties
          The properties for the Mule UMO.
protected  QueueProfile queueProfile
          The queuing profile for events received for this component
protected  UMOResponseMessageRouter responseRouter
           
protected  ThreadingProfile threadingProfile
          The threading profile to use for this component.
protected  java.lang.String version
          The descriptors version
 
Constructor Summary
protected ImmutableMuleDescriptor()
          Default constructor used by mutable versions of this class to provide defaults for certain properties
  ImmutableMuleDescriptor(ImmutableMuleDescriptor descriptor)
          Default constructor.
 
Method Summary
 void fireInitialisationCallbacks(java.lang.Object component)
           
 java.beans.ExceptionListener getExceptionListener()
          The exception strategy to use to handle exceptions in the Mule UMO.
 java.lang.Object getImplementation()
          String used to instansiate the object, this can be a class name or a reference to an object in a container
 java.lang.Class getImplementationClass()
          Class used to instansiate the object, this can be a class name or a reference to an object in a container
protected  java.lang.Class getImplementationForReference(java.lang.String reference)
          A helper method that will resolved a component for a given reference id.
 UMOEndpoint getInboundEndpoint()
          The inbound Provider to use when receiveing an event.
 UMOInboundMessageRouter getInboundRouter()
          Inbound Routers control how events are received by a component.
 UMOTransformer getInboundTransformer()
          The transformer to use when receiving events or data.
 java.util.List getInterceptors()
          Retuens a list of interceptor objects that will be executed before/after the Mule UMO has executed
 java.lang.String getName()
          Gets the identifier for the Mule UMO created from the descriptor
 UMOEndpoint getOutboundEndpoint()
          The outbound Provider to use when sending an event.
 UMOOutboundMessageRouter getOutboundRouter()
          Outbound Routers control how events are published by a component once.
 UMOTransformer getOutboundTransformer()
          The transformer to use when sending events or data.
 PoolingProfile getPoolingProfile()
           
 java.util.HashMap getProperties()
          Returns any properties configured on this descriptor.
 QueueProfile getQueueProfile()
           
 UMOResponseMessageRouter getResponseRouter()
          Response Routers control how events are returned in a request/response call.
 ThreadingProfile getThreadingProfile()
          The threading profile used but the UMO when managing a component.
 java.lang.String getVersion()
          The version on the Mule UMO.
 boolean isContainerManaged()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

IMPLEMENTATION_TYPE_LOCAL

public static final java.lang.String IMPLEMENTATION_TYPE_LOCAL
Implementation type can be prepended to the implementation string to control how the implementation is loaded. Local mean that the implementation is loaded from the object references i.e. local:myRef would get the implementation from the ObjectReference called myRef. Other implementations may include jndi:myRef

See Also:
Constant Field Values

MULE_PROPERTY_DOT_PROPERTIES

protected static final java.lang.String MULE_PROPERTY_DOT_PROPERTIES
Property that allows for a property file to be used to load properties instead of listing them directly in the mule-configuration file

See Also:
Constant Field Values

exceptionListener

protected java.beans.ExceptionListener exceptionListener
holds the exception stategy for this UMO


implementationReference

protected java.lang.Object implementationReference
The implementationReference used to create the Object UMO instance Can either be a string such as a container reference or classname or can be an instance of the implementation


inboundTransformer

protected UMOTransformer inboundTransformer
The transformer for the default receive endpoint


name

protected java.lang.String name
The descriptor name


outboundTransformer

protected UMOTransformer outboundTransformer
The transformer for the default send Endpoint


properties

protected java.util.HashMap properties
The properties for the Mule UMO. Note HashMap is used instead of Map due to a Spring quirk where the property is not found if specified as a map


version

protected java.lang.String version
The descriptors version


intecerptorList

protected java.util.List intecerptorList
A list of UMOinteceptors that will be executed when the Mule UMO executed


inboundRouter

protected UMOInboundMessageRouter inboundRouter

outboundRouter

protected UMOOutboundMessageRouter outboundRouter

responseRouter

protected UMOResponseMessageRouter responseRouter

inboundEndpoint

protected UMOEndpoint inboundEndpoint

outboundEndpoint

protected UMOEndpoint outboundEndpoint

threadingProfile

protected ThreadingProfile threadingProfile
The threading profile to use for this component. If this is not set a default will be provided by the server


poolingProfile

protected PoolingProfile poolingProfile
the pooling configuration used when initialising the component described by this descriptor.


queueProfile

protected QueueProfile queueProfile
The queuing profile for events received for this component


containerManaged

protected boolean containerManaged
Determines whether the component described by this descriptor is hosted in a container. if the value is false the component will not be pooled by Mule


initialisationCallbacks

protected java.util.List initialisationCallbacks
Constructor Detail

ImmutableMuleDescriptor

public ImmutableMuleDescriptor(ImmutableMuleDescriptor descriptor)
Default constructor. Initalises common properties for the MuleConfiguration object

See Also:
MuleConfiguration

ImmutableMuleDescriptor

protected ImmutableMuleDescriptor()
Default constructor used by mutable versions of this class to provide defaults for certain properties

Method Detail

getExceptionListener

public java.beans.ExceptionListener getExceptionListener()
Description copied from interface: UMOImmutableDescriptor
The exception strategy to use to handle exceptions in the Mule UMO.

Specified by:
getExceptionListener in interface UMOImmutableDescriptor
Returns:
the exception strategy to use. If none has been set a default will be used.

getInboundTransformer

public UMOTransformer getInboundTransformer()
Description copied from interface: UMOImmutableDescriptor
The transformer to use when receiving events or data.

Specified by:
getInboundTransformer in interface UMOImmutableDescriptor
Returns:
the Inbound transformer to use

getName

public java.lang.String getName()
Description copied from interface: UMOImmutableDescriptor
Gets the identifier for the Mule UMO created from the descriptor

Specified by:
getName in interface UMOImmutableDescriptor
Returns:
the identifier for the Mule UMO created from the descriptor

getOutboundTransformer

public UMOTransformer getOutboundTransformer()
Description copied from interface: UMOImmutableDescriptor
The transformer to use when sending events or data.

Specified by:
getOutboundTransformer in interface UMOImmutableDescriptor
Returns:
the Outbound transformer to use

getProperties

public java.util.HashMap getProperties()
Description copied from interface: UMOImmutableDescriptor
Returns any properties configured on this descriptor.

Specified by:
getProperties in interface UMOImmutableDescriptor
Returns:
properties defined for the descriptor.

getVersion

public java.lang.String getVersion()
Description copied from interface: UMOImmutableDescriptor
The version on the Mule UMO. This is currently not used by the mule run-time but may be used in future.

Specified by:
getVersion in interface UMOImmutableDescriptor
Returns:
the Descriptor Version

getInterceptors

public java.util.List getInterceptors()
Description copied from interface: UMOImmutableDescriptor
Retuens a list of interceptor objects that will be executed before/after the Mule UMO has executed

Specified by:
getInterceptors in interface UMOImmutableDescriptor
Returns:
a list of interceptor objects that will be executed before/after the Mule UMO has executed

toString

public java.lang.String toString()

getImplementation

public java.lang.Object getImplementation()
Description copied from interface: UMOImmutableDescriptor
String used to instansiate the object, this can be a class name or a reference to an object in a container

Specified by:
getImplementation in interface UMOImmutableDescriptor
Returns:
the Object's class r reference name or an instance of the object to use

getInboundRouter

public UMOInboundMessageRouter getInboundRouter()
Description copied from interface: UMOImmutableDescriptor
Inbound Routers control how events are received by a component. If no router is set. A default will be used that uses the inboundProvider set on his descriptor.

Specified by:
getInboundRouter in interface UMOImmutableDescriptor
Returns:
the inbound router for this component. This will always return a valid router.
See Also:
UMOInboundMessageRouter

getOutboundRouter

public UMOOutboundMessageRouter getOutboundRouter()
Description copied from interface: UMOImmutableDescriptor
Outbound Routers control how events are published by a component once. the event has been processed. If no router is set. A default will be used that uses the outboundProvider set on his descriptor to route the event.

Specified by:
getOutboundRouter in interface UMOImmutableDescriptor
Returns:
the outbound router for this component
See Also:
UMOOutboundMessageRouter

getThreadingProfile

public ThreadingProfile getThreadingProfile()
The threading profile used but the UMO when managing a component. can be used to allocate more or less resources to this particular umo component


getPoolingProfile

public PoolingProfile getPoolingProfile()

getQueueProfile

public QueueProfile getQueueProfile()

isContainerManaged

public boolean isContainerManaged()

getImplementationClass

public java.lang.Class getImplementationClass()
                                       throws UMOException
Description copied from interface: UMOImmutableDescriptor
Class used to instansiate the object, this can be a class name or a reference to an object in a container

Specified by:
getImplementationClass in interface UMOImmutableDescriptor
Returns:
the Object's class representation
Throws:
UMOException

getImplementationForReference

protected java.lang.Class getImplementationForReference(java.lang.String reference)
                                                 throws ObjectNotFoundException,
                                                        ContainerException
A helper method that will resolved a component for a given reference id. For example, for a component declared in a Spring Application context the id would be the bean id, in Pico the id would be a fully qualified class name.

Parameters:
reference - the reference to use when resolving the component
Returns:
the Implementation of the component
Throws:
ObjectNotFoundException
ContainerException

fireInitialisationCallbacks

public void fireInitialisationCallbacks(java.lang.Object component)
                                 throws InitialisationException
Throws:
InitialisationException

getInboundEndpoint

public UMOEndpoint getInboundEndpoint()
The inbound Provider to use when receiveing an event. This may get overidden by the configured behaviour of the inbound router on this component

Specified by:
getInboundEndpoint in interface UMOImmutableDescriptor
Returns:
the inbound endpoint or null if one is not set
See Also:
UMOEndpoint

getOutboundEndpoint

public UMOEndpoint getOutboundEndpoint()
The outbound Provider to use when sending an event. This may get overidden by the configured behaviour of the outbound router on this component

Specified by:
getOutboundEndpoint in interface UMOImmutableDescriptor
Returns:
the outbound endpoint or null if one is not set
See Also:
UMOEndpoint

getResponseRouter

public UMOResponseMessageRouter getResponseRouter()
Description copied from interface: UMOImmutableDescriptor
Response Routers control how events are returned in a request/response call. It cn be use to aggregate response events before returning, thus acting as a Join in a forked process. This can be used to make request/response calls a lot more efficient as independent tasks can be forked, execute concurrently and then join before the request completes

Specified by:
getResponseRouter in interface UMOImmutableDescriptor
Returns:
the response router for this component
See Also:
UMOResponseMessageRouter


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