Hi guys. I have a project in which I am analysing the use of Phoseydon. My scenario is the following:
1) I do already have magritte-described my domain classes (descriptions mostly for seaside)
2) I want to use Glorp
3) I do not have yet the database tables, so I can let Glorp creates them.
4) I want to avoid the manual mappings
So, let me see if I understood right the usage I have to give to Phoseydon:
a) First step is to add to my magritte descriptions the things related to the mappings. What should I add? It doesn't seem very clear. The biggest help I found was the methods under the protocol "*dbxtools-descriptions" of MAElementDescription and MARelationDescription. There I found methods like #bePrimaryKey: #fkForeingKey: etc etc. Still, there are some things that I think are needed, like implementing #descriptionContainer.
So...all in all, somehow you have to understand how to annotate your magritte descriptions.
b) You create an instance of DBXApplication. #fromCategory: doesn't look good to me because my classes are spread about several categories. Moreover, not all classes in a category are persistent classes. So I guess I need to list the classes manually and send #addEntity: ? In either case, shouldn't #fromCategory: only add classes that understand #descriptionContainer or that #descriptionContainer answer a DBXEntity or something like that?
c) You get a dynamic Glorp system descriptor for your application instance:
application glorpDescriptorForPlatform: aPlatform
d) Ok....now, how can I be sure that the description looks correct? Since this is dynamic (not static in code) it is difficult to know whether your mappings were correct or not. Mostly, because as I say in a) you are not quite sure of how the mappings should look like.
So is there any help in discovering in the resulted descriptor is correct?