@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.
For more options, visit https://groups.google.com/d/optout.

Reply via email to