apache-camel file2 antIninclude 忽略大小写

发布于 2024-12-29 03:47:41 字数 720 浏览 1 评论 0 原文

我需要轮询目录并使用不区分大小写的表达式缩小文件范围。

在 2.10 版本中,camel 添加了对 antInclude 的支持,这正是我所研究的,不幸的是 antIninclude 区分大小写,其他过滤表达式也是如此。实现 GenericFileFilter 不是一个选项,因为过滤模式在编译时是未知的,因为我在运行时从数据库读取它们,并且我有多个文件规则,每个规则都有不同的模式。

我以编程方式在循环中创建多个路由,其中​​每个文件路由都有不同的不区分大小写的过滤模式。如果camel文件组件支持不区分大小写的表达式,我将不胜感激,或者是否有其他方法无需在camel中创建自己的新文件组件?

public class MyRouter extends RouteBuilder {

@Override
public void configure() throws Exception {
    Vector<FileTransferEntity> list = TransferDAO.getTransferList();
    for(FileTransferEntity t : list) {
        fromF("ftp://ftpuser@ftpserver/some-directory?antInclude=%s", t.getFileMask()).
        toF("mock:result");//depending on t, action will change.
    }
}

I need to poll a directory and narrow the files with a case insentive expression.

With version 2.10 camel adds support for antInclude which is what I look into, unfortunately antInclude is case sensitive, so are other filtering expressions. Implementing GenericFileFilter is not an option, since the filtering patterns are not known at compile time as I read them from database at runtime and I have multiple file rules each with a different pattern.

I programmatically create several routes in a loop, where each file route has a different case insensitive filtering pattern. I would appreciate if camel file component supports case insensitive expressions, or is there any other way without creating myself a new file component in camel?

public class MyRouter extends RouteBuilder {

@Override
public void configure() throws Exception {
    Vector<FileTransferEntity> list = TransferDAO.getTransferList();
    for(FileTransferEntity t : list) {
        fromF("ftp://ftpuser@ftpserver/some-directory?antInclude=%s", t.getFileMask()).
        toF("mock:result");//depending on t, action will change.
    }
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文