[JENKINS-48463] refactored XStream2 to default to KXml2Driver by default.

Changed all explicit references of the hierarchical driver to use a static
convinience method XStream2.getDefaultDriver() to ensure all XML operations
are using the same driver.
This commit is contained in:
mike cirioli committed 2018-01-24 09:25:32 -05:00
1 parent 37365eeca7
commit 570b52dbcc
11 files changed
+50 -38

No files matched your search

+4 -3
View File
@@ -26,7 +26,7 @@ package hudson;
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.converters.Converter;
import com.thoughtworks.xstream.converters.UnmarshallingContext;
import com.thoughtworks.xstream.io.xml.KXml2Driver;
import com.thoughtworks.xstream.io.HierarchicalStreamDriver;
import hudson.diagnosis.OldDataMonitor;
import hudson.model.Descriptor;
import hudson.util.AtomicFileWriter;
@@ -336,13 +336,14 @@ public final class XmlFile {
/**
* {@link XStream} instance is supposed to be thread-safe.
*/
private static final XStream DEFAULT_XSTREAM = new XStream2();
private static final Logger LOGGER = Logger.getLogger(XmlFile.class.getName());
private static final SAXParserFactory JAXP = SAXParserFactory.newInstance();
private static final KXml2Driver DEFAULT_DRIVER = new KXml2Driver();
private static final HierarchicalStreamDriver DEFAULT_DRIVER = XStream2.getDefaultDriver();
private static final XStream DEFAULT_XSTREAM = new XStream2(DEFAULT_DRIVER);
static {
JAXP.setNamespaceAware(true);