I think it should return a List of file descriptors:
interface FileDescriptor { InputStream open(); String getName(); }
In that case it will also support file lists, files from a zip, or <zipfileset>, and it will be possible to put a mapper inside a fileset.
- Alexey.
Matt Benson wrote:
Okay, the clean way. Create the interface, implement it, figure out the best way to play set operations, and add it into the tasks.
public interface FileCollection { public (String or File?)[] getFiles(); }
That would be the easiest. Now somebody think of a better name than FileBag (_please_) for a class that is identical to AbstractFileSet, but doesn't accept a basedir. AbsoluteFileSet is a nice concept but it probably doesn't need to have FileSet in the name so it won't be mistaken for an AFS subclass. I think it is sufficient to require the type selector's use to restrict to files or directories, if not overly friendly. Do others think we should subclass as with File|DirSet or rely on selectors?
Set operations are fine; the referenced bug (5035) includes talk of nested FileSets. FileCollection unions, intersections and differences achieve the main spirit of the request in 5035; however we need to have some facility for adding additional restrictions (in the form of exclude patterns and selectors) to an existing FileCollection. Among other things this would allow (here's the carrot) the removal of the Clone task from any shipping version of Ant! :) I think the set operations should be implemented as FileCollections rather than tasks, for use inline. I suppose we could have a "limit" FileCollection that applies exclusions and selectors to a single nested FileCollection.
I'm -0 then. --DD
Now what are you? :)
-Matt
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
__________________________________ Celebrate Yahoo!'s 10th Birthday! Yahoo! Netrospective: 100 Moments of the Web http://birthday.yahoo.com/netrospective/
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
-- ------------------------------------------------------------------------ / Alexey N. Solofnenko MDL Information Systems, Inc. work: 510-357-2222x1726 home: http://trelony.cjb.net/ /
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]