Hacking J-Bird (Version 0.5.2): Some Guts for Developers
There are three dominant classes to J-Bird.
- MainFrame is the center of the graphical user interface.
It is instantiated by the class JBird, which has a static
main method. On Mac OS X, JBirdOSX is a subclass of
- JbirdDB provides access to the database. SQL and JDBC is
mostly restricted to this class, although there are
some exceptions in which I didn't know better at the
time or in which it seemed much cheaper to return a
ResultSet rather than to load data from a ResultSet into
a data structure and return a data structure just for
the sake of isolation.
- JTextEditor is a text editor that stands-by, hidden and waiting
to pop up when text needs to be edited.
Two classes are available for testing. Both have main methods, and both
should be ported to Junit.
- TestJB instantiates JbirdDB and provides an environment in
which code that works with the database can be tested.
- TestDB is intended to test JDBC classes and methods that are
used by J-Bird. It should test SQL constructs that
are used in J-Bird, but those tests have not yet been
The builder has four dominant classes.
- JBBuildDB and provides the main method and provides the
user interface. JBBuildDBOSX is a subclass of JBBuildDB that
is used on Mac OS X.
- MasterICFactory generates successive components for the
- JBirdDBTools provides the guts used to read data and prepare
it for the database.
- MasterListBuilder provides an interface to the database
for building master lists.
J-Bird is intended to be internationalized. en_US resources are in
the file resources.en_US. All classes of J-Bird that print to the graphical
user interface have access to these resources. If you write code that
prints to the interface, make an appropriate entry en resources.en_US
and use it. The only part of J-Bird that currently fails to make use
of internationalized resources is the print stream of the database builder.
Page last updated 11 May 2005