Kabeja is separated in a parser and a DXFDocument, which can serialized as SVG-SAXEvents. The DXFDocuments holds all parsed data.
The DXF-Format is separated in sections and the sections itself are separated (for example in entities). The parser is separated too and can be extended. Take a look at the class diagram below.
If you want to supported an entity implement 'org.kabeja.parser.enities.DXFEntityHandler' interface. You can extend the 'org.kabeja.parser.enities.AbstractEntityHandler', where some common settings are parsed for you. The parser part must create an entity, which have to extends the 'org.kabeja.dxf.DXFEntity'. You can include your part by configure the parser with an xml based configfile or take a look at the 'org.kabeja.parser.ParserBuilder' and add your parser part there.
|class diagram of the DXFDocument.|
|Class diagram of the DXFParser|