Apache骆驼获得交换路径

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Apache骆驼获得交换路径相关的知识,希望对你有一定的参考价值。

我使用apache camel监视我的文件系统我使用以下路由:

public class FsRouteBuilder extends RouteBuilder {

        @Override
        public void configure() throws Exception {
            while(true){
            FsProcessor processor = new FsProcessor();
            from("file:C:\Users\My_User_Name\Documents\TRAX_PAYMENTS\KBC?noop=true&idempotent=false").process(processor);
        }
        }
    }

此路由调用以下处理器

public class FsProcessor implements Processor {
 public void process(Exchange exchange) throws Exception {}
}

现在我想做的是获得交换的路径。这是因为我想要监控它,路径是一个唯一的密钥。是否有财产或方式来获得交换的路径?

答案

您可以从处理器获取文件路径,如图所示

public class FsProcessor implements Processor {
 public void process(Exchange exchange) throws Exception {
    File file = exchange.getIn().getBody(File.class);
    String path = file.getPath();
  }
}

它使用Camel的类型转换器,

因此,如果您希望文件的内容为byte []或String,则可以这样做

String data = exchange.getIn().getBody(String.class);

以上是关于Apache骆驼获得交换路径的主要内容,如果未能解决你的问题,请参考以下文章

Apache骆驼优雅的路由关闭

Apache骆驼休息服务

apache骆驼轮询休息端点

apache骆驼路由队列问题

.net 中的 Apache 骆驼替代品?

嗨,我正在尝试学习 Apache 骆驼框架。我不知道我在这里做错了啥