[
https://issues.apache.org/jira/browse/IO-119?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12567451#action_12567451
]
Jukka Zitting commented on IO-119:
----------------------------------
Yes, FileFilterUtils covers the Factory pattern, but it doesn't really reduce
the required typing (or more importantly for those with a modern IDE, the
amount of characters on a line). For example, the only benefit of
{{FileFilterUtils.suffixFileFilter(".java")}} (or {{suffixFileFilter(".java")}}
with static imports) over {{new SuffixFileFilter(".java")}} is one less import
statement.
What's your use case for adding the Builder class? Do you just want to reduce
the amount of typing when creating complex filters, or are your incrementally
building filters based on user input or some parsed filter description?
> Convenience "Builder" for creating complex FileFilter conditions
> ----------------------------------------------------------------
>
> Key: IO-119
> URL: https://issues.apache.org/jira/browse/IO-119
> Project: Commons IO
> Issue Type: Improvement
> Components: Filters
> Affects Versions: 1.3.1
> Reporter: Niall Pemberton
> Assignee: Niall Pemberton
> Priority: Minor
> Fix For: 2.x
>
> Attachments: FileFilterBuilder.java, FileFilterBuilderTestCase.java
>
>
> I'd like to add a new convenience "builder" class (FileFilterBuilder) to make
> it easier to create complex FileFilter using Commons IO's IOFileFilter
> implementations.
> Heres an example of how it can be used to create a IOFileFilter for the
> following conditions:
> - Either, directories which are not hidden and not named ".svn"
> - or, files which have a suffix of ".java"
> IOFileFilter filter = FileFilterBuilder.orBuilder()
> .and().isDirectory().isHidden(false).not().name(".svn").end()
> .and().isFile().suffix(".java").end()
> .getFileFilter();
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.