刷新阿帕奇骆驼路线

时间:2015-07-08 12:36:02

标签: java spring apache-camel

我使用spring camel作为独立应用程序,根据routes返回的内容构建了许多psql database

private void addEndpoint(String urlName, String type, String host, String port, String username, String password) {


        String endpointUrl = String.format("https://%s:%s?username=%s&password=%s", host, port, username, password);

        from("direct:endpoint_" + urlName)
            .throttle(1).timePeriodMillis(60000)
            .to(endpointUrl);

    }

route是在循环中创建的,这取决于从数据库返回的内容,如下所示:

@Override
    public void configure() throws Exception {

        final List<Url> url= dbUrlDAO.getUrl();

        for (Url urlInfo : urls) {


            addEndpoint(urlInfo.getName(), urlInfo.getType(), urlInfo.getIp(), urlInfo.getPort(),urlInfo.getUsername(), urlInfo.getPassword());

        }

我想要实现的是能够在不重启应用程序的情况下添加route(路由构建器正在由camel-context.xml初始化)。

无论如何强制运行应用程序来刷新camel context

1 个答案:

答案 0 :(得分:1)

是的,您可以在运行时添加/删除路由。 CamelContest上有API可以做到这一点,以及你可以google查找/阅读书籍等的例子。