jimu-decompiled/sources/com/thoughtworks/xstream/converters/extended/NamedCollectionConverter.java
2025-05-13 19:24:51 +02:00

79 lines
3.5 KiB
Java

package com.thoughtworks.xstream.converters.extended;
import com.thoughtworks.xstream.converters.MarshallingContext;
import com.thoughtworks.xstream.converters.UnmarshallingContext;
import com.thoughtworks.xstream.converters.collections.CollectionConverter;
import com.thoughtworks.xstream.core.util.HierarchicalStreams;
import com.thoughtworks.xstream.io.ExtendedHierarchicalStreamWriterHelper;
import com.thoughtworks.xstream.io.HierarchicalStreamReader;
import com.thoughtworks.xstream.io.HierarchicalStreamWriter;
import com.thoughtworks.xstream.mapper.Mapper;
/* loaded from: classes.dex */
public class NamedCollectionConverter extends CollectionConverter {
static /* synthetic */ Class class$com$thoughtworks$xstream$mapper$Mapper$Null;
private final String name;
private final Class type;
public NamedCollectionConverter(Mapper mapper, String str, Class cls) {
this(null, mapper, str, cls);
}
static /* synthetic */ Class class$(String str) {
try {
return Class.forName(str);
} catch (ClassNotFoundException e) {
throw new NoClassDefFoundError().initCause(e);
}
}
@Override // com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
protected Object readBareItem(HierarchicalStreamReader hierarchicalStreamReader, UnmarshallingContext unmarshallingContext, Object obj) {
String readClassAttribute = HierarchicalStreams.readClassAttribute(hierarchicalStreamReader, mapper());
Class realClass = readClassAttribute == null ? this.type : mapper().realClass(readClassAttribute);
Class cls = class$com$thoughtworks$xstream$mapper$Mapper$Null;
if (cls == null) {
cls = class$("com.thoughtworks.xstream.mapper.Mapper$Null");
class$com$thoughtworks$xstream$mapper$Mapper$Null = cls;
}
if (cls.equals(realClass)) {
return null;
}
return unmarshallingContext.convertAnother(obj, realClass);
}
@Override // com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
protected void writeCompleteItem(Object obj, MarshallingContext marshallingContext, HierarchicalStreamWriter hierarchicalStreamWriter) {
writeItem(obj, marshallingContext, hierarchicalStreamWriter);
}
@Override // com.thoughtworks.xstream.converters.collections.AbstractCollectionConverter
protected void writeItem(Object obj, MarshallingContext marshallingContext, HierarchicalStreamWriter hierarchicalStreamWriter) {
Class<?> cls;
String aliasForSystemAttribute;
if (obj == null) {
cls = class$com$thoughtworks$xstream$mapper$Mapper$Null;
if (cls == null) {
cls = class$("com.thoughtworks.xstream.mapper.Mapper$Null");
class$com$thoughtworks$xstream$mapper$Mapper$Null = cls;
}
} else {
cls = obj.getClass();
}
ExtendedHierarchicalStreamWriterHelper.startNode(hierarchicalStreamWriter, this.name, cls);
if (!cls.equals(this.type) && (aliasForSystemAttribute = mapper().aliasForSystemAttribute("class")) != null) {
hierarchicalStreamWriter.addAttribute(aliasForSystemAttribute, mapper().serializedClass(cls));
}
if (obj != null) {
marshallingContext.convertAnother(obj);
}
hierarchicalStreamWriter.endNode();
}
public NamedCollectionConverter(Class cls, Mapper mapper, String str, Class cls2) {
super(mapper, cls);
this.name = str;
this.type = cls2;
}
}