Bug 41125

Summary: FilterReader classes should offer classpath, classpathref and loaderref
Product: Ant Reporter: Henning Schmiedehausen <hps>
Component: CoreAssignee: Ant Notifications List <notifications>
Status: NEW ---    
Severity: enhancement    
Priority: P2    
Version: 1.7.0   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Henning Schmiedehausen 2006-12-07 07:44:17 UTC
FilterReader is another extension point of ant like the <typedef> and <taskdef>
tasks. So it would be good if a <filterreader> element could also loaded from a
specific classpath using a specific loader. 

e.g. the serialver.sf.net project offers a serialversion tool that also contains
a FilterReader. However, it is not possible to load the FilterReader from a
specified load path (like the task). 

It would be good to have this in 1.7.0 (IMHO).
Comment 1 Peter Reilly 2006-12-07 08:16:03 UTC
Note that one can provide filtering
capability using the typedef task.
From the ant manual:
"""
package my.customant;
import org.apache.tools.ant.filters.TokenFilter;

public class Capitalize
    implements TokenFilter.Filter
{
    public String filter(String token) {
        if (token.length() == 0)
            return token;
        return token.substring(0, 1).toUpperCase() +
                token.substring(1);
   }
}
"""

"""
  <typedef type="capitalize" classname="my.customant.Capitalize"
           classpath="my.customant.path"/>
  <copy file="input" tofile="output">
    <filterchain>
      <tokenfilter>
        <stringtokenizer/>
        <capitalize/>
      </tokenfilter>
    </filterchain>
  </copy>
"""