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]

Reply via email to