On Jun 1, 2009, at 8:50 AM, Aristedes Maniatis wrote:
Jack is an intern at ish who has been working on this task. We discussed the basic design strategy and class structure, and Jack has put together some code.
Great! Jack, welcome to the community :-)
We'd like some feedback about the approach, especially the idea of superclassing the CayenneMapItems to allow for the code to live in one place.
I am ok with a common superclass of mapping objects. I don't like the CayenneMapItem name though. We have no current notion of "CayenneMap", so "CayenneMapItem" is confusing (not that I am happy with the name DataMap, heh :-)). Maybe something like MappingObject, which feels more generic along the lines of "Object Relational Mapping"?
Also I am not sure we need a special Info object. A simple Map<String, String> attached to a MappingObject should be enough from what I see. The current Info object has a notion of a parent. Could you elaborate why is it a tree structure?
"Info" name is a bit confusing, at least to a Java programmer (I know it was used in EOF). Everywhere else in Cayenne a similar unstructured String data attached to an object is called "property". I suggest we stick with this naming convention.
Andrus
