Hi,
Now that the Settings object is used to create exactly one Project tree,
I think it would make sense to merge ProjectDescriptor into Project, and
have the Settings object manage Project instances rather than
ProjectDescriptor instances.
This removes the duplication of the 2 hierarchies, allows richer
navigation in the settings file (as Project has a richer set of
navigation methods), and is a step towards removing the settings file.
Given that ProjectDescriptor is mutable, we would have to make name,
path, projectDir and buildFile mutable on Project. We should lock this
down so that the right things can be changed at the right time.
Something like:
- name + path: Can only be changed during settings evaluation
- buildFile: Can only be changed before the project is evaluated
- projectDir, buildDir: should both be treated the same. Should we lock
them after settings evaluation? Or allow them to be changed at any time?
- tasks: not sure. Once tasks have been added cannot the name+path of
any project.
- plugins: same as tasks.
Adam
---------------------------------------------------------------------
To unsubscribe from this list, please visit:
http://xircles.codehaus.org/manage_email