camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Claus Ibsen (Commented) (JIRA)" <>
Subject [jira] [Commented] (CAMEL-4779) Make Ant path matching in file / FTP component easier to use
Date Sat, 17 Dec 2011 10:18:30 GMT


Claus Ibsen commented on CAMEL-4779:

Can you redo a patch where you attach the moved/renamed files as plain .java files.
A patch file with file moves sucks to apply.

> Make Ant path matching in file / FTP component easier to use
> ------------------------------------------------------------
>                 Key: CAMEL-4779
>                 URL:
>             Project: Camel
>          Issue Type: Improvement
>          Components: camel-core, camel-spring
>    Affects Versions: 2.8.3
>            Reporter: Daniel Gredler
>            Priority: Minor
>             Fix For: 2.9.1
>         Attachments: ant-path-filter.patch
> The existing codebase has an implicit optional dependency from camel-core to camel-spring;
camel-core contains the class AntPathMatcherGenericFileFilter, which internally uses camel-spring's
SpringAntPathMatcherFileFilter class via runtime classpath checks and reflection. The reason
that SpringAntPathMatcherFileFilter is in camel-spring is that it uses Spring's AntPathMatcher
class internally. Interestingly, there is already an AntPathMatcher class with an API very
similar to Spring's class in the camel-core-xml module.
> This patch moves camel-core-xml's AntPathMatcher into camel-core, removes the classpath
and reflection magic in camel-core's AntPathMatcherGenericFileFilter class, and adds a new
class to camel-core named GenericFileFilterConverter, which automagically converts strings
to ant path file filters. The patch also adds some unit tests.
> The end result is that Camel users can now use ant path matching with the file and FTP
components without having to add a dependency on camel-spring, and Camel users can specify
the ant path expression to use directly in the component querystring, rather than having to
go through the work of registering an additional file filter instance in the registry (although
this is only true when the user only needs to specify a single include path, which is a very
common use case). For example:
> from("file://target/blah?recursive=true&filter=**/*.txt")
>   .to(...);
> Instead of:
> from("file://target/blah?recursive=true&filter=#myTxtFilter")
>   .to(...);

This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:!default.jspa
For more information on JIRA, see:


View raw message