20.27. 使用 ANT 路径匹配程序进行过滤
ANT 路径匹配程序基于 AntPathMatcher。
文件路径与以下规则匹配:
-
?
匹配一个字符 -
*
匹配零或更多字符 -
**
匹配路径中的零个或多个目录
antInclude
和 antExclude
选项可让您轻松指定 ANT 样式 include/exclude,而无需定义过滤器。如需更多信息,请参阅上面的 URI 选项。
以下示例演示了如何使用它:
20.27.1. 使用 Comparator 排序
Camel 支持可插拔排序策略。此策略将在 Java 中的 java.util.Comparator
中使用构建。然后,您可以使用这样的比较程序配置端点,并在处理前对文件进行 Camel 排序。
在示例中,我们构建了自己的按文件名排序的比较器:
然后,我们可以使用排序器选项配置我们的路由以引用在 spring XML 文件中定义的排序器(我的
原理):
<!-- define our sorter as a plain spring bean --> <bean id="mySorter" class="com.mycompany.MyFileSorter"/> <route> <from uri="file://inbox?sorter=#mySorter"/> <to uri="bean:processInbox"/> </route>
注意
URI 选项可以使用 # 语法
在上述 Spring DSL 路由中引用 Bean,它可以通过将 id 前缀为 # 来指代 Registry 中的 Bean。因此,编写 sorter=#mySorter
将指示 Camel 在 Registry 中查找 ID 为 mySorter
。