【发布时间】:2012-01-26 13:35:55
【问题描述】:
我需要轮询目录并使用不区分大小写的表达式缩小文件范围。
在 2.10 版中,camel 添加了对 antInclude 的支持,这是我所研究的,不幸的是,antInclude 区分大小写,其他过滤表达式也是如此。实现 GenericFileFilter 不是一个选项,因为过滤模式在编译时是未知的,因为我在运行时从数据库中读取它们,并且我有多个文件规则,每个规则都有不同的模式。
我以编程方式在循环中创建多个路由,其中每个文件路由具有不同的不区分大小写的过滤模式。如果骆驼文件组件支持不区分大小写的表达式,我将不胜感激,或者是否有任何其他方式无需在骆驼中创建自己的新文件组件?
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.
}
}
【问题讨论】:
-
为什么不将此报告为对 Camel @user 邮件列表的改进,或者作为 Camel JIRA 跟踪器中的 JIRA 票证。我确信 antInclude 可以不区分大小写。
标签: file include apache-camel ignore-case