We are using log4j for logging events to an event manager via the socket appender. The event manager is running in a separate process and uses a object input stream to build the received LoggingEvent. The Event Manager has a internal event chain that event sinks can register with to receive the logging event. The event sinks extend an adapter class that provides support for handling the event. The adapter implements runnable and has a wait queue. Each adapter is kicked off as a separate thread where the run method dequeues the event and passes it to an abstract method that the base class must implement.
I wish to clone the LoggingEvent so that each adapter sub class (separate thread) has its own copy of the event to do with as it wishes. We invoke the Event Sinks dynamically so that the framework can be extended by third parties, therefore I cannot guarantee or impose restrictions on what the adapter class may do with the event.
If your adapters do not modify the LoggingEvent than you are all set, even if the adapters are in different thread. You do not have to perform any changes. Cloning will be necessary only if your adapters modify Loggingevent fields.
Damian.
--
Ceki For log4j documentation consider "The complete log4j manual"
ISBN: 2970036908 http://www.qos.ch/shop/products/clm_t.jsp
--------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]