Java Mailing List Archive

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

Home » Ant Users List »

Re: Programmatically create a fileset and reference

Scot P. Floess

2008-05-01

Replies:

Author LoginPost Reply
Have you considered using a macrodef and elements?

Maybe something like:

<macrodef name="my-macro">
 <attribute name="id"/>
  <element name="includes"/>
 
  <sequential>
    <path id="@(protected)}">
      <includes/>
    </path>
  </sequential>
</macrodef>

Then you can supply whatever you want in <includes> as long as it
adheres to <path> allowances....

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: user-unsubscribe@(protected)
> For additional commands, e-mail: user-help@(protected)
>
>

--
Scot P. Floess
27 Lake Royale
Louisburg, NC 27549

252-478-8087 (Home)
919-754-4592 (Work)

Chief Architect JPlate  http://sourceforge.net/projects/jplate
Chief Architect JavaPIM http://sourceforge.net/projects/javapim

Architect Keros       http://sourceforge.net/projects/keros


---------------------------------------------------------------------
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.