Class ReplaceTokens

java.lang.Object
java.io.Reader
java.io.FilterReader
All Implemented Interfaces:
java.io.Closeable, java.lang.AutoCloseable, java.lang.Readable, ChainableReader, Parameterizable

public final class ReplaceTokens
extends BaseParamFilterReader
implements ChainableReader
Replaces tokens in the original input with user-supplied values. Example:
<replacetokens begintoken="#" endtoken="#">
   <token key="DATE" value="${TODAY}"/>
 </replacetokens>
Or:
<filterreader classname="org.apache.tools.ant.filters.ReplaceTokens">
   <param type="tokenchar" name="begintoken" value="#"/>
   <param type="tokenchar" name="endtoken" value="#"/>
   <param type="token" name="DATE" value="${TODAY}"/>
 </filterreader>
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static class  ReplaceTokens.Token
    Holds a token
  • Field Summary

    Fields inherited from class java.io.FilterReader

    in

    Fields inherited from class java.io.Reader

    lock
  • Constructor Summary

    Constructors 
    Constructor Description
    ReplaceTokens()
    Constructor for "dummy" instances.
    ReplaceTokens​(java.io.Reader in)
    Creates a new filtered reader.
  • Method Summary

    Modifier and Type Method Description
    void addConfiguredToken​(ReplaceTokens.Token token)
    Adds a token element to the map of tokens to replace.
    java.io.Reader chain​(java.io.Reader rdr)
    Creates a new ReplaceTokens using the passed in Reader for instantiation.
    int read()
    Returns the next character in the filtered stream, replacing tokens from the original stream.
    void setBeginToken​(java.lang.String beginToken)
    Sets the "begin token" character.
    void setEndToken​(java.lang.String endToken)
    Sets the "end token" character.
    void setPropertiesResource​(Resource r)
    A resource containing properties, each of which is interpreted as a token/value pair.

    Methods inherited from class org.apache.tools.ant.filters.BaseParamFilterReader

    getParameters, setParameters

    Methods inherited from class org.apache.tools.ant.filters.BaseFilterReader

    getInitialized, getProject, read, readFully, readLine, setInitialized, setProject, skip

    Methods inherited from class java.io.FilterReader

    close, mark, markSupported, ready, reset

    Methods inherited from class java.io.Reader

    nullReader, read, read, transferTo

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • ReplaceTokens

      public ReplaceTokens()
      Constructor for "dummy" instances.
      See Also:
      BaseFilterReader()
    • ReplaceTokens

      public ReplaceTokens​(java.io.Reader in)
      Creates a new filtered reader.
      Parameters:
      in - A Reader object providing the underlying stream. Must not be null.
  • Method Details

    • read

      public int read() throws java.io.IOException
      Returns the next character in the filtered stream, replacing tokens from the original stream.
      Overrides:
      read in class java.io.FilterReader
      Returns:
      the next character in the resulting stream, or -1 if the end of the resulting stream has been reached
      Throws:
      java.io.IOException - if the underlying stream throws an IOException during reading
    • setBeginToken

      public void setBeginToken​(java.lang.String beginToken)
      Sets the "begin token" character.
      Parameters:
      beginToken - the character used to denote the beginning of a token
    • setEndToken

      public void setEndToken​(java.lang.String endToken)
      Sets the "end token" character.
      Parameters:
      endToken - the character used to denote the end of a token
    • setPropertiesResource

      public void setPropertiesResource​(Resource r)
      A resource containing properties, each of which is interpreted as a token/value pair.
      Parameters:
      r - Resource
      Since:
      Ant 1.8.0
    • addConfiguredToken

      public void addConfiguredToken​(ReplaceTokens.Token token)
      Adds a token element to the map of tokens to replace.
      Parameters:
      token - The token to add to the map of replacements. Must not be null.
    • chain

      public java.io.Reader chain​(java.io.Reader rdr)
      Creates a new ReplaceTokens using the passed in Reader for instantiation.
      Specified by:
      chain in interface ChainableReader
      Parameters:
      rdr - A Reader object providing the underlying stream. Must not be null.
      Returns:
      a new filter based on this configuration, but filtering the specified reader