ant-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jeremy Weber <jeremy.we...@activevos.com>
Subject Re: Programmatically create a fileset and reference
Date Fri, 02 May 2008 13:25:35 GMT
Not sure that accomplishes what I need to do.  The problem I wish to 
solve is this:

I have a property that equates to this:

<property name="jdbc.jar" value="C:\Documents and 
Settings\jweber\Desktop\db2_test\db2jcc.jar,C:\Documents and 
Settings\jweber\Desktop\db2_test\db2jcc_license_cu.jar"/>

The value of this property is variable.

I then have a couple of tasks that perform the following:

     <!-- use filelist to copy the files to a temp dir so we can build a 
fileset -->
      <copy toDir=".tmp_cp" overwrite="true"  failonerror="false">
         <filelist files="${jdbc.jar}" />
         <flattenmapper/>
      </copy>

    <!-- create a referencable path object to be used in sql task -->
      <path id="sql.cp">
         <fileset dir=".tmp_cp"/>
      </path>*
*
This all works great (although not so straight forward), until there is 
a space in one of the paths in jdbc.jar property.  If you have another 
approach I'd be willing to try but I dont think your suggest will work 
for this.
*


*

Scot P. Floess wrote:
> Have you considered using a macrodef and elements?
>
> Maybe something like:
>
> <macrodef name="my-macro">
>   <attribute name="id"/>
>    <element name="includes"/>
>      <sequential>
>       <path id="@{id}">
>          <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@ant.apache.org
>> For additional commands, e-mail: user-help@ant.apache.org
>>
>>
>

-- 
Jeremy Weber
Quality Assurance Manager
Active Endpoints, Inc.
(203)929-9400
jeremy.weber@activevos.com 
http://www.active-endpoints.com
"Smart SOA Orchestration Powered by ActiveBPEL"


---------------------------------------------------------------------
To unsubscribe, e-mail: user-unsubscribe@ant.apache.org
For additional commands, e-mail: user-help@ant.apache.org


Mime
View raw message