Hi Dirk,
I also had performance concerns. So maybe store all that bulky
optional metadata (be it just comments or some arbitrary key value
pairs) in a separate properties file sitting next to the project
descriptor (cayenne.properties?). Each property name will be prefixed
with a location of the property-owning node in the project tree. E.g.:
map:mymap1.dbentity:myentity1.abc.comment = ABC...
map:mymap2.objentity:myentity2.abc.comment = XYZ...
... or something. Properties can be loaded lazily on first access and
CayenneModeler would take care of building the proper keys.
Is this similar to what you've done?
Andrus
On Jan 31, 2007, at 3:24 PM, Dirk Olmes wrote:
Hi All,
Hi,
We use Cayenne day in day out for a lot of our work, and the Cayenne
Modeler has a pretty central place in maintaining the database
design,
and hence the application design.
Documentation for the database model has been an issue that I was
interested in since the EOF days.
Being able to have comments associated with DbEntity attributes and
relationships would be an extremely useful feature, especially with
large teams, where a design is being shared with other members, or
even to simply come back and remember some of the original design
thinking.
My main concern with comments in the model would be that they are
possibly
going to be loaded into the runtime as well ... this only wastes
memory.
My approach was to store documentation of the model separately to the
model itself. IIRC I have such a documentation app half finished for
cayenne lying around at home. I can have a look if somebody is
interested
...
-dirk
--
Anyway kids, have fun, play nicely, be good. And remember - if it
ain't
broke, hit it again.