Hello,
I Just want to confirm if the resultprefix logic for the STAF Ant addon is
correct or not. I am currently building up an ANT script which will contains
ANT based marcos. The ANT based macros are wrappers for STAF commands, for
example:
This ant macro wraps the STAF variable resolution based on target system and
variable.
<macrodef name="getSTAFVAR">
<attribute name="targetSystem" default="localhost"/>
<attribute name="targetVAR" default="none-provided"/>
<attribute name="stafres" default="none"/>
<sequential>
<staf location="@{targetSystem}"
service="VAR"
request="RESOLVE STRING {@{targetVAR}}"
resultPrefix="@{stafres}"
throwBuildException="1"/>
</sequential>
</macrodef>
Now when I call this macro such as:
<target name="test.staf.1">
<getSTAFVAR targetSystem="localhost" targetVAR="FOOBAR_1"
stafres="foobar"/>
<getSTAFVAR targetSystem="localhost" targetVAR="FOOBAR_2"
stafres="foobar"/>
<echo message="${foobar.result}"/>
<echo message="${foobar.result}"/>
</target>
It seems that the resultPrefix it maintaining the original value and not be
overwritten by the second calling of the ANT macro "getSTAFVAR", as you can see
below:
Please note I have the following set in my STAF.cfg
SET SYSTEM VAR FOOBAR_1=Hello
SET SYSTEM VAR FOOBAR_2=GoodBye
test.staf.1:
[staf] localhost VAR RESOLVE STRING {FOOBAR_1}
[staf] RC=0, Result=Hello
[staf] localhost VAR RESOLVE STRING {FOOBAR_2}
[staf] RC=0, Result=GoodBye
[echo] Hello <--This is from the first call
[echo] Hello <-This is from the second call, yet I was expecting "GoodBye"
The only way I am currently getting around this is by each call, having a
unique resultPrefix such as:
<target name="test.staf.2" depends="test.staf.1">
<getSTAFVAR targetSystem="localhost" targetVAR="FOOBAR_1"
stafres="foobar"/>
<getSTAFVAR targetSystem="localhost" targetVAR="FOOBAR_2"
stafres="foobar2"/>
<echo message="${foobar.result}"/>
<echo message="${foobar2.result}"/>
</target>
test.staf.2:
[staf] localhost VAR RESOLVE STRING {FOOBAR_1}
[staf] RC=0, Result=Hello
[staf] localhost VAR RESOLVE STRING {FOOBAR_2}
[staf] RC=0, Result=GoodBye
[echo] Hello
[echo] GoodBye
Therefore is this the intended functionality/logic for the resultPefix Or am I
missing something here? As always thanks!
-george
------------------------------------------------------------------------------
Register Now & Save for Velocity, the Web Performance & Operations
Conference from O'Reilly Media. Velocity features a full day of
expert-led, hands-on workshops and two days of sessions from industry
leaders in dedicated Performance & Operations tracks. Use code vel09scf
and Save an extra 15% before 5/3. http://p.sf.net/sfu/velocityconf
_______________________________________________
staf-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/staf-users