summaryrefslogtreecommitdiffstats
path: root/docs/manual/tasks/antfetch_task.html
blob: f92e635aee452c8376587c8868959dd57cab6cbd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>
AntFetch</title>
<meta content="DocBook XSL Stylesheets V1.60.1" name="generator">
<link rel="home" href="index.html" title="Antelope Users Guide">
<link rel="up" href="bk03.html" title="Additional Ant Tasks">
<link rel="previous" href="bk03ch13.html" title="Chapter&nbsp;13.&nbsp;SSH and SCP">
<link rel="next" href="bk03ch15.html" title="Chapter&nbsp;15.&nbsp;AntCallBack">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<div class="chapter" lang="en">
<div class="titlepage">
<div>
<div>
<h2 class="title">
<a name="antfetch">
</a>
AntFetch</h2>
</div>
</div>
<div>
</div>
</div>
<p>

AntFetch is identical to the standard 'Ant' task, except that it allows properties from the new project to be set in the original project.
</p>
<p>

</p>
<p>

Some background may be in order: When the &lt;ant&gt; task is used, in actuality, a new Ant project is created, and depending on the inheritAll property, it is populated with properties from the original project. Then the target in this new project is executed. Any properties set in the new project remain with that project, they do not get "passed back" to the original project. So, for example, if the target in the new project sets a property named "image.directory", there is no reference to that property in the original. Here's an example of what I mean:
</p>
<p>

Suppose that the "fillImageDirectory" target sets a property named "image.directory" and I call the following:
<table border="0" bgcolor="#E0E0E0">
<tr>
<td>
<pre class="programlisting">


    &lt;ant dir="${image.project} target="fillImageDirectory"/&gt;
    &lt;echo&gt;${image.directory}&lt;/echo&gt;

</pre>
</td>
</tr>
</table>

The output of the echo task will be ${image.directory}, not whatever was set in the "fillImageDirectory" target.
</p>
<p>

The AntFetch task allows that image.directory property to be set in the original project. The attributes for AntFetch are identical to the 'Ant' task, with one additional, optional attibute. This attribute is named "return" and can be either a single property name or a comma separated list of property names.
</p>
<p>

Assuming that "fillImageDirectory" actually sets a property named "image.directory", the following example will print out the directory name:
<table border="0" bgcolor="#E0E0E0">
<tr>
<td>
<pre class="programlisting">


    &lt;antfetch dir="${image.project} target="fillImageDirectory" return="image.directory"/&gt;
    &lt;echo&gt;${image.directory}&lt;/echo&gt;

</pre>
</td>
</tr>
</table>

</p>
<p>

And this one will also print out the thumbnail directory:
<table border="0" bgcolor="#E0E0E0">
<tr>
<td>
<pre class="programlisting">


    &lt;antfetch dir="${image.project} target="fillImageDirectory" return="image.directory, thumbnail.directory"/&gt;
    &lt;echo&gt;${image.directory}&lt;/echo&gt;
    &lt;echo&gt;${thumbnail.directory}&lt;/echo&gt;

</pre>
</td>
</tr>
</table>

</p>
<p>

The attributes for AntFetch are identical to the 'ant' task, with one additional, optional attibute. This attribute is named "return" and can be either a single property name or a comma separated list of property names.
<div class="table">
<a name="N10B35">
</a>
<p class="title">
<b>
Table&nbsp;14.1.&nbsp;AntFetch Attributes</b>
</p>
<table summary="AntFetch Attributes" border="1">
<colgroup>
<col>
<col>
<col>
<col>
</colgroup>
<thead>
<tr>
<th>
Attribute</th>
<th>
Description</th>
<th>
Default</th>
<th>
Required</th>
</tr>
</thead>
<tbody>
<tr>
<td>
return</td>
<td>
A comma separated list of property names. Whitespace is allowed, so either "a,b" or "a, b" are acceptable.</td>
<td>
None</td>
<td>
No</td>
</tr>
</tbody>
</table>
</div>

</p>
<p>

For other attribute and nested element information and more examples, see the documentation for the "ant" task in the Ant documentation.
</p>
</div>
    <hr>
    <p align="center">Copyright &copy; 2003 Ant-Contrib Project. All
    rights Reserved.</p>
</body>
</html>