Dear Matt, thank you very much for your patch for EMPIREDB-110. I have checked-in your patch to our current svn code base. Please apologize that it took us a few days.
Regards Rainer > from: Matt DeHoust [mailto:[email protected]] > to: [email protected] > re: Re: Relationships > > Also meant to say that I tested this with MySQL and, so far, it appears > to > work just fine. Thanks! > > -Matt > > On Mon, Jul 4, 2011 at 2:49 PM, Matt DeHoust <[email protected]> wrote: > > > Sorry for the delay, but I have attached the patch to EMPIREDB-110. > The > > patch provides a unit test named CodeGenParserTest that verifies the > > EMPLOYEES->DEPARTMENTS relationship in the test database is properly > reverse > > engineered. > > > > -Matt > > > > > > On Mon, Jul 4, 2011 at 8:05 AM, Benjamin Venditti < > > [email protected]> wrote: > > > >> Hi Rainer, > >> > >> good to hear they it is working as expected. > >> I'll have another look at it when Matt attaches his test to this > issue. > >> It'd be good to have a formal testcase for that, too. > >> > >> Cherio > >> Benjamin > >> > >> Am 04.07.2011 11:25, schrieb Rainer Döbele: > >> > >> Hi Benjamin, > >>> > >>> I had a look at your changes and they look good to me. > >>> Tried it with Oracle and it worked as expected. > >>> > >>> I just made a few adjustments to the logging. > >>> > >>> Thanks a lot. > >>> Rainer > >>> > >>> > >>> from: Benjamin Venditti > [mailto:benjamin.venditti@**arcor.de<[email protected]> > >>>> ] > >>>> to: empire-db-dev@incubator.**apache.org<empire-db- > [email protected]> > >>>> cc: Matt DeHoust; empire-db-user@incubator.**apache.org<empire-db- > [email protected]> > >>>> re: Re: Relationships > >>>> > >>>> Hi there, > >>>> > >>>> i just committed a working solution for EMPIREDB-110 the > >>>> reverse-engineering of foreign-key relationships. > >>>> i'd be happy if anyone could have a look at it. > >>>> > >>>> Cherio > >>>> Benjamin > >>>> > >>>> Am 29.06.2011 15:12, schrieb Matt DeHoust: > >>>> > >>>>> Thank you Benjamin and Rainer. I have subscribed to the dev list. > I'll > >>>>> > >>>> take > >>>> > >>>>> a look at the code when I return from vacation and follow up using > the > >>>>> > >>>> dev > >>>> > >>>>> list with any questions or ideas. I hope to have a chance to look > into > >>>>> > >>>> it > >>>> > >>>>> this weekend. > >>>>> > >>>>> -Matt > >>>>> > >>>>> On Wed, Jun 29, 2011 at 6:30 AM, Rainer Döbele<[email protected]> > >>>>> > >>>> wrote: > >>>> > >>>>> Hi everyone,**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> I think this is an important improvement of the code generator > that > >>>>>> > >>>>> we > >>>> > >>>>> should implement.**** > >>>>>> > >>>>>> I have created a Jira Issue for this:**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> https://issues.apache.org/**jira/browse/EMPIREDB- > 110****<https://issues.apache.org/jira/browse/EMPIREDB-110****> > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> Matt, if you feel you can and want to do It, then we would > certainly > >>>>>> appreciate this.**** > >>>>>> > >>>>>> You may create a patch file and attach it to the JIRA ticket.**** > >>>>>> > >>>>>> Then we can apply the patch and commit the code to svn.**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> For further discussion I would recommend to move to the dev- > mailing > >>>>>> > >>>>> list:* > >>>> > >>>>> *** > >>>>>> > >>>>>> empire-db-dev@incubator.**apache.org<empire-db- > [email protected]> > >>>>>> **** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> Thanks, **** > >>>>>> > >>>>>> Rainer**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> *Von:* Benjamin Venditti > [mailto:benjamin.venditti@**arcor.de<[email protected]> > >>>>>> ] > >>>>>> *Gesendet:* Mittwoch, 29. Juni 2011 01:47 > >>>>>> *An:* empire-db-user@incubator.**apache.org<empire-db- > [email protected]> > >>>>>> *Cc:* Matt DeHoust > >>>>>> *Betreff:* Re: Relationships**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> Hi Matt, > >>>>>> > >>>>>> thanks for your interest in empire-db. > >>>>>> > >>>>>> regarding your request ... unfortunately the codegen does not set > up > >>>>>> > >>>>> the > >>>> > >>>>> relation of the database model. > >>>>>> At the moment the codegen will only set up views and tables. We > >>>>>> > >>>>> thought > >>>> > >>>>> these are the most important for the most people as they are > usually > >>>>>> sufficient for simple data access. > >>>>>> > >>>>>> However i think there are two occasions where the relations are > >>>>>> > >>>>> important: > >>>> > >>>>> - database creation > >>>>>> - deletion of records with cascading deletion enabled > >>>>>> > >>>>>> At the moment we have not planned to add "relationship > generation" > >>>>>> > >>>>> to the > >>>> > >>>>> codegen component, but I am glad to hear that you consider to > extend > >>>>>> > >>>>> it on > >>>> > >>>>> your own. > >>>>>> > >>>>>> The right place to start with that would be: > >>>>>> * CodeGenParser.**populateDatabase(..) : 131* : This is the > point > >>>>>> > >>>>> where > >>>> > >>>>> the DatabaseMetaData is querried and used to populate empire-db's > >>>>>> > >>>>> model > >>>> > >>>>> *CodeGenWriter.**generateCodeFiles(..) : 125* : Is used to > >>>>>> > >>>>> serialize the > >>>> > >>>>> populated model as java code > >>>>>> *src/main/resources/Database.**vm : 70* : This is the > velocity > >>>>>> > >>>>> template > >>>> > >>>>> we use to create the java class for the database. > >>>>>> > >>>>>> In its default constructor you'd need to add a line for each > >>>>>> > >>>>> relationship > >>>> > >>>>> similar to this: > >>>>>> > >>>>>> *addRelation( > >>>>>> EMPLOYEES.DEPARTMENT_ID.**referenceOn( DEPARTMENTS.DEPARTMENT_ID > ));* > >>>>>> > >>>>>> I hope this is of some help to you. Feel free to ask if you have > >>>>>> > >>>>> further > >>>> > >>>>> questions! > >>>>>> > >>>>>> Cherio > >>>>>> Benjamin > >>>>>> > >>>>>> Am 28.06.2011 19:37, schrieb Matt DeHoust: **** > >>>>>> > >>>>>> Hello, **** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> I see that the empire-db model supports relationships (for > example > >>>>>> DBDatabase.getRelations()), but it doesn't seem that the codegen > >>>>>> > >>>>> component > >>>> > >>>>> sets them up. Am I missing something? (I am using MySQL if that > >>>>>> > >>>>> matters.)* > >>>> > >>>>> *** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> If not, are there plans to introduce relationship setup in the > >>>>>> > >>>>> codegen > >>>> > >>>>> component?**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> If not, where should I look to add them myself? > CodeGenParser?**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> Thanks,**** > >>>>>> > >>>>>> Matt**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> P.S. I apologize if I posted this question twice by mitake.**** > >>>>>> > >>>>>> ** ** > >>>>>> > >>>>>> > >> > >
