Hi, On 01/08/2011 10:59 AM, Dan Checkoway wrote: > I'm generally a huge fan of annotation-driven stuff. Here's one example > where my hands are tied, and I can't use annotations to do what I want to > do. Let's say I have this: > > @Consume(uri="activmeq:queue:whatever?concurrentConsumers=10") > public void onWhatever(String whatever) { > ... > } > > Now let's say I want the queue name ("stuff") and the # of > concurrentConsumers to be configurable via a properties file. Up until now, > I've resorted to setting up the route manually with stuff like: > > public class MyRouteBuilder extends RouteBuilder { > @Value("${queueName}") > String queueName; > @Value("${concurrentConsumers}") > int concurrentConsumers; > > public void configure() { > from("activemq:queue:" + queueName + "?concurrentConsumers=" + > concurrentConsumers) > .to(myWhateverBean, "onWhatever"); > } > } > > Can anybody suggest an alternative way of using "dynamic" URIs with > annotation-based POJOs? I would love, for example, to be able to do > something like this: > > @Consume(uri="activmeq:queue:${queueName}?concurrentConsumers=${concurrentConsumers}") > public void onWhatever(String whatever) { > ... > } Have you looked at the new property placeholder stuff in 2.3? http://davsclaus.blogspot.com/2010/02/property-placeholder-galore-in-apache.html
I'm not sure if it works with annotations, but I've used it in a lot of other places. T > Is this possible already and I just managed to miss it? :-) If not, is > something like that in the works? > > Thanks, > Dan > -- Regards / Med vennlig hilsen Tarjei Huse Mobil: 920 63 413