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

69 lines
3.0 KiB
Java

package com.thoughtworks.xstream.mapper;
import com.thoughtworks.xstream.converters.Converter;
import com.thoughtworks.xstream.converters.SingleValueConverter;
import com.thoughtworks.xstream.core.util.FastField;
import java.util.HashMap;
import java.util.Map;
/* loaded from: classes.dex */
public class LocalConversionMapper extends MapperWrapper {
static /* synthetic */ Class class$com$thoughtworks$xstream$mapper$AttributeMapper;
private transient AttributeMapper attributeMapper;
private final Map localConverters;
public LocalConversionMapper(Mapper mapper) {
super(mapper);
this.localConverters = new HashMap();
readResolve();
}
static /* synthetic */ Class class$(String str) {
try {
return Class.forName(str);
} catch (ClassNotFoundException e) {
throw new NoClassDefFoundError().initCause(e);
}
}
private SingleValueConverter getLocalSingleValueConverter(Class cls, String str, Class cls2) {
Converter localConverter;
AttributeMapper attributeMapper = this.attributeMapper;
if (attributeMapper == null || !attributeMapper.shouldLookForSingleValueConverter(str, cls2, cls) || (localConverter = getLocalConverter(cls, str)) == null || !(localConverter instanceof SingleValueConverter)) {
return null;
}
return (SingleValueConverter) localConverter;
}
private Object readResolve() {
Class cls = class$com$thoughtworks$xstream$mapper$AttributeMapper;
if (cls == null) {
cls = class$("com.thoughtworks.xstream.mapper.AttributeMapper");
class$com$thoughtworks$xstream$mapper$AttributeMapper = cls;
}
this.attributeMapper = (AttributeMapper) lookupMapperOfType(cls);
return this;
}
@Override // com.thoughtworks.xstream.mapper.MapperWrapper, com.thoughtworks.xstream.mapper.Mapper
public SingleValueConverter getConverterFromAttribute(Class cls, String str, Class cls2) {
SingleValueConverter localSingleValueConverter = getLocalSingleValueConverter(cls, str, cls2);
return localSingleValueConverter == null ? super.getConverterFromAttribute(cls, str, cls2) : localSingleValueConverter;
}
@Override // com.thoughtworks.xstream.mapper.MapperWrapper, com.thoughtworks.xstream.mapper.Mapper
public SingleValueConverter getConverterFromItemType(String str, Class cls, Class cls2) {
SingleValueConverter localSingleValueConverter = getLocalSingleValueConverter(cls2, str, cls);
return localSingleValueConverter == null ? super.getConverterFromItemType(str, cls, cls2) : localSingleValueConverter;
}
@Override // com.thoughtworks.xstream.mapper.MapperWrapper, com.thoughtworks.xstream.mapper.Mapper
public Converter getLocalConverter(Class cls, String str) {
return (Converter) this.localConverters.get(new FastField(cls, str));
}
public void registerLocalConverter(Class cls, String str, Converter converter) {
this.localConverters.put(new FastField(cls, str), converter);
}
}