So I’m doing an analysis of the BBOM project in order for a smooth rewrite, analytics, and just to see all what’s really going down in this application. After some digging this morning, I bump into the xxx.xxx.xxx.data package:
It has 147 classes total. Most (47 x 3 = 141) of which are in the format of AccountingType, AccountingTypeHome, and AccountingTypePK.
Here’s a jist of they do…
AccountingType: accounting code and description with the normal constructors/getter/setters.
AccountingTypeHome: accounting type ids (8 of them), maps DB entries into human-readable items.
AccountingTypePK: specific class’ id from AccountingType’s code. OMG WHY?!
They ALL extend from General, GeneralHome, and GeneralPK which, you guessed it, contains no code, no structure, NOTHING. It’s just an empty abstract base class.