On 07/04/2008, Claus Ibsen <[EMAIL PROTECTED]> wrote:
> Hi
>
>  I am working on CAMEL-447 to update our component so its up-to-date and that 
> we have all the URI protocol prefixes (tcp, mina, seda, direct etc.) that 
> does all the magic discovey of the component to use.
>
>  There are some gaps on the list as I wanted to
>
>  -        add what artifcat or whatever camel-xxx.jar you need to use this 
> component, so I added a column for this

I wonder if it'd make sense to write a little maven plugin which
searches all camel jars on the classpath (so we could run it in the
assembly module - the camel/apache-camel/pom.xml) - which looked for
all the component files in the
META-INF/services/org/apache/camel/component/* directory, then output
a list of the component schemes and the jars which they depend on?


>  -        add missing components or protocol prefixes that are missing for 
> the existing components.
>
>  Since I could not find a suited component for esper and fix etc. (TODO on 
> the list) I was quickly trying to find out how Camel does the trick to know 
> what to do.

The esper page should describe that this component is provided by the
separate Camel Extra project...
http://activemq.apache.org/camel/esper.html

which is a separate project due to product licensing (being *GPL based).



>  Anyone with the knowledge care to elaborate how its done?
>
>  I know about the special marker files in the META-INF/services/.../component 
> folder.
>
>  But since there is no esper, fix etc. file I was wondering how this works.

Its not that well documented but this page might help...
http://activemq.apache.org/camel/writing-components.html

But yes you found it. Camel also looks first in the Registry
http://activemq.apache.org/camel/registry.html

so you could wire the component in via Spring for example.


>  Also how does it works for some of the camel-jms stuff so it knows that 
> activemq is jms etc?
>

Inside activemq-core.jar there's an activemq META-INF/services file
which creates an ActiveMQComponent which extends the JmsComponent

>  The component list with the new columns is here:
>
>  http://cwiki.apache.org/confluence/display/CAMEL/Component+List

Great stuff! :)
-- 
James
-------
http://macstrac.blogspot.com/

Open Source Integration
http://open.iona.com

Reply via email to