> On 2016/07/26, at 1:43, Mikael Ståldal <mikael.stal...@magine.com> wrote:
> 
> The purpose is that the user of Log4j can be sure that the Logger is 
> serializable.

If that is a consideration, the user can select an implementation that is fit 
for purpose. 

I generally prefer not to make too many guarantees in an interface to give 
implementations more flexibility. 

>> 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?
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>>>> 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.   
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>>>> 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
>>>>>>>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>>>>>>>> Spring Batch in Action
>>>>>>>>>>>>>>>> Blog: http://garygregory.wordpress.com 
>>>>>>>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> -- 
>>>>>>>>>>>>>>>  
>>>>>>>>>>>>>>> 
>>>>>>>>>>>>>>> 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>
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> 
>>>>>>>>>>>> -- 
>>>>>>>>>>>>  
>>>>>>>>>>>> 
>>>>>>>>>>>> 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
>>>>>>>>>>> JUnit in Action, Second Edition
>>>>>>>>>>> Spring Batch in Action
>>>>>>>>>>> Blog: http://garygregory.wordpress.com 
>>>>>>>>>>> Home: http://garygregory.com/
>>>>>>>>>>> Tweet! http://twitter.com/GaryGregory
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> 
>>>>>>>>>> -- 
>>>>>>>>>>  
>>>>>>>>>> 
>>>>>>>>>> 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.   
>>>>>>>> 
>>>>>>>> 
>>>>>>>> 
>>>>>>>> -- 
>>>>>>>>  
>>>>>>>> 
>>>>>>>> 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.   
>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> -- 
>>>>>>>  
>>>>>>> 
>>>>>>> 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>
>>>>> 
>>>>> 
>>>>> 
>>>>> -- 
>>>>>  
>>>>> 
>>>>> 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.   
>>> 
>>> 
>>> 
>>> -- 
>>>  
>>> 
>>> 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
>> JUnit in Action, Second Edition
>> Spring Batch in Action
>> Blog: http://garygregory.wordpress.com 
>> Home: http://garygregory.com/
>> Tweet! http://twitter.com/GaryGregory
> 
> 
> 
> -- 
>  
> 
> 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