ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jaikiran Pai <jai.forums2...@gmail.com>
Subject Re: Filterchain's LineContains on LoadProperties is blocking the reading of properties
Date Thu, 19 Apr 2018 04:21:00 GMT
Hi Anuerin,

Ifthere are more than one"contains" elements of the "linecontains", then 
as noted in the documentation[1]"and" will be used toevaluate whether 
the line contains those strings. So in the exampleyou pasted, the 
properties file will be looked for lines containing ws.user AND 
ws.password AND wl.user AND wl.password, which obviously won't be 
satisfied for the sample.properties.

[1] https://ant.apache.org/manual/Types/filterchain.html#linecontains

-Jaikiran
On 19/04/18 7:28 AM, Anuerin Diaz wrote:
> Hi,
>
>    I am trying to selectively load properties using the LoadProperties and
> FilterChain+LineContains tasks. However based on my test if the Filterchain
> starts to contain any "<contains/>" element then it will start discarding
> all contents of the property file being read. This was tested  using  ant
> 1.10.1 adn 1.10.3 in a Java 1.8 VM hosted in a Windows 10 64-bit machine.
>
>    Below is my build xml and sample.properties file. The initialize target
> has different variations that I tried to do to isolate the problem. What
> could be the problem in this instance? Thanks.
>
> -- build.xml  ---
>
> <project name="MyProject" basedir=".">
>    <target name="initialize">
>      <echo>Starting load...</echo>
>      <loadproperties srcFile="${basedir}/01_PropertyFiles/sample.properties">
>
>        <filterchain>
>          <linecontains>
>            <contains value="ws.user" />
>            <contains value="ws.password" />
>            <contains value="wl.user" />
>            <contains value="wl.password" />
>          </linecontains>
>        </filterchain>
>
>        <!--filterchain>
>
>        <filterreader classname="org.apache.tools.ant.filters.LineContains">
>          <param type="contains" value="user"/>
>          <param type="contains" value="password"/>
>        </filterreader>
>
>
>        </filterchain-->
>
>
>      </loadproperties>
>      <echo>${ws.user} - ${ws.password}</echo>
>      <echo>${wl.user} - ${wl.password}</echo>
>
>      <echo>${placebo.prop} should be printed as a literal. </echo>
>
>    </target>
>
> </project>
>
>
> -- end of build.xml  ---
>
> ---- sample.properties ----
> placebo.prop=dontprintme
> ws.user=dilbert
> ws.password=washere
> wl.user=felix
> wl.password=lantern
>
> ps.xser=dummy
> ---- end of sample.properties ----
>
>


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message