@Stephen,

Thank you for your answer. Could you write a test to validate if a class 
that is Serializable provokes an undesired behavior?



El lunes, 21 de diciembre de 2015, 22:34:53 (UTC+1), Stephen Connolly 
escribió:
>
> I would rather they all be Serializable so it really needs a case by case 
> evaluation
>
> On Monday 21 December 2015, Baptiste Mathus <[email protected] <javascript:>> 
> wrote:
>
>> @Stephen: then wouldn't at least a PR to add a comment to the 
>> readResolve() like 
>> https://github.com/jenkinsci/jenkins/blob/master/core/src/main/java/hudson/model/ListView.java#L112
>>  
>> be beneficial both for the common knowledge and for you not to have to 
>> repeat yourself every few weeks? :-)
>>
>> Something short like:
>>
>> /**
>>  * DO NOT REMOVE: see 
>> wiki.jenkins-ci.org/display/JENKINS/XStream-Why-Keep-Blah
>>  */
>>
>> (Note: I can prepare that PR if so, or I wouldn't propose it).
>>
>> 2015-12-21 15:58 GMT+01:00 Stephen Connolly <
>> [email protected]>:
>>
>>>
>>>
>>> On Monday 21 December 2015, Raquel Pau Fernández <[email protected]> 
>>> wrote:
>>>
>>>> Hi,
>>>>
>>>> I have sent a PR that removes dead code (
>>>> https://github.com/jenkinsci/jenkins/pull/1957). Some of the suggested 
>>>> changes are to remove readResolve methods because the classes that contain 
>>>> those methods do not implement java.io.Serializable.
>>>>
>>>>
>>> -1000
>>>
>>> Those readResolve methods are critical for XStream
>>>  
>>>
>>>>  XStream, as far as I know, uses the readResolve when it is dealing 
>>>> with the ObjectOutputStream and according the official Java documentation, 
>>>> just Serialiable and Externalizable elements can use readResolve. 
>>>>
>>>>
>>>> Then, my question is if these classes:
>>>>
>>>>
>>>>    - hudson.model.ListView
>>>>    - hudson.model.PaneStatusProperties
>>>>    - hudson.model.ParametersAction
>>>>    - hudson.model.Queue
>>>>    - hudson.security.csrf.DefaultCrumbIssuer
>>>>    - hudson.tasks.BatchFile
>>>>    - hudson.tasks.BuildTrigger
>>>>    - hudson.tasks.Shell
>>>>    - hudson.tools.BatchCommandInstaller
>>>>    - hudson.tools.CommandInstaller
>>>>    - hudson.util.RobustReflectionConverter
>>>>    - jenkins.model.ArtifactManagerConfiguration
>>>>    - jenkins.security.QueueItemAuthenticatorConfiguration
>>>>    
>>>> should be java.io.Serializable or the methods need to be removed?
>>>>
>>>
>>> Neither.
>>>
>>> It might be beneficial to make them Serializable, but there is no 
>>> requirement to do so. XStream.toXML doesn't need to take a Serializable and 
>>> will use writeReplace methods if present... Vice versa for fromXML and 
>>> readResolve
>>>
>>> In general these classes may not be Serializable as they are not viewed 
>>> safe for sending over remoting (which uses ObectOutputStream) so there are 
>>> two different needs and hence 4 different scenarios, only one of which 
>>> doesn't need readResolve
>>>  
>>>
>>>>
>>>> Thank you in advance
>>>>
>>>>
>>>  
>>>
>>>> -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "Jenkins Developers" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To view this discussion on the web visit 
>>>> https://groups.google.com/d/msgid/jenkinsci-dev/d670360c-93f8-4382-84f4-694039a02f8f%40googlegroups.com
>>>>  
>>>> <https://groups.google.com/d/msgid/jenkinsci-dev/d670360c-93f8-4382-84f4-694039a02f8f%40googlegroups.com?utm_medium=email&utm_source=footer>
>>>> .
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>
>>> -- 
>>> Sent from my phone
>>>
>>> -- 
>>> You received this message because you are subscribed to the Google 
>>> Groups "Jenkins Developers" group.
>>> To unsubscribe from this group and stop receiving emails from it, send 
>>> an email to [email protected].
>>> To view this discussion on the web visit 
>>> https://groups.google.com/d/msgid/jenkinsci-dev/CA%2BnPnMwt5Co3qBe55Mv1YbazWydjW7vqf5Ph4bs1g-UtmNubGQ%40mail.gmail.com
>>>  
>>> <https://groups.google.com/d/msgid/jenkinsci-dev/CA%2BnPnMwt5Co3qBe55Mv1YbazWydjW7vqf5Ph4bs1g-UtmNubGQ%40mail.gmail.com?utm_medium=email&utm_source=footer>
>>> .
>>>
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>>
>>
>> -- 
>> Baptiste <Batmat> MATHUS - http://batmat.net
>> Sauvez un arbre,
>> Mangez un castor !
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Jenkins Developers" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/jenkinsci-dev/CANWgJS6Hjo8o2OEv6H7Z1%3DrgYogFRWRnMMZsQNAdb9HBrJnVMA%40mail.gmail.com
>>  
>> <https://groups.google.com/d/msgid/jenkinsci-dev/CANWgJS6Hjo8o2OEv6H7Z1%3DrgYogFRWRnMMZsQNAdb9HBrJnVMA%40mail.gmail.com?utm_medium=email&utm_source=footer>
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>
> -- 
> Sent from my phone
>

-- 
You received this message because you are subscribed to the Google Groups 
"Jenkins Developers" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/jenkinsci-dev/29bc768d-b55b-482a-a0f6-479dd537e6cb%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to