[
https://issues.apache.org/jira/browse/CAMEL-4779?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13174146#comment-13174146
]
Claus Ibsen commented on CAMEL-4779:
------------------------------------
Yeah I guess people may want to do ant style include/excludes. However the file
component have a lot of options already, so we should be a bit careful adding
new stuff.
The ANT filter itself supports multiple includes/excludes, for more complex
scenarios. So people can fallback and do as today for those situations.
But I agree it would be nice to do ANT includes in the uri directly.
{code}
antInclude=**/*.txt&antExclude=**/backup-*
{code}
And then we do not need the type converter, which was sort of a "smart hack".
Maybe give it a go and try with the antInclude and antExclude options.
And possible add a validation check that if you use antInclude/antExclude then
the regular filter option is not supported.
> Make Ant path matching in file / FTP component easier to use
> ------------------------------------------------------------
>
> Key: CAMEL-4779
> URL: https://issues.apache.org/jira/browse/CAMEL-4779
> 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:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira