如何找到路由的所有端点(Apache Camel,Java)

西特尼科夫·阿尔乔姆

我在 Camel 上下文中有几条路线和许多端点。因此需要获取由一个路由创建的所有端点:

    CamelContext context = new DefaultCamelContext();
    RouteBuilder route1 = new RouteBuilder() {
        public void configure() {
            from("file:data/inbox?noop=true")
                    .routeId("myRoute1")
                    .enrich("http://website.com/file.txt")
                    .to("file:data/outbox")
                    .to("mock:someway");
        }
    };

    RouteBuilder route2 = new RouteBuilder() {
        public void configure() {
            from("file:data/outbox?noop=true")
                    .routeId("myRoute2")
                    .to("mock:myMom");
        }
    };

    context.addRoutes(route1);
    context.addRoutes(route2);

    context.start();

    // TODO 

    context.stop();

在停止之前,我需要获取由 myRoute1 创建的所有端点???例如:

1.file://data/outbox 2.mock://someway 3. http://website.com/file.txt 4.file://data/inbox?noop=true

我只能得到骆驼上下文的所有端点:context.getEndpoints()

NOD的手

您可以尝试以下操作:

  1. 为您的路线提供一个 routeId 以便以后能够识别它。
  2. 从 CamelContext 的 Route 中获取 RouteDefinition 并过滤 ToDefinition 对象的输出列表。

     List<ProcessorDefinition> outputProcessorDefs = exchange.getContext().getRouteDefinition("[routeId]").getOutputs();
     // Iterate and get all ProcessorDefinition objects which inherit from the ToDefinition
    

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Apache Camel mockEndpoints()模拟所有端点,而不是仅建议路由中的端点

没有“ to”端点的Apache Camel路由

Apache Camel - 使用 Java 构建端点

Java和Apache-Camel:从直接端点到文件端点

Apache Camel Java 8 支持

如何使用Spring Boot Java Config编写自定义Apache Camel组件/端点

Apache Camel:具有不同端点的InOut

如何在带有 Java DSL 的路由中使用 apache Camel 在 try catch 块中使用选择

使用带有Java路由的camel jaxb时出错

如何使用Apache Camel路由从文件中获取JSON对象并将其映射到Java类?

如何运行包含 Camel K 的 Apache Camel 集成:XML 文件和 .java 文件

Apache Camel / Java DSL / 如何添加處理器列表?

如何定义到InfluxDB的Apache Camel路由

Apache Camel-在路由到ActiveMQ期间,除String以外的所有标头均丢失

Apache Camel使用石英调度程序调度ftp端点时抛出java.lang.NullPointerException

如何使用Java DSL在Apache Camel中调用带有参数的方法

如何使用camel-swagger-java和camel-servlet构建war文件

如何配置Apache Camel Quartz端点以使用JDBCJobStore

Java Apache Camel - 创建一个 CamelContext 对象

Apache Camel:从Spring DSL迁移到Java DSL

Apache Camel JSON编组到POJO Java Bean

在 Wildfly Swarm 上使用 Java DSL 设置 Apache Camel Rest 路由

在Spring Boot中具有DSL的Apache Camel Rest端点将/ camel添加到路径

带有选择功能的Camel Java DSL路由仅针对最后一种情况进行

Apache Camel-路由交易

Apache Camel 超时同步路由

没有连接缓存的Apache Camel HTTP路由

Apache Camel Route 找不到端点

如何在Apache Camel> = 3中配置路由跟踪?