# This file allows modules and transports to make certain objects available by default in the Registry.  The most
# common use case is for a module or transport to load stateless transformers into the registry.
# For this file to be located it must be present in the modules META-INF directory under
# <code>META-INF/services/org/mule/config/</code>
#
# The format of this file is a simple key / value pair. i.e.
# <code>
# myobject=org.foo.MyObject
# </code>
#
# Will register an instance of MyObject with a key of 'myobject'. If you don't care about the object name and want to
# ensure that the ojbect gets a unique name you can use -
#
# <code>
# object.1=org.foo.MyObject
# object.2=org.bar.MyObject
# </code>
#
# or
#
# <code>
# myFoo=org.foo.MyObject
# myBar=org.bar.MyObject
# </code>
#
#
# Loading transformers has a slightly different notation since you can define the 'returnClass' and 'name'of
# the transformer as parameters i.e.
#
# <code>
# transformer.1=org.mule.transport.jms.transformers.JMSMessageToObject,returnClass=byte[]
# transformer.2=org.mule.transport.jms.transformers.JMSMessageToObject,returnClass=java.lang.String, name=JMSMessageToString
# transformer.3=org.mule.transport.jms.transformers.JMSMessageToObject,returnClass=java.util.Hashtable)
# </code>
#
# Note that the key used for transformers must be 'transformer.x' where 'x' is a sequential number.  The transformer name will be
# automatically generated as JMSMessageToXXX where XXX is the return class name i.e. JMSMessageToString unless a 'name'
# parameter is specified. If no 'returnClass' is specified the defualt in the transformer will be used.
#
# Note that all objects defined have to have a default constructor. They can implement injection interfaces such as
# {@link org.mule.MuleContextAware} and lifecylce interfaces such as {@link org.mule.api.lifecycle.Initialisable}.