From: Gavin_King/Cirrus%<CI...@ci...> - 2002-02-07 04:04:28
|
Paul Szego wrote: > At the risk of over-comlicating what should be a simple task - could we > use some kind of *simple* config file in addition to the command line > settings (perhaps at a later stage when it's more stable)? [snip] > But in this area I think it would be good to perhaps stretch this a > little to maintain what I think is a really good design goal - you just > point the tool at the code and *most* of the time "magic happens" and > you've got persistence. And when you do something outside what the > USB-attached-crystal-ball can cope with it's not traumatic to figure out > how to deal with it. > So maybe setting up some simple config options that are exceptions to > the rules (like ID attribute names or sub-tree roots that we want to > force into separate tables) life for the developer throughout the > development cycle is still painless. Make code changes, run "ant all" > and fire up my app each time I change something. Yeah I think we do want the tool to be reasonably easily customizable to developer preferences but I dont think we should actually include stuff like "sub-tree roots that we want to force into separate tables". If we include stuff like that then the logical extreme is that we end up with a tool that basically takes its _own_ mapping document and spits out the XML style mapping. My feeling is thats just too much stuff to keep track of. There should be the Java classes and the XML mappings and tools should work with those and with user input. As far as the cmd line tool that Doug is working on now goes, I don't envisage that the user would be running it more than once for a particular hierarchy of classes. It "gets you going" - it does 70% of the work and then leaves you to fill in the gaps (and maintain the mapping as your codebase evolves) by hand. Later on we might provide extensions to the tool that _help_ you fill in the gaps. Eventually what I think we should aim for is a GUI tool that can back-parse the auto-generated (or hand-coded) mapping and allow visual manipulation. Gavin |