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:[email protected]]
to: [email protected]
cc: Matt DeHoust; [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****
** **
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:*
***
[email protected]****
** **
Thanks, ****
Rainer****
** **
** **
*Von:* Benjamin Venditti [mailto:[email protected]]
*Gesendet:* Mittwoch, 29. Juni 2011 01:47
*An:* [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.****
** **