[logback-dev] Layout setter/getter methods in AppenderBase
jhuxhorn at googlemail.com
Fri Feb 13 20:09:53 CET 2009
I'm in favor of the two interfaces suggested but I wanted to point out
that the current implementation of SocketAppender could not be changed
in a compatible way to implement EncoderAware because it is currently
using a stream of serialized objects instead of byte for each object
(using a new ObjectOutputStream for each new object). This would have
to be changed.
On 13.02.2009, at 17:06, Ceki Gulcu wrote:
> Maarten Bosteels wrote:
>> interface LayoutAware extends Appender;
>> interface EncoderAware extends Appender;
>> I don't understand.
>> In my opinion LayoutAware and EncoderAware should be standalone
>> interface with just a getter and a setter, and not extend Appender.
> Yes, obviously.
>> All appenders that need a layout should implement LayoutAware.
>> They can implement the interface themselves or - when its practical
>> - inherit from LayoutAwareAppenderBase
>> Why would you tie LayoutAware to the Appender interface.
> You could tie the two interfaces by mistake. :-)
>> PS: Not yet sure whether the encode method should return a byte
>> or a java.nio.ByteBuffer, I think the latter is easier to use.
> That would would be an option to consider.
I would suggest to use byte because it can easily be transformed
into a ByteBuffer using ByteBuffer.wrap() while the other direction
using byte ByteBuffer.buffer() is marked as an optional operation.
More information about the logback-dev