I have not tested this code, but it does compile.  This is just an
implementation, the changes to configure them via configurators has not been
implemented.

Receiver.java - The basic interface for a receiver.
ReceiverBase.java - Base implementation for receiver that takes the tedium
out of creating specific instances.
SocketReceiver.java - Specific implementation to receive event over a
socket, matches SocketAppender.

Some issues:

1) Receivers need to live somewhere.  I am assuming that they will need to
be referenced by the LoggingRespository they are associated with? (Actually,
I have the same question for ConfigWatchdog too).  So, will I need to add a
"addReceiver" method to the repository?

2) Recievers will need to be "started".  Should they implement the
OptionHandler interface so that the "activateOptions" method can start them?
When should they be started?  When they are added/attached to the
repository?

3) SocketReceiver uses SocketNode to handle the socket.  But I think I will
use a private class instead that calls the receiver's doPost() method (in
case that method has been overridden to provide different functionality.

4) What is the o.a.log4j.spi package for?  Should the Receiver interface
live there instead of in o.a.log4j?

-Mark

Attachment: Receiver.java
Description: Binary data

Attachment: ReceiverBase.java
Description: Binary data

Attachment: SocketReceiver.java
Description: Binary data

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

Reply via email to