Hi

If you need to create the RecipientListProcessor then you dont
necessary have to use reifier to do it.

We have a few EIPs that are created via annotations
https://github.com/apache/camel/blob/5235319d94fbb82f479ca3085b0780c0f144111b/core/camel-api/src/main/java/org/apache/camel/spi/AnnotationBasedProcessorFactory.java#L44

You can just create the processor yourself and configure it accordingly.




On Tue, Nov 28, 2023 at 12:51 AM Steve973 <steve...@gmail.com> wrote:

> Hello.  I am attempting to simplify my Dynamic Router EIP component by
> using the existing RecipientList implementation from camel-core.
>
> I was looking at the RecipientListReifier, even though I will not be adding
> anything to the Camel DSL.  It looks like it would be perfect for setting
> up the RecipientList instance.  I can take my configuration class, and
> adapt it to a RecipientListDefinition instance.  The problem that I am
> encountering is that the RecipientListReifier constructor wants a Route
> instance.  When routing recipients send their subscription information to
> the dynamic router component through its control channel, this is not the
> route that the actual routing will occur on.  So I have no idea what Route
> instance I can provide to the Reifier constructor.  Furthermore, when the
> dynamic router receives a message, the producer simply calls the processor,
> so there is no real route to speak of, even during runtime dynamic routing.
>
> My questions are:
>
> 1. Is this a decent approach?  After a recent code review, it occurred to
> me that I needed to simplify everything, and this would do that.  The
> component would only need to manage subscriptions, and evaluate exchanges
> for recipients.
>
> 2. What should I use as the Route instance for the Reifier constructor?
> Would it be a good idea to create a RouteBuilder for each dynamic routing
> channel that subscribers are using?  It would go from "direct:channelName"
> and then to the processor.  That still leaves me confused about how to
> use my component/endpoint configuration to set the options on the
> RecipientList through the Reifier.  It's a chicken/egg scenario:  the
> RecipientListReifier needs the Route, and the Route needs the processor.
>
> 3. What other approach am I missing that might be better than this?
>
> Thanks,
> Steve
>


-- 
Claus Ibsen
-----------------
@davsclaus
Camel in Action 2: https://www.manning.com/ibsen2

Reply via email to