繁体   English   中英

刷新apache骆驼路线

[英]refresh apache camel routes

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

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吗?

是的,您可以在运行时添加/删除路由。 CamelContest上有API可以做到这一点,并且您可以在Google上查找/阅读示例的示例等。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM