You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@camel.apache.org by "Willem Jiang (JIRA)" <ji...@apache.org> on 2009/04/02 04:09:34 UTC

[jira] Assigned: (CAMEL-1509) DefaultCamelContext.isStarting returns incorrect status

     [ https://issues.apache.org/activemq/browse/CAMEL-1509?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Willem Jiang reassigned CAMEL-1509:
-----------------------------------

    Assignee: Willem Jiang

> DefaultCamelContext.isStarting returns incorrect status
> -------------------------------------------------------
>
>                 Key: CAMEL-1509
>                 URL: https://issues.apache.org/activemq/browse/CAMEL-1509
>             Project: Apache Camel
>          Issue Type: Bug
>          Components: camel-core
>    Affects Versions: 1.6.0, 2.0-M1
>            Reporter: Alexander Kleymenov
>            Assignee: Willem Jiang
>
> DefaultCamelContext.isStarting returns true while it actually not started.
> So the following groovy test case fails:
> {code:title=test.groovy}
> import org.apache.camel.impl.DefaultCamelContext;
> import org.apache.camel.language.groovy.GroovyRouteBuilder;
> class Foo {
>     def name
>     def data
>     void run(data) {
>         println "[${name}] got ${data}"
>         this.data = data
>     }
> }
> public class MyRoute extends GroovyRouteBuilder {
>     def bean = new Foo(name: "bean")
>     protected void configure() {
>         from("direct:start").bean(bean, "run")
>     }
> }
> camelCtx = new DefaultCamelContext()
> route = new MyRoute()
> camelCtx.addRoutes(route);
> Thread.start {
>     camelCtx.start();
> }
> while (camelCtx.isStarting()) {
>     Thread.sleep(1000)
> }
> camelCtx.createProducerTemplate().sendBody("direct:start", "data")
> if (!route.bean.data) {
>     println "FAILED: no data has been received!"
> } else {
>     println "PASSED"
> }
> camelCtx.stop();
> {code}
> Note, after moving of  
> {code}
> camelCtx.addRoutes(route)
> {code}
>  after
> {code}
> Thread.start {
>     camelCtx.start();
> }
> {code}
> the test passes.
> Also the program does not finish after camelCtx.stop();

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.