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] > <javascript:_e(%7B%7D,'cvml','jenkinsci-dev%[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. For more options, visit https://groups.google.com/d/optout.
