> From: jonathan gold [mailto:[EMAIL PROTECTED] > > Jose Alberto Fernandez wrote: > > > > Maybe we are looking at the problem the wrong way. > > What is what people want to do? > > Do they want to programatically create some project and then > > as an after thought they decide to serialize it to XML? (which will not > > work); > > Or do they want to create a project programmatically with the intention > > of serializing it to XML. > > > > If the later, then the obvious thing to do us to not create tasks > > directly > > but to create our wrapping objects. Actually, you could just as well > > use Jdom to compose the XML and then either serialize it into XML > > or produce the Project object out of it (we just need to generate SAX > > events > > out of it). > > hi. i'm getting back to this now, and saw that there were a few more > responses. to answer your question -- it's the latter. i've gone the xml > route. the problem is that i have many modules interacting to build a > project, and it's difficult, though not impossible, to do this with DOM, > as i am now. it's not the DOM that makes it hard -- but the lack of > typing, thus the desire to use the java objects, with their convenient > accessors and access to the current project structure and type safety. >
Well, it may be possible to provide some additional API to simplify mechanically generating source build files. And certainly something based On JDom will be much easier to use than something based on DOM. But I do not think this is a little out of the scope of ANT, as generating sources is not the objective of this tool. And requesting to change the API of every task out there to fulfil this requirement is really unattainable in my opinion. What I see feasible, is for ANT to provide the means of executing (i.e., parsing) a project directly from its JDom/DOM representation. Not necessarily a trivial matter as we make heavy assumptions on the source being on the file system. Jose Alberto --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]