While it is not truly abstract it does act as the base class for 
AbstractJMSReceiver (which JMSQueueReceiver and JMSTopicReceiver both extend), 
SocketServer, and UDPSocketServer.  On its own, AbstractServer doesn’t really 
do anything. But they all end up calling the log method, which is really why 
AbstractServer exists.

An interface provides no functionality.  The point of the class is that all the 
Receivers share the log method implementation. 

While the name may not be accurate, several of us dislike naming classes 
“Base”Xxxxx or XxxxxBase (i.e. ServerBase, ReceiverBase, etc).  If you can 
suggest a better name I’d be OK with changing it.  

Ralph

On Mar 2, 2014, at 1:33 PM, Matt Sicker <boa...@gmail.com> wrote:

> org.apache.logging.log4j.core.AbstractServer
> 
> 1. It's not abstract.
> 2. As it's not abstract, there are no abstract methods or any common 
> interface really.
> 
> That being said, would it make more sense for this to be an interface with a 
> simple log(LogEvent) method defined? Perhaps calling this class 
> "AbstractServer", while demonstrating its usage, is a poor name for what it 
> actually does.
> 
> -- 
> Matt Sicker <boa...@gmail.com>

Reply via email to