jackrabbit-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Jukka Zitting <ju...@zitting.name>
Subject Internal package dependencies in Jackrabbit
Date Wed, 21 Sep 2005 18:07:48 GMT

In an attempt to build an informed opinion about the recent package 
renaming proposals I started thinking about the various internal package 
dependencies in Jackrabbit. At least the o.a.j.core packages are quite 
heavily interlinked with each other.

I tried creating a semi-automated package diagram for Jackrabbit, but at 
least at the moment there seems to be too many interdependencies to 
produce a good overview diagram. The result of a fully automated run can 
be found at http://yukatan.fi/2005/09/jcr/jackrabbit-dependencies.png. :-)

Some immediate observations:

* Move the QName constants from o.a.j.Constants to o.a.j.name.QName to
   break the o.a.j <-> o.a.j.name dependency cycle.

* Add a BlobFileSystem property to PMContext to break the direct
   LocalFileSystem dependencies in the persistence managers.

* Move the PersistenceManager, QueryManager, etc. interfaces and
   associated component classes into one or more separate packages
   (I think this was the idea of the .api proposal)

What do you think?


Jukka Zitting

View raw message