db-ojb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anthony Kong <anthony.k...@ufjia.com>
Subject RE: reverse db tools status
Date Wed, 22 Jan 2003 00:46:39 GMT
Hi, Florian,

Glad to hear from you! I can understand the lack of time because I am
actually racing to meet my deadlines of other in-house development projects
as well :-(

So, please do not get offended when i talked about 'design' because
late-comer always gets benefit from hindsight. Therefore, I would like to
emphasize that i have no intention to be critical (just in case my previous
email convey the otherwise :-). But following one of my 'goals', which in a
nutshell a decoupling between ui and functions, I logically set out the
blue-print. And your willingness to particate gonna be valauble to the whole

To be honest, I did not really study the structure of the reversedb2 because
the documentation left me an impression that it is an unfinihed work.
Besides people reported that reversedb works before, desipte only generating
old style schema. So that's why i picked it up and move on.

I think we agree on decoupling the ui and the core functionality. This is
important because it can benefit, for example, various plugin writers.

I can leave reversedb as it is now and pick up the reversedb2 to forward our
development. But in the submitted version you can see ui codes are already
removed. So we can work out which version should be based for further
development effort.

Also some bugs are just found: 

In the output schema xml

1) The field ids are not in consecutive orders and so may cause errors with
0.9.8. I heard someone is working to allow "holes" in the ids, but i do not
know the status. May need or need not to fix depending on this?

2) 'foreign-descriptor/class-ref' have been assigned invalid classes name.
Basically i forgot to set the Package name, so a PackageName.ClassName
becomes nullClassName



-----Original Message-----
From: Florian Bruckner [mailto:bfl@florianbruckner.com]
Sent: Wednesday, January 22, 2003 6:24 AM
To: OJB Developers List
Subject: AW: reverse db tools status

Hi Anthony,

> Attached is a 'can-use' version of reversedb. It is based on the original
> reversedb. The feature of this version is:
> - It is command-line driven
> - Updated xml tags (works with 0.9.8)
> - use of other apache commons componnets such as cli and logging

It is good to see somebody is doing development for reversedb now. In case
you don't know, I am the original author of reversedb, so I'd like to
comment on a few things and offer my help.

When I developed reversedb I did not have a design in mind, you could call
it a functional prototype to prove that it was possible to do reverse
engineering. Wherever you see design inefficiencies you are right, but that
never was a goal of reversedb. Having gathered a lot of experience with
reversedb I decided to start over after some time and tried to create
another version of reversedb without the burden of any legacy code. You can
see the result of this effort in reversedb2, although I never had time to
finish it. Reversedb2 is also the reason I never updated it to
generate valid XML for OJB 0.9 and up.

Unfortunately my spare time began to be very limited, being involved in a
couple of commercial projects and doing my diploma thesis. Therefore I
stopped development on reversedb2 as it was impossible for me to do the
whole thing on my own. Now that you are showing interest in doing
development for a reverse engineering tool I would like to offer my help.
While I cannot do development of a complete tool I think I can contribute to
the effort, especially in the database schema reading area.

My primary goal with reversedb2 was to provide an easy to use tool with a
gui that helps users to start with OJB. When I did my first steps creating
the repository.xml was a pain for me, as it is the source for many errors.
Nonetheless there should of course be a command line interface for batch
processing, but a nice UI is, from my point of view, definitely necessary.

Reversedb2 also has a much better design, although there is still a lot room
for improvement. For example the datbase data is still somewhat coupled with
the UI, but it should be easy to remove this dependency. I therefore think
it would be better to use reversedb2 as a basis for a continuing effort, but
it would also be possible to start over the whole thing again. But I don't
think it would be wise to continue development of reversedb, as the design
is too poor.

So make up a summary, I would like to participate in development of a
reverse engineering tool, the reason I suspended work on reversedb2 was just
lack of time. So if you are interested in continuing development and are
willing to accept me as a contributor we should maybe start discussing the
goals do a design or decide on using an existing code base.

best regards,

To unsubscribe, e-mail:   <mailto:ojb-dev-unsubscribe@jakarta.apache.org>
For additional commands, e-mail: <mailto:ojb-dev-help@jakarta.apache.org>

View raw message