You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@commons.apache.org by "Andreas Niedermeier (JIRA)" <ji...@apache.org> on 2011/02/04 10:42:27 UTC

[jira] Issue Comment Edited: (IO-218) Introduce new filter input stream with replacement facilities

    [ https://issues.apache.org/jira/browse/IO-218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12988661#comment-12988661 ] 

Andreas Niedermeier edited comment on IO-218 at 2/4/11 9:40 AM:
----------------------------------------------------------------

Thanks.
I've already tried these but ended up using this one here - I'm not sure why I didn't use Swizzle so I'll check that again.

edit:
Now I know why I didn't use it. Their {{ReplaceStringsInputStream}} only defines {{read()}} but not {{read(byte[])}} and {{read(byte[], int, int)}} so calls to the other methods won't replace the contents.
But the hint did help anyway because I simply subclassed it and overrode these methods. So that it's working now.

      was (Author: nian):
    Thanks.
I've already tried these but ended up using this one here - I'm not sure why I didn't use Swizzle so I'll check that again.
  
> Introduce new filter input stream with replacement facilities
> -------------------------------------------------------------
>
>                 Key: IO-218
>                 URL: https://issues.apache.org/jira/browse/IO-218
>             Project: Commons IO
>          Issue Type: Improvement
>          Components: Filters
>    Affects Versions: 1.4
>         Environment: all environments
>            Reporter: Denis Zhdanov
>         Attachments: ReplaceFilterInputStream.java, ReplaceFilterInputStreamTest.java
>
>   Original Estimate: 120h
>  Remaining Estimate: 120h
>
> It seems convenient to have a FilterInputStream that allows to apply predefined repalcement rules against the read data. 
> For example we may want to configure the following replacements:
> {noformat}
> {1, 2} -> {7, 8}
> {1} -> {9}
> {3, 2} -> {}
> {noformat}
> and apply them to the input like
> {noformat}
> {4, 3, 2, 1, 2, 1, 3}
> {noformat}
> in order to get a result like
> {noformat}
> {4, 7, 8, 9, 3}
> {noformat}
> I created the class that allows to do that and attached it to this ticket. Unit test class at junit4 format is attached as well.
> So, the task is to review the provided classes, consider if it's worth to add them to commons-io distribution and perform the inclusion in the case of possible result.

-- 
This message is automatically generated by JIRA.
-
For more information on JIRA, see: http://www.atlassian.com/software/jira