Yeah, i figured out how to do that after i sent the email.   EIther  
way works for me though. However, no matter which way I pick, i can't  
seem to figure out how to save the resulting sorted list as a new  
fileset.

Griffin



On May 7, 2007, at 4:39 PM, Richard Gavel wrote:

> The fileset should not be a build element of the custom task, it  
> should be a
> task attribute (just a string property). Within the task, you can  
> resolve
> the fileset id to the previously created fileset instance using the
> Task.Project.DataTypeReferences property.
>
> -----Original Message-----
> From: Griffin Caprio [mailto:[EMAIL PROTECTED]
> Sent: Monday, May 07, 2007 4:37 PM
> To: Richard Gavel
> Cc: nant-users@lists.sourceforge.net
> Subject: Re: [NAnt-users] Sorting fileset
>
> Richard,
>
> Thanks for your continual help.  The below solution seems to have
> legs, however, I'm having some problems implementing it.  Mainly, I
> cannot get the <sort-fileset> task to reference an existing fileset.
> For example:
>
> default.build:
>
> <fileset id="deltas">
>       <include name="*.*.sql" />
> </fileset>
> <sort-fileset fileset="deltas"/>
>
> SortFilesetTask.cs:
>
> [TaskName("sort-fileset")]
>      public class SortFilesetTask : Task
>      {
>          private FileSet _fileset;
>
>          [BuildElement("fileset")]
>          public FileSet SortFileset
>          {
>              get { return _fileset; }
>              set { _fileset = value; }
>          }
>
>          protected override void ExecuteTask()
>          {
>              foreach (string fileName in _fileset.FileNames)
>              {
>                  Console.WriteLine(fileName);
>              }
>          }
>      }
>
> This results in the following output:
> Unexpected attribute "fileset" on element <sort-fileset>.
>
> However, I can do this:
>
> default.build:
> <sort-fileset>
>       <fileset id="deltas">
>               <include name="*.*.sql" />
>               </fileset>
> </sort-fileset>
>
> But obviously, this keeps the fileset inside the task.
>
> What am I missing here?
>
> Thanks,
> Griffin
>
>
>
> On May 5, 2007, at 3:25 PM, Richard Gavel wrote:
>
>> My suggestion would be a custom task that takes in a fileset and
>> manipulates
>> it according to your needs.
>>
>> <fileset id="foo">
>>   <include name="*.dll" />
>> </fileset>
>>
>> <sort-fileset fileset="foo">
>>
>> Then you can make use of the fileset later.
>>
>> <delete>
>>   <items refid="foo" />
>> </delete>
>>
>> The sort-fileset custom task would extract all the file names out,
>> including
>> wildcard evaluation (FileSet.Filenames property), then create a new
>> fileset,
>> add in the individual files in whatever sorted order is
>> appropriate. Then
>> the existing fileset referenced by the refid would be replaced with
>> the new
>> one.
>>
>>> -----Original Message-----
>>> From: [EMAIL PROTECTED]
>>> [mailto:[EMAIL PROTECTED] On Behalf Of
>>> Griffin
>>> Caprio
>>> Sent: Thursday, May 03, 2007 6:18 PM
>>> To: Ryan Anthony
>>> Cc: nant-users@lists.sourceforge.net
>>> Subject: Re: [NAnt-users] Sorting fileset
>>>
>>> So let's say that's not an option.
>>>
>>> Is there anything else I can do?
>>>
>>> Griffin Caprio
>>> 312.371.3869
>>> http://blog.1530technologies.com
>>>
>>>
>>>
>>> On May 3, 2007, at 4:08 PM, Ryan Anthony wrote:
>>>
>>>> I believe the quick and dirty answer is to add a zero in front of
>>>> each
>>>> single digit number.
>>>>
>>>> Ryan
>>>>
>>>> Griffin Caprio wrote:
>>>>> Hello all,
>>>>>
>>>>> I am trying to iterate through a directory of files that are
>>>>> numerically named:
>>>>>
>>>>> 1.sql
>>>>> 2.sql
>>>>> ...
>>>>>
>>>>> Using the foreach task is easy:
>>>>>
>>>>> <foreach item="File" property="loop.filepath">
>>>>>        <in>
>>>>>          <items>
>>>>>            <include name="**.sql" />
>>>>>          </items>
>>>>>        </in>
>>>>>        <do>
>>>>>          <echo message="${loop.filepath}"/>
>>>>>        </do>
>>>>>      </foreach>
>>>>>
>>>>> However, this returns the list of files, sorted in text fashion,
>>>>> not
>>>>> numerically.  For example, if 10.sql was in the directory, it  
>>>>> would
>>>>> be returned before 2.sql.  Obviously, since these files need to be
>>>>> run in order, this won't do.
>>>>>
>>>>> Is there anyway I can accomplish this?
>>>>>
>>>>> Thanks,
>>>>> Griffin Caprio
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------ 
>>>>> -
>>>>> -
>>>>> -
>>>
>>>>> ----
>>>>> This SF.net email is sponsored by DB2 Express
>>>>> Download DB2 Express C - the FREE version of DB2 express and take
>>>>> control of your XML. No limits. Just data. Click to get it now.
>>>>> http://sourceforge.net/powerbar/db2/
>>>>> _______________________________________________
>>>>> NAnt-users mailing list
>>>>> NAnt-users@lists.sourceforge.net
>>>>> https://lists.sourceforge.net/lists/listinfo/nant-users
>>>>>
>>>>> __________ NOD32 2238 (20070503) Information __________
>>>>>
>>>>> This message was checked by NOD32 antivirus system.
>>>>> http://www.eset.com
>>>>>
>>>>>
>>>>>
>>>
>>>
>>> -------------------------------------------------------------------- 
>>> -
>>> -
>>> --
>>> -
>>> This SF.net email is sponsored by DB2 Express
>>> Download DB2 Express C - the FREE version of DB2 express and take
>>> control of your XML. No limits. Just data. Click to get it now.
>>> http://sourceforge.net/powerbar/db2/
>>> _______________________________________________
>>> NAnt-users mailing list
>>> NAnt-users@lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/nant-users
>>
>>
>>
>>
>> --------------------------------------------------------------------- 
>> -
>> ---
>> This SF.net email is sponsored by DB2 Express
>> Download DB2 Express C - the FREE version of DB2 express and take
>> control of your XML. No limits. Just data. Click to get it now.
>> http://sourceforge.net/powerbar/db2/
>> _______________________________________________
>> NAnt-users mailing list
>> NAnt-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/nant-users
>
>
> ---------------------------------------------------------------------- 
> ---
> This SF.net email is sponsored by DB2 Express
> Download DB2 Express C - the FREE version of DB2 express and take
> control of your XML. No limits. Just data. Click to get it now.
> http://sourceforge.net/powerbar/db2/
> _______________________________________________
> NAnt-users mailing list
> NAnt-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/nant-users


-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
_______________________________________________
NAnt-users mailing list
NAnt-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/nant-users

Reply via email to