If you're not averse to creating a little helper class, why not
just write a custom file selector that can read your delimited
file. Then you can just leverage the built in resource collection
mechanisms like:
<files id="myfiles">
<custom classname="your.new.custom.csvfile.reader.Selector">
<param name="file" value="/your/files/location"/>
</custom>
</files>
As of 1.7 this <files> item can be used just about wherever the
older <fileset> type was allowed...
WARNING: I have not worked with the new resource collections in
1.7 extensively; so not sure *exactly* how this might work.
-The Wabbit
Jeremy Weber wrote:
Hi All,
I have created dozen of custom tasks before, but find myself struggling
with this one. I wish to create a task that does the following:
1. Accepts a file attribute to represent the absolute path of a file
contains comma separated absolute paths.
a. this file name will be read in, parsed and each file found will
be added to a fileset object, which in term is added to a resources object.
2. Accepts a id property
a. this id will be the id of the resource created in step 1a.
So essentially I want...
<csvtofileset file="csv.file.name" id="some.id.name">
I am unclear on how to add the fileset i create in my code to the
project. Additionally I am unsure of how to assign this an 'id' that I
can reference elsewhere. Basically what I want to be able to do is
create a collection of files on the fly which I can reference on the
fly. Essentially in the following snippet, the resources element would
be replaced by my new task element
<project name="test" basedir="." default="test">
<!-- old -->
<resources id="fsd">
<fileset file="c:\temp\db2_test\db2jcc.jar" />
<fileset file="c:\temp\db2_test\db2jcc_license_cu.jar" />
</resources>
<!-- old -->
<!-- new -->
<csvtofileset file="csv.file.name" id="fsd">
<!-- new -->
<target name="test">
<copy toDir="c:\temp\ failonerror="true">
<resources refid="fsd"/>
</copy>
</target>
</project>
Any help at all would be appreciated.
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]