Browse Source

Started to clean up filtersets by removing unused methods, inlining them and general removal of cruft

git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@270715 13f79535-47bb-0310-9956-ffa450edef68
master
Peter Donald 23 years ago
parent
commit
e4118d939d
2 changed files with 102 additions and 254 deletions
  1. +51
    -127
      proposal/myrmidon/src/main/org/apache/tools/ant/types/FilterSet.java
  2. +51
    -127
      proposal/myrmidon/src/todo/org/apache/tools/ant/types/FilterSet.java

+ 51
- 127
proposal/myrmidon/src/main/org/apache/tools/ant/types/FilterSet.java View File

@@ -29,71 +29,21 @@ public class FilterSet
extends ProjectComponent extends ProjectComponent
implements Cloneable implements Cloneable
{ {

/** /**
* The default token start string * The default token start string
*/ */
public final static String DEFAULT_TOKEN_START = "@";
private final static String DEFAULT_TOKEN_START = "@";


/** /**
* The default token end string * The default token end string
*/ */
public final static String DEFAULT_TOKEN_END = "@";

private String m_startOfToken = DEFAULT_TOKEN_START;
private String m_endOfToken = DEFAULT_TOKEN_END;
private final static String DEFAULT_TOKEN_END = "@";


/** /**
* List of ordered filters and filter files. * List of ordered filters and filter files.
*/ */
private ArrayList m_filters = new ArrayList(); private ArrayList m_filters = new ArrayList();


public FilterSet()
{
}

/**
* Create a Filterset from another filterset
*
* @param filterset the filterset upon which this filterset will be based.
*/
protected FilterSet( FilterSet filterset )
throws TaskException
{
super();
m_filters = (ArrayList)filterset.getFilters().clone();
}

/**
* The string used to id the beginning of a token.
*
* @param startOfToken The new Begintoken value
*/
public void setBeginToken( String startOfToken )
throws TaskException
{
if( startOfToken == null || "".equals( startOfToken ) )
{
throw new TaskException( "beginToken must not be empty" );
}
m_startOfToken = startOfToken;
}

/**
* The string used to id the end of a token.
*
* @param endOfToken The new Endtoken value
*/
public void setEndToken( String endOfToken )
throws TaskException
{
if( endOfToken == null || "".equals( endOfToken ) )
{
throw new TaskException( "endToken must not be empty" );
}
m_endOfToken = endOfToken;
}

/** /**
* set the file containing the filters for this filterset. * set the file containing the filters for this filterset.
* *
@@ -107,16 +57,6 @@ public class FilterSet
readFiltersFromFile( filtersFile ); readFiltersFromFile( filtersFile );
} }


public String getBeginToken()
{
return m_startOfToken;
}

public String getEndToken()
{
return m_endOfToken;
}

/** /**
* Gets the filter hash of the FilterSet. * Gets the filter hash of the FilterSet.
* *
@@ -125,11 +65,12 @@ public class FilterSet
public Hashtable getFilterHash() public Hashtable getFilterHash()
throws TaskException throws TaskException
{ {
int filterSize = getFilters().size();
Hashtable filterHash = new Hashtable( filterSize );
for( Iterator e = getFilters().iterator(); e.hasNext(); )
final int filterSize = m_filters.size();
final Hashtable filterHash = new Hashtable( filterSize );
final Iterator e = m_filters.iterator();
while( e.hasNext() )
{ {
Filter filter = (Filter)e.next();
final Filter filter = (Filter)e.next();
filterHash.put( filter.getToken(), filter.getValue() ); filterHash.put( filter.getToken(), filter.getValue() );
} }
return filterHash; return filterHash;
@@ -151,7 +92,7 @@ public class FilterSet
* @param token The token for the new filter. * @param token The token for the new filter.
* @param value The value for the new filter. * @param value The value for the new filter.
*/ */
public void addFilter( String token, String value )
public void addFilter( final String token, final String value )
{ {
m_filters.add( new Filter( token, value ) ); m_filters.add( new Filter( token, value ) );
} }
@@ -161,9 +102,10 @@ public class FilterSet
* *
* @param filterSet the filterset to be added to this filterset * @param filterSet the filterset to be added to this filterset
*/ */
public void addFilterSet( FilterSet filterSet )
public void addFilterSet( final FilterSet filterSet )
{ {
for( Iterator e = filterSet.getFilters().iterator(); e.hasNext(); )
final Iterator e = filterSet.m_filters.iterator();
while( e.hasNext() )
{ {
m_filters.add( (Filter)e.next() ); m_filters.add( (Filter)e.next() );
} }
@@ -187,7 +129,7 @@ public class FilterSet
public boolean hasFilters() public boolean hasFilters()
throws TaskException throws TaskException
{ {
return getFilters().size() > 0;
return m_filters.size() > 0;
} }


/** /**
@@ -211,7 +153,7 @@ public class FilterSet
props.load( in ); props.load( in );


Enumeration enum = props.propertyNames(); Enumeration enum = props.propertyNames();
ArrayList filters = getFilters();
ArrayList filters = m_filters;
while( enum.hasMoreElements() ) while( enum.hasMoreElements() )
{ {
String strPropName = (String)enum.nextElement(); String strPropName = (String)enum.nextElement();
@@ -250,66 +192,56 @@ public class FilterSet
* @param line The line to process the tokens in. * @param line The line to process the tokens in.
* @return The string with the tokens replaced. * @return The string with the tokens replaced.
*/ */
public String replaceTokens( String line )
public String replaceTokens( final String line )
throws TaskException throws TaskException
{ {
String beginToken = getBeginToken();
String endToken = getEndToken();
int index = line.indexOf( beginToken );
int index = line.indexOf( DEFAULT_TOKEN_START );
if( -1 == index )
{
return line;
}


if( index > -1 )
Hashtable tokens = getFilterHash();
try
{ {
Hashtable tokens = getFilterHash();
try
{
StringBuffer b = new StringBuffer();
int i = 0;
String token = null;
String value = null;
StringBuffer b = new StringBuffer();
int i = 0;
String token = null;
String value = null;


do
do
{
int endIndex = line.indexOf( DEFAULT_TOKEN_END, index + DEFAULT_TOKEN_START.length() + 1 );
if( endIndex == -1 )
{ {
int endIndex = line.indexOf( endToken, index + beginToken.length() + 1 );
if( endIndex == -1 )
{
break;
}
token = line.substring( index + beginToken.length(), endIndex );
b.append( line.substring( i, index ) );
if( tokens.containsKey( token ) )
{
value = (String)tokens.get( token );
getLogger().debug( "Replacing: " + beginToken + token + endToken + " -> " + value );
b.append( value );
i = index + beginToken.length() + token.length() + endToken.length();
}
else
{
// just append beginToken and search further
b.append( beginToken );
i = index + beginToken.length();
}
} while( ( index = line.indexOf( beginToken, i ) ) > -1 );
break;
}
token = line.substring( index + DEFAULT_TOKEN_START.length(), endIndex );
b.append( line.substring( i, index ) );
if( tokens.containsKey( token ) )
{
value = (String)tokens.get( token );
getLogger().debug( "Replacing: " + DEFAULT_TOKEN_START + token + DEFAULT_TOKEN_END + " -> " + value );
b.append( value );
i = index + DEFAULT_TOKEN_START.length() + token.length() + DEFAULT_TOKEN_END.length();
}
else
{
// just append beginToken and search further
b.append( DEFAULT_TOKEN_START );
i = index + DEFAULT_TOKEN_START.length();
}
} while( ( index = line.indexOf( DEFAULT_TOKEN_START, i ) ) > -1 );


b.append( line.substring( i ) );
return b.toString();
}
catch( StringIndexOutOfBoundsException e )
{
return line;
}
b.append( line.substring( i ) );
return b.toString();
} }
else
catch( StringIndexOutOfBoundsException e )
{ {
return line; return line;
} }
} }


protected ArrayList getFilters()
{
return m_filters;
}

/** /**
* The filtersfile nested element. * The filtersfile nested element.
* *
@@ -318,25 +250,17 @@ public class FilterSet
*/ */
public class FiltersFile public class FiltersFile
{ {
/**
* Constructor for the Filter object
*/
public FiltersFile()
{
}

/** /**
* Sets the file from which filters will be read. * Sets the file from which filters will be read.
* *
* @param file the file from which filters will be read. * @param file the file from which filters will be read.
*/ */
public void setFile( File file )
public void setFile( final File file )
throws TaskException throws TaskException
{ {
readFiltersFromFile( file ); readFiltersFromFile( file );
} }
} }

} }





+ 51
- 127
proposal/myrmidon/src/todo/org/apache/tools/ant/types/FilterSet.java View File

@@ -29,71 +29,21 @@ public class FilterSet
extends ProjectComponent extends ProjectComponent
implements Cloneable implements Cloneable
{ {

/** /**
* The default token start string * The default token start string
*/ */
public final static String DEFAULT_TOKEN_START = "@";
private final static String DEFAULT_TOKEN_START = "@";


/** /**
* The default token end string * The default token end string
*/ */
public final static String DEFAULT_TOKEN_END = "@";

private String m_startOfToken = DEFAULT_TOKEN_START;
private String m_endOfToken = DEFAULT_TOKEN_END;
private final static String DEFAULT_TOKEN_END = "@";


/** /**
* List of ordered filters and filter files. * List of ordered filters and filter files.
*/ */
private ArrayList m_filters = new ArrayList(); private ArrayList m_filters = new ArrayList();


public FilterSet()
{
}

/**
* Create a Filterset from another filterset
*
* @param filterset the filterset upon which this filterset will be based.
*/
protected FilterSet( FilterSet filterset )
throws TaskException
{
super();
m_filters = (ArrayList)filterset.getFilters().clone();
}

/**
* The string used to id the beginning of a token.
*
* @param startOfToken The new Begintoken value
*/
public void setBeginToken( String startOfToken )
throws TaskException
{
if( startOfToken == null || "".equals( startOfToken ) )
{
throw new TaskException( "beginToken must not be empty" );
}
m_startOfToken = startOfToken;
}

/**
* The string used to id the end of a token.
*
* @param endOfToken The new Endtoken value
*/
public void setEndToken( String endOfToken )
throws TaskException
{
if( endOfToken == null || "".equals( endOfToken ) )
{
throw new TaskException( "endToken must not be empty" );
}
m_endOfToken = endOfToken;
}

/** /**
* set the file containing the filters for this filterset. * set the file containing the filters for this filterset.
* *
@@ -107,16 +57,6 @@ public class FilterSet
readFiltersFromFile( filtersFile ); readFiltersFromFile( filtersFile );
} }


public String getBeginToken()
{
return m_startOfToken;
}

public String getEndToken()
{
return m_endOfToken;
}

/** /**
* Gets the filter hash of the FilterSet. * Gets the filter hash of the FilterSet.
* *
@@ -125,11 +65,12 @@ public class FilterSet
public Hashtable getFilterHash() public Hashtable getFilterHash()
throws TaskException throws TaskException
{ {
int filterSize = getFilters().size();
Hashtable filterHash = new Hashtable( filterSize );
for( Iterator e = getFilters().iterator(); e.hasNext(); )
final int filterSize = m_filters.size();
final Hashtable filterHash = new Hashtable( filterSize );
final Iterator e = m_filters.iterator();
while( e.hasNext() )
{ {
Filter filter = (Filter)e.next();
final Filter filter = (Filter)e.next();
filterHash.put( filter.getToken(), filter.getValue() ); filterHash.put( filter.getToken(), filter.getValue() );
} }
return filterHash; return filterHash;
@@ -151,7 +92,7 @@ public class FilterSet
* @param token The token for the new filter. * @param token The token for the new filter.
* @param value The value for the new filter. * @param value The value for the new filter.
*/ */
public void addFilter( String token, String value )
public void addFilter( final String token, final String value )
{ {
m_filters.add( new Filter( token, value ) ); m_filters.add( new Filter( token, value ) );
} }
@@ -161,9 +102,10 @@ public class FilterSet
* *
* @param filterSet the filterset to be added to this filterset * @param filterSet the filterset to be added to this filterset
*/ */
public void addFilterSet( FilterSet filterSet )
public void addFilterSet( final FilterSet filterSet )
{ {
for( Iterator e = filterSet.getFilters().iterator(); e.hasNext(); )
final Iterator e = filterSet.m_filters.iterator();
while( e.hasNext() )
{ {
m_filters.add( (Filter)e.next() ); m_filters.add( (Filter)e.next() );
} }
@@ -187,7 +129,7 @@ public class FilterSet
public boolean hasFilters() public boolean hasFilters()
throws TaskException throws TaskException
{ {
return getFilters().size() > 0;
return m_filters.size() > 0;
} }


/** /**
@@ -211,7 +153,7 @@ public class FilterSet
props.load( in ); props.load( in );


Enumeration enum = props.propertyNames(); Enumeration enum = props.propertyNames();
ArrayList filters = getFilters();
ArrayList filters = m_filters;
while( enum.hasMoreElements() ) while( enum.hasMoreElements() )
{ {
String strPropName = (String)enum.nextElement(); String strPropName = (String)enum.nextElement();
@@ -250,66 +192,56 @@ public class FilterSet
* @param line The line to process the tokens in. * @param line The line to process the tokens in.
* @return The string with the tokens replaced. * @return The string with the tokens replaced.
*/ */
public String replaceTokens( String line )
public String replaceTokens( final String line )
throws TaskException throws TaskException
{ {
String beginToken = getBeginToken();
String endToken = getEndToken();
int index = line.indexOf( beginToken );
int index = line.indexOf( DEFAULT_TOKEN_START );
if( -1 == index )
{
return line;
}


if( index > -1 )
Hashtable tokens = getFilterHash();
try
{ {
Hashtable tokens = getFilterHash();
try
{
StringBuffer b = new StringBuffer();
int i = 0;
String token = null;
String value = null;
StringBuffer b = new StringBuffer();
int i = 0;
String token = null;
String value = null;


do
do
{
int endIndex = line.indexOf( DEFAULT_TOKEN_END, index + DEFAULT_TOKEN_START.length() + 1 );
if( endIndex == -1 )
{ {
int endIndex = line.indexOf( endToken, index + beginToken.length() + 1 );
if( endIndex == -1 )
{
break;
}
token = line.substring( index + beginToken.length(), endIndex );
b.append( line.substring( i, index ) );
if( tokens.containsKey( token ) )
{
value = (String)tokens.get( token );
getLogger().debug( "Replacing: " + beginToken + token + endToken + " -> " + value );
b.append( value );
i = index + beginToken.length() + token.length() + endToken.length();
}
else
{
// just append beginToken and search further
b.append( beginToken );
i = index + beginToken.length();
}
} while( ( index = line.indexOf( beginToken, i ) ) > -1 );
break;
}
token = line.substring( index + DEFAULT_TOKEN_START.length(), endIndex );
b.append( line.substring( i, index ) );
if( tokens.containsKey( token ) )
{
value = (String)tokens.get( token );
getLogger().debug( "Replacing: " + DEFAULT_TOKEN_START + token + DEFAULT_TOKEN_END + " -> " + value );
b.append( value );
i = index + DEFAULT_TOKEN_START.length() + token.length() + DEFAULT_TOKEN_END.length();
}
else
{
// just append beginToken and search further
b.append( DEFAULT_TOKEN_START );
i = index + DEFAULT_TOKEN_START.length();
}
} while( ( index = line.indexOf( DEFAULT_TOKEN_START, i ) ) > -1 );


b.append( line.substring( i ) );
return b.toString();
}
catch( StringIndexOutOfBoundsException e )
{
return line;
}
b.append( line.substring( i ) );
return b.toString();
} }
else
catch( StringIndexOutOfBoundsException e )
{ {
return line; return line;
} }
} }


protected ArrayList getFilters()
{
return m_filters;
}

/** /**
* The filtersfile nested element. * The filtersfile nested element.
* *
@@ -318,25 +250,17 @@ public class FilterSet
*/ */
public class FiltersFile public class FiltersFile
{ {
/**
* Constructor for the Filter object
*/
public FiltersFile()
{
}

/** /**
* Sets the file from which filters will be read. * Sets the file from which filters will be read.
* *
* @param file the file from which filters will be read. * @param file the file from which filters will be read.
*/ */
public void setFile( File file )
public void setFile( final File file )
throws TaskException throws TaskException
{ {
readFiltersFromFile( file ); readFiltersFromFile( file );
} }
} }

} }





Loading…
Cancel
Save