The purpose is that the user of Log4j can be sure that the Logger is
serializable.

On Mon, Jul 25, 2016 at 6:38 PM, Gary Gregory <garydgreg...@gmail.com>
wrote:

> But to what purpose? Does Log4j itself need this? Is this a case of YAGNI?
>
> If I have a Logger in an object I serialize, and the class implementing
> Logger is serializable, then I am good to go.
>
> Making Logger Serializable, would make this obvious to users and might
> make some developers warm and fuzzy. It just seems like an odd requirement
> for ALL implementors of Loggers to be serializable. As a third party Logger
> implementor, that does not mean it would be done properly. Implementing the
> interface is no guarantee of proper behavior.
>
> Overall, it seems like it would make Log4j less friendly to 3rd party
> implementors. Are there even any?
>
> Gary
>
> On Mon, Jul 25, 2016 at 9:07 AM, Mikael Ståldal <mikael.stal...@magine.com
> > wrote:
>
>> But maybe we actually want to force all implementations to be
>> serializable?
>>
>> On Mon, Jul 25, 2016 at 6:01 PM, Remko Popma <remko.po...@gmail.com>
>> wrote:
>>
>>> I think the theory is it is preferable to let implementors of an
>>> interface implement java.io.Serializable instead of letting the interface
>>> extend java.io.Serializable. That gives future implementors the freedom to
>>> choose to either implement Serializable or not.
>>>
>>> On Tue, Jul 26, 2016 at 12:49 AM, Mikael Ståldal <
>>> mikael.stal...@magine.com> wrote:
>>>
>>>> It seems like serializable logger is useful in Apache Spark, which is
>>>> popular to use from Scala.
>>>>
>>>> On Mon, Jul 25, 2016 at 4:20 PM, Matt Sicker <boa...@gmail.com> wrote:
>>>>
>>>>> Do Scala programmers use Serializable a lot, or is there a better
>>>>> mechanism there? Because if there's a more Scala way of doing it, that
>>>>> would make more sense. Otherwise, you can always add Serializable later,
>>>>> but you shouldn't remove it once it's part of the public API.
>>>>>
>>>>> On 25 July 2016 at 03:06, Mikael Ståldal <mikael.stal...@magine.com>
>>>>> wrote:
>>>>>
>>>>>> I am asking this since I'm considering making the Scala Logger
>>>>>> wrapper Serializable. Would that be a good idea?
>>>>>>
>>>>>> On Mon, Jul 25, 2016 at 10:00 AM, Mikael Ståldal <
>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>
>>>>>>> Users can rely on the fact that loggers are always Serializable.
>>>>>>>
>>>>>>> I guess we could also document that fact if we don't want to mark
>>>>>>> the interface Serializable.
>>>>>>>
>>>>>>> On Fri, Jul 22, 2016 at 7:16 PM, Ralph Goers <
>>>>>>> ralph.go...@dslextreme.com> wrote:
>>>>>>>
>>>>>>>> What advantage is gained by declaring the interface Serializable?
>>>>>>>>
>>>>>>>> Ralph
>>>>>>>>
>>>>>>>> On Jul 22, 2016, at 9:38 AM, Mikael Ståldal <
>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>
>>>>>>>> I don't think we should limit ourselves to what we add to the API
>>>>>>>> just for the sake of alternative implementations.
>>>>>>>>
>>>>>>>> On Fri, Jul 22, 2016 at 6:09 PM, Gary Gregory <
>>>>>>>> garydgreg...@gmail.com> wrote:
>>>>>>>>
>>>>>>>>> I do not think you want to _force_ all implementation to be
>>>>>>>>> serializable. Serialization is not a main feature of loggers, logging 
>>>>>>>>> is.
>>>>>>>>>
>>>>>>>>> Gary
>>>>>>>>>
>>>>>>>>> On Fri, Jul 22, 2016 at 12:45 AM, Mikael Ståldal <
>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>
>>>>>>>>>> But if this is a feature that is useful for some users, why not
>>>>>>>>>> fully advertise it by making the Logger interface Serializable?
>>>>>>>>>>
>>>>>>>>>> On Thu, Jul 21, 2016 at 7:53 PM, Matt Sicker <boa...@gmail.com>
>>>>>>>>>> wrote:
>>>>>>>>>>
>>>>>>>>>>> It's Serializable because there was a feature request for it.
>>>>>>>>>>> The jira ticket is internal (reported by Gary), but I recall either 
>>>>>>>>>>> another
>>>>>>>>>>> bug or a mailing list post where the justification was so that 
>>>>>>>>>>> serializable
>>>>>>>>>>> classes can still use a Logger instance field (not everyone uses a 
>>>>>>>>>>> static
>>>>>>>>>>> field for the Logger for some reason).
>>>>>>>>>>>
>>>>>>>>>>> On 21 July 2016 at 11:32, Ralph Goers <
>>>>>>>>>>> ralph.go...@dslextreme.com> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> I asked myself the same question and I guess the answer is that
>>>>>>>>>>>> Logger is included in lots of classes, many of which are 
>>>>>>>>>>>> Serializable. It
>>>>>>>>>>>> would be easier for us to make AbstractLogger Serializable then 
>>>>>>>>>>>> for all the
>>>>>>>>>>>> users to mark it as transient and have to manually instantiate the 
>>>>>>>>>>>> Logger
>>>>>>>>>>>> during de-Serialization.
>>>>>>>>>>>>
>>>>>>>>>>>> Ralph
>>>>>>>>>>>>
>>>>>>>>>>>> On Jul 21, 2016, at 9:29 AM, Mikael Ståldal <
>>>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>> So then why is AbstractLogger, and our implementation in
>>>>>>>>>>>> log4j-core, Serializable?
>>>>>>>>>>>>
>>>>>>>>>>>> On Thu, Jul 21, 2016 at 6:18 PM, Gary Gregory <
>>>>>>>>>>>> garydgreg...@gmail.com> wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> I do not think there is a way to know what folks are doing out
>>>>>>>>>>>>> there...
>>>>>>>>>>>>>
>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>
>>>>>>>>>>>>> On Thu, Jul 21, 2016 at 9:13 AM, Mikael Ståldal <
>>>>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>>>>
>>>>>>>>>>>>>> Are there any providers not using AbstractLogger?
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> On Thu, Jul 21, 2016 at 6:09 PM, Gary Gregory <
>>>>>>>>>>>>>> garydgreg...@gmail.com> wrote:
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Probably to leave the decision on whether to support
>>>>>>>>>>>>>>> serialization to each provider.
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> Gary
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>> On Jul 21, 2016 3:14 AM, "Mikael Ståldal" <
>>>>>>>>>>>>>>> mikael.stal...@magine.com> wrote:
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> AbstractLogger is Serializable, but the Logger interface is
>>>>>>>>>>>>>>>> not. Why is it so?
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> --
>>>>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |
>>>>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>> Privileged and/or Confidential Information may be contained
>>>>>>>>>>>>>>>> in this message. If you are not the addressee indicated in 
>>>>>>>>>>>>>>>> this message
>>>>>>>>>>>>>>>> (or responsible for delivery of the message to such a
>>>>>>>>>>>>>>>> person), you may not copy or deliver this message to anyone. 
>>>>>>>>>>>>>>>> In such case,
>>>>>>>>>>>>>>>> you should destroy this message and kindly notify the
>>>>>>>>>>>>>>>> sender by reply email.
>>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> --
>>>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |
>>>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>>>
>>>>>>>>>>>>>> Privileged and/or Confidential Information may be contained
>>>>>>>>>>>>>> in this message. If you are not the addressee indicated in this 
>>>>>>>>>>>>>> message
>>>>>>>>>>>>>> (or responsible for delivery of the message to such a
>>>>>>>>>>>>>> person), you may not copy or deliver this message to anyone. In 
>>>>>>>>>>>>>> such case,
>>>>>>>>>>>>>> you should destroy this message and kindly notify the sender
>>>>>>>>>>>>>> by reply email.
>>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> --
>>>>>>>>>>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
>>>>>>>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>>>>> <http://www.manning.com/tahchiev/>
>>>>>>>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> --
>>>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>>>
>>>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>>>> Senior software developer
>>>>>>>>>>>>
>>>>>>>>>>>> *Magine TV*
>>>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |
>>>>>>>>>>>> www.magine.com
>>>>>>>>>>>>
>>>>>>>>>>>> Privileged and/or Confidential Information may be contained in
>>>>>>>>>>>> this message. If you are not the addressee indicated in this 
>>>>>>>>>>>> message
>>>>>>>>>>>> (or responsible for delivery of the message to such a person),
>>>>>>>>>>>> you may not copy or deliver this message to anyone. In such case,
>>>>>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>>>>>> reply email.
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> --
>>>>>>>>>>> Matt Sicker <boa...@gmail.com>
>>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>>
>>>>>>>>>> --
>>>>>>>>>> [image: MagineTV]
>>>>>>>>>>
>>>>>>>>>> *Mikael Ståldal*
>>>>>>>>>> Senior software developer
>>>>>>>>>>
>>>>>>>>>> *Magine TV*
>>>>>>>>>> mikael.stal...@magine.com
>>>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>>>
>>>>>>>>>> Privileged and/or Confidential Information may be contained in
>>>>>>>>>> this message. If you are not the addressee indicated in this message
>>>>>>>>>> (or responsible for delivery of the message to such a person),
>>>>>>>>>> you may not copy or deliver this message to anyone. In such case,
>>>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>>>> reply email.
>>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>>
>>>>>>>>> --
>>>>>>>>> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
>>>>>>>>> Java Persistence with Hibernate, Second Edition
>>>>>>>>> <http://www.manning.com/bauer3/>
>>>>>>>>> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
>>>>>>>>> Spring Batch in Action <http://www.manning.com/templier/>
>>>>>>>>> Blog: http://garygregory.wordpress.com
>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> [image: MagineTV]
>>>>>>>>
>>>>>>>> *Mikael Ståldal*
>>>>>>>> Senior software developer
>>>>>>>>
>>>>>>>> *Magine TV*
>>>>>>>> mikael.stal...@magine.com
>>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>>
>>>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>>> reply email.
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>> --
>>>>>>> [image: MagineTV]
>>>>>>>
>>>>>>> *Mikael Ståldal*
>>>>>>> Senior software developer
>>>>>>>
>>>>>>> *Magine TV*
>>>>>>> mikael.stal...@magine.com
>>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>>
>>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>>> message. If you are not the addressee indicated in this message
>>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>>> you should destroy this message and kindly notify the sender by
>>>>>>> reply email.
>>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> --
>>>>>> [image: MagineTV]
>>>>>>
>>>>>> *Mikael Ståldal*
>>>>>> Senior software developer
>>>>>>
>>>>>> *Magine TV*
>>>>>> mikael.stal...@magine.com
>>>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>>>
>>>>>> Privileged and/or Confidential Information may be contained in this
>>>>>> message. If you are not the addressee indicated in this message
>>>>>> (or responsible for delivery of the message to such a person), you
>>>>>> may not copy or deliver this message to anyone. In such case,
>>>>>> you should destroy this message and kindly notify the sender by reply
>>>>>> email.
>>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> Matt Sicker <boa...@gmail.com>
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> [image: MagineTV]
>>>>
>>>> *Mikael Ståldal*
>>>> Senior software developer
>>>>
>>>> *Magine TV*
>>>> mikael.stal...@magine.com
>>>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>>>
>>>> Privileged and/or Confidential Information may be contained in this
>>>> message. If you are not the addressee indicated in this message
>>>> (or responsible for delivery of the message to such a person), you may
>>>> not copy or deliver this message to anyone. In such case,
>>>> you should destroy this message and kindly notify the sender by reply
>>>> email.
>>>>
>>>
>>>
>>
>>
>> --
>> [image: MagineTV]
>>
>> *Mikael Ståldal*
>> Senior software developer
>>
>> *Magine TV*
>> mikael.stal...@magine.com
>> Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com
>>
>> Privileged and/or Confidential Information may be contained in this
>> message. If you are not the addressee indicated in this message
>> (or responsible for delivery of the message to such a person), you may
>> not copy or deliver this message to anyone. In such case,
>> you should destroy this message and kindly notify the sender by reply
>> email.
>>
>
>
>
> --
> E-Mail: garydgreg...@gmail.com | ggreg...@apache.org
> Java Persistence with Hibernate, Second Edition
> <http://www.manning.com/bauer3/>
> JUnit in Action, Second Edition <http://www.manning.com/tahchiev/>
> Spring Batch in Action <http://www.manning.com/templier/>
> Blog: http://garygregory.wordpress.com
> Home: http://garygregory.com/
> Tweet! http://twitter.com/GaryGregory
>



-- 
[image: MagineTV]

*Mikael Ståldal*
Senior software developer

*Magine TV*
mikael.stal...@magine.com
Grev Turegatan 3  | 114 46 Stockholm, Sweden  |   www.magine.com

Privileged and/or Confidential Information may be contained in this
message. If you are not the addressee indicated in this message
(or responsible for delivery of the message to such a person), you may not
copy or deliver this message to anyone. In such case,
you should destroy this message and kindly notify the sender by reply
email.

Reply via email to