The requirement to have both Component as an interface and
ComponentBase as a class, stems from the fact that we make the
distinction between Appender the interface and AppenderSkeleton the
class. Implementations of Appender derive from AppenderSkeleton but
all the other code in log4j refers to Appender and is oblivious to the
existence of AppenderSkeleton.

One of the standards I've seen (and yes there are many) is to have the abstract base class providing implemented methods to assist sub-classes is to name it Abstract<InterfaceName>. This appears to be a common approach and I would put forward to the group. *Base is fine, just thought I'd mention that.

I would be -0.25 on the choice of "Component*" however. If this is truely only designed to be used by log4j internals then I think we should appropriately name it. As others have mentioned Component by itself is far too generic (do an Open Type search in Eclipse for Component and you'll see what I mean). How about LoggingComponent and LoggingComponentBase or derivations thereof?

cheers,

Paul Smith

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]



Reply via email to