org.apache.tools.ant.taskdefs
Class KeySubst

java.lang.Object
  |
  +--org.apache.tools.ant.Task
        |
        +--org.apache.tools.ant.taskdefs.KeySubst

public class KeySubst
extends Task

Keyword substitution. Input file is written to output file. Do not make input file same as output file. Keywords in input files look like this: @foo@. See the docs for the setKeys method to understand how to do the substitutions.

Author:
Jon S. Stevens jon@clearink.com

Fields inherited from class org.apache.tools.ant.Task
description, location, project, target
 
Constructor Summary
KeySubst()
           
 
Method Summary
 void execute()
          Do the execution.
static void main(java.lang.String[] args)
           
static java.lang.String replace(java.lang.String origString, java.util.Hashtable keys)
          Does replacement on text using the hashtable of keys.
 void setDest(java.lang.String dest)
          Set the destination file.
 void setKeys(java.lang.String keys)
          Format string is like this: name=value*name2=value Names are case sensitive.
 void setSep(java.lang.String sep)
          Sets the seperator between name=value arguments in setKeys().
 void setSrc(java.lang.String s)
          Set the source file.
 
Methods inherited from class org.apache.tools.ant.Task
getDescription, getLocation, init, setDescription, setLocation, setTarget
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

KeySubst

public KeySubst()
Method Detail

execute

public void execute()
             throws BuildException
Do the execution.
Overrides:
execute in class Task

setSrc

public void setSrc(java.lang.String s)
Set the source file.

setDest

public void setDest(java.lang.String dest)
Set the destination file.

setSep

public void setSep(java.lang.String sep)
Sets the seperator between name=value arguments in setKeys(). By default it is "*".

setKeys

public void setKeys(java.lang.String keys)
Format string is like this:

name=value*name2=value

Names are case sensitive.

Use the setSep() method to change the * to something else if you need to use * as a name or value.


main

public static void main(java.lang.String[] args)

replace

public static java.lang.String replace(java.lang.String origString,
                                       java.util.Hashtable keys)
                                throws BuildException
Does replacement on text using the hashtable of keys.


Copyright © 2000 Apache Software Foundation. All Rights Reserved.