Maybe we can add option in camel-quartz to let it fire the trigger when
the route is started.
Willem
Stephen Gargan wrote:
Christopher,
Claus has got you covered ;) There is an EventNotification mechanism
that you can use. Add the following to your routes configure
public class InvokedOnStartupRoute extends RouteBuilder {
@Override
public void configure() throws Exception {
final CamelContext context = getContext();
context.getManagementStrategy().setEventNotifier(new EventNotifier() {
public void notify(EventObject event) throws Exception {
if(event instanceof CamelContextStartedEvent)
{
ProducerTemplate template = context.createProducerTemplate();
template.sendBody("direct:invokedOnStartup", "Started");
}
}
public boolean isEnabled(EventObject event) {
return true;
}
});
from("direct:invokedOnStartup").to("mock:invokedOnStartup");
}
}
It might be nice also if there were a method in the LifecycleStrategy
interface, onInitializationComplete or the like, that fit a similar
purpose. I'll let Claus comment on that.
rgds,
ste
On Mon, Dec 28, 2009 at 6:06 PM, huntc <hu...@mac.com> wrote:
Hi Stephen,
Thanks for your response.
I do understand the use of the direct component, but thanks for the
explanation any how.
I guess using the Spring Events mechanism will get me there, but it'd be
nice to codify the solution in a way that remains agnostic of being invoked
from Spring.
I'm thinking that it'd be useful to raise a JIRA so that RouteBuilder gets
the opportunity of kicking things off once the context is ready. What'd
think?
BTW: I do not have a Main class as I'm using org.apache.camel.spring.Main.
Kind regards,
Christopher
--
View this message in context:
http://old.nabble.com/Startup-invocation-of-a-route-tp26949232p26950280.html
Sent from the Camel - Users mailing list archive at Nabble.com.