From cfa964e51d55c792dc77e1fb99926e7363d5b978 Mon Sep 17 00:00:00 2001 From: Magesh Umasankar Date: Wed, 27 Feb 2002 21:51:34 +0000 Subject: [PATCH] Oops... missed adding this as well. git-svn-id: https://svn.apache.org/repos/asf/ant/core/trunk@271590 13f79535-47bb-0310-9956-ffa450edef68 --- .../docs/manual/CoreTypes/filterchain.html | 344 ++++++++++++++++++ 1 file changed, 344 insertions(+) create mode 100644 proposal/sandbox/filterreaders/docs/manual/CoreTypes/filterchain.html diff --git a/proposal/sandbox/filterreaders/docs/manual/CoreTypes/filterchain.html b/proposal/sandbox/filterreaders/docs/manual/CoreTypes/filterchain.html new file mode 100644 index 000000000..c1104df2c --- /dev/null +++ b/proposal/sandbox/filterreaders/docs/manual/CoreTypes/filterchain.html @@ -0,0 +1,344 @@ + + + + + FilterChain Type + + + +

FilterChain

+ +

FilterChains are groups of ordered FilterReaders. FilterChains can appear +inside tasks that support this feature.
FilterChains are used for +filtering file contents read in by tasks like +LoadFile, LoadProperties, etc.
+ +Each FilterChain is composed of zero or more of the following nested elements.
+FilterReader
+HeadFilter
+LineContains
+PrefixLines
+ReplaceTokens
+StripJavaComments
+StripLineBreaks
+StripLineComments
+TabsToSpaces
+TailFilter
+ +

FilterReader

+ +The filterreader element is the generic way to +define a filter. User defined filters can be +used using this. Built in filter readers can also +be speficied using this. + +A FilterReader element must be supplied with a class name as +an attribute value. The class resolved by this name must +extend java.io.FilterReader. If the custom filter reader +needs to be parameterized, it must implement +org.apache.tools.type.Parameterizable. + + + + + + + + + + + + +
AttributeDescriptionRequired
classnameThe class name of the filter reader.Yes
+ +

+The following FilterReaders are supplied with the default +distribution. + +

org.apache.tools.ant.filters.HeadFilter

+ +This filter reads the first few lines from the data supplied to it. + + + + + + + + + + + + +
Parameter NameParameter ValueRequired
linesNumber of lines to be read. + Defaults to "10"No
+

+

Example:

+ +This stores the first 15 lines of the supplied data in the property ${src.file.head} +
+<loadfile srcfile="${src.file}" property="${src.file.head}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.HeadFilter">
+      <param name="lines" value="15"/>
+    </filterreader>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<loadfile srcfile="${src.file}" property="${src.file.head}">
+  <filterchain>
+    <headfilter lines="15"/>
+  </filterchain>
+</loadfile>
+
+ +

org.apache.tools.ant.filters.ReplaceTokens

+ +This filter reader replaces all strings that are +sandwiched between begintoken and endtoken with +user defined values. + + + + + + + + + + + + + + + + + + + + + + + + + + +
Parameter TypeParameter NameParameter ValueRequired
tokencharbegintokenCharacter marking the + beginning of a token. Defaults to @No
tokencharendtokenCharacter marking the + end of a token. Defaults to @No
tokenUser defined String.User defined search StringYes
+

+ +

Example:

+ +This replaces occurences of the string @DATE@ in the data +with today's date and stores it in the property ${src.file.replaced} +
+<tstamp/>
+<loadfile srcfile="${src.file}" property="${src.file.replaced}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.ReplaceTokens">
+      <param type="token" name="DATE" value="${TODAY}"/>
+    </filterreader>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<tstamp/>
+<loadfile srcfile="${src.file}" property="${src.file.replaced}">
+  <filterchain>
+    <replacetokens>
+      <token key="DATE" value="${TODAY}"/>
+    </replacetokens>
+  </filterchain>
+</loadfile>
+
+ +

org.apache.tools.ant.filters.StripJavaComments

+ +This filter reader strips away comments from the data, +using Java syntax guidelines. This filter does not +take in any parameters. +

+

Example:

+ +
+<loadfile srcfile="${java.src.file}" property="${java.src.file.nocomments}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.StripJavaComments"/>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<loadfile srcfile="${java.src.file}" property="${java.src.file.nocomments}">
+  <filterchain>
+    <stripjavacomments/>
+  </filterchain>
+</loadfile>
+
+ +

org.apache.tools.ant.filters.StripLineBreaks

+ +This filter reader strips away specific characters +from the data supplied to it. + + + + + + + + + + + + +
Parameter NameParameter ValueRequired
linebreaksCharacters that are to + be stripped out. Defaults to "\r\n"No
+

+

Examples:

+ +This strips the '\r' and '\n' characters. +
+<loadfile srcfile="${src.file}" property="${src.file.contents}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.StripLineBreaks"/>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<loadfile srcfile="${src.file}" property="${src.file.contents}">
+  <filterchain>
+    <striplinebreaks/>
+  </filterchain>
+</loadfile>
+
+ +This treats the '(' and ')' characters as line break characters and +strips them. +
+<loadfile srcfile="${src.file}" property="${src.file.contents}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.StripLineBreaks">
+      <param name="linebreaks" value="()"/>
+    </filterreader>
+  </filterchain>
+</loadfile>
+
+ +

org.apache.tools.ant.filters.TabToSpaces

+ +This filter replaces tabs with spaces + + + + + + + + + + + + +
Parameter NameParameter ValueRequired
linestablength + Defaults to "8"No
+

+

Examples:

+ +This replaces tabs in ${src.file} with spaces. +
+<loadfile srcfile="${src.file}" property="${src.file.notab}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.TabsToSpaces"/>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<loadfile srcfile="${src.file}" property="${src.file.notab}">
+  <filterchain>
+    <tabstospaces/>
+  </filterchain>
+</loadfile>
+
+ +

org.apache.tools.ant.filters.TailFilter

+ +This filter reads the last few lines from the data supplied to it. + + + + + + + + + + + + +
Parameter NameParameter ValueRequired
linesNumber of lines to be read. + Defaults to "10"No
+

+

Examples:

+ +This stores the last 15 lines of the supplied data in the property ${src.file.tail} +
+<loadfile srcfile="${src.file}" property="${src.file.tail}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.TailFilter">
+      <param name="lines" value="15"/>
+    </filterreader>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<loadfile srcfile="${src.file}" property="${src.file.tail}">
+  <filterchain>
+    <tailfilter lines="15"/>
+  </filterchain>
+</loadfile>
+
+ + +This stores the last 5 lines of the first 15 lines of the supplied +data in the property ${src.file.mid} +
+<loadfile srcfile="${src.file}" property="${src.file.mid}">
+  <filterchain>
+    <filterreader classname="org.apache.tools.ant.filters.HeadFilter">
+      <param name="lines" value="15"/>
+    </filterreader>
+    <filterreader classname="org.apache.tools.ant.filters.TailFilter">
+      <param name="lines" value="5"/>
+    </filterreader>
+  </filterchain>
+</loadfile>
+
+ +Short form: +
+<loadfile srcfile="${src.file}" property="${src.file.mid}">
+  <filterchain>
+    <HeadFilter lines="15"/>
+    <TailFilter lines="5"/>
+  </filterchain>
+</loadfile>
+
+ +
+ +

Copyright © 2002 Apache Software Foundation. All rights +Reserved.