Java Mailing List Archive

http://www.ant-tasks.com/

Apache Ant Archive

» Ant Users List
» Ant Developers List
AW: Parsing task

AW: Parsing task

2003-02-12       - By Jan.Materne@(protected)

I would use property files:

<property value="which" value="dev" />
 <!-- values: dev,stage,prod -->
<property file="${which}.properties" />


If your third instruction is
  <property file="default.properties" />
you can set default values which only have to be overwritten.

Although you can load user specific propertyfiles.
All together:


<property value="${user.home}/myprogram.properties" />
<property value="which" value="dev" />
<property file="${which}.properties" />
<property file="default.properties" />



Jan Mat?rne


-----Urspr?ngliche Nachricht-----
Von: Chris Reeves [mailto:CReeves@(protected)]
Gesendet am: Dienstag, 11. Februar 2003 22:44
An: user@(protected)
Betreff: Parsing task

I've been searching for a task that would do a little parsing for
me...it seems I've seen this sort of thing before, but that may have
been a dream...

I have two ant xml files for my project - one builds the project
(build.xml), one runs the executable (run.xml) produced by the build;
this second file is simply bundled with the distribution.

It works great - except that the properties in the run.xml must be
changed on a per-environment basis (dev, stage, prod). And I only need
to change a couple of lines.

So, I'd like to have something like:

<!-- ========== mail properties ========== -->

<dev>
<property name="to.address"
value="devuser@(protected)"/>    
<property name="from.address"
value="devappthingy@(protected)"/>
<property name="smtp.server"
value="myserver.nowhere.com"/>
</dev>

<stage>
<property name="to.address"
value="devuser@(protected)"/>    
<property name="from.address"
value="stageappthingy@(protected)"/>
<property name="smtp.server"
value="myserver.nowhere.com"/>
</stage>

<prod>
<property name="to.address"
value="produser1@(protected), produser1@(protected)"/>    
<property name="from.address"
value="appthingy@(protected)"/>
<property name="smtp.server"
value="myserver.prod.nowhere.com"/>
</prod>

The end product should contain only the xml relevant for the environment
it was built for.

Also, I know I could run ant with a specific target that sets these
properties, but that means that all properties for all env's would be on
each system.

I suppose I could use xslt to alter the file, but it seems there should
be something easier. I scoured the Hatchet/Loughran book, but didn't
find what I was looking for. Any ideas?

Chris

----------------------------------------
Chris Reeves
Senior Software Developer
Medfusion, Inc.
creeves@(protected)
----------------------------------------

---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@(protected)
For additional commands, e-mail: user-help@(protected)

©2008 ant-tasks.com - Jax Systems, LLC, U.S.A.