Upgrade XStream from 1.4.19 to 1.4.20 (#7548)

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
This commit is contained in:
dependabot[bot] authored and GitHub committed 2022-12-27 10:40:47 -08:00
1 parent b323a70525
commit 3965fec72e
4 files changed
+1 -117

No files matched your search

@@ -83,7 +83,6 @@ import java.util.logging.Level;
import java.util.logging.Logger;
import jenkins.model.Jenkins;
import jenkins.util.SystemProperties;
import jenkins.util.xstream.AtomicBooleanConverter;
import jenkins.util.xstream.SafeURLConverter;
import org.kohsuke.accmod.Restricted;
import org.kohsuke.accmod.restrictions.NoExternalUse;
@@ -274,7 +273,6 @@ public class XStream2 extends XStream {
// http://www.openwall.com/lists/oss-security/2017/04/03/4
denyTypes(new Class[] { void.class, Void.class });
registerConverter(new AtomicBooleanConverter(), 10);
registerConverter(new RobustCollectionConverter(getMapper(), getReflectionProvider()), 10);
registerConverter(new RobustMapConverter(getMapper()), 10);
registerConverter(new ImmutableMapConverter(getMapper(), getReflectionProvider()), 10);
@@ -1,45 +0,0 @@
package jenkins.util.xstream;
import com.thoughtworks.xstream.converters.Converter;
import com.thoughtworks.xstream.converters.MarshallingContext;
import com.thoughtworks.xstream.converters.SingleValueConverterWrapper;
import com.thoughtworks.xstream.converters.UnmarshallingContext;
import com.thoughtworks.xstream.converters.basic.BooleanConverter;
import com.thoughtworks.xstream.io.HierarchicalStreamReader;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import java.util.concurrent.atomic.AtomicBoolean;
import org.kohsuke.accmod.Restricted;
import org.kohsuke.accmod.restrictions.NoExternalUse;
/** Converts an {@link AtomicBoolean}. */
@Restricted(NoExternalUse.class)
public class AtomicBooleanConverter implements Converter {
@Override
public boolean canConvert(Class type) {
return type != null && AtomicBoolean.class.isAssignableFrom(type);
}
@Override
public void marshal(
Object source, HierarchicalStreamWriter writer, MarshallingContext context) {
final AtomicBoolean atomicBoolean = (AtomicBoolean) source;
writer.startNode("value");
context.convertAnother(
atomicBoolean.get(), new SingleValueConverterWrapper(BooleanConverter.BINARY));
writer.endNode();
}
@Override
public Object unmarshal(HierarchicalStreamReader reader, UnmarshallingContext context) {
reader.moveDown();
Object item =
context.convertAnother(
null,
Boolean.class,
new SingleValueConverterWrapper(BooleanConverter.BINARY));
boolean value = item instanceof Boolean ? ((Boolean) item).booleanValue() : false;
reader.moveUp();
return new AtomicBoolean(value);
}
}